当前位置: 首页 > 专利查询>ARM有限公司专利>正文

测量地址转换延迟制造技术

技术编号:18824777 阅读:16 留言:0更新日期:2018-09-01 13:42
一种设备包括处理指令的处理电路,其中,一些指令可要求转换地址。该设备还包括响应于由处理电路处理的指令而转换地址的地址转换电路。此外,该设备还包括测量由地址转换电路响应于给定指令执行的地址转换过程的至少部分的延迟的转换延迟测量电路。

【技术实现步骤摘要】
【国外来华专利技术】测量地址转换延迟
本技术涉及数据处理领域。
技术介绍
数据处理设备可处理指令。一些设备可包括用于在处理这些指令时测量处理设备的性能的机制。
技术实现思路
至少一些示例提供了一种设备,包括:处理电路,用以处理指令;地址转换电路,用以响应于由处理电路处理的指令而转换地址;以及转换延迟测量电路,用以测量由地址转换电路响应于给定指令而执行的地址转换过程的至少部分的延迟。至少一些示例提供了一种设备,包括:用于处理指令的装置;用于响应于由用于处理的装置处理的指令而转换地址的装置;以及用于测量由用于转换的装置响应于给定指令而执行的地址转换过程的至少部分的延迟的装置。至少一些示例提供了一种方法,包括:处理指令;响应于被处理的指令而转换地址;以及测量响应于给定指令而执行的地址转换过程的至少部分的延迟。附图说明现在参考附图,仅通过示例描述本专利技术的实施例,其中:图1示意性地示出了处理管线的一个示例;图2示意性地示出了具有两个MMU的地址转换电路的一个示例;图3示出了多级页表移动的示例;图4示出了存在两个阶段的地址转换的多级页表移动的示例;图5示意性地示出了性能监测电路的一个示例;图6示出了在测量地址转换过程的延迟时可被考虑的不同的开始事件及结束事件的一个示例;图7示出了用于对指令进行采样的方法;图8示出了用于测量地址转换的延迟的方法。具体实施方式下文将讨论一些具体示例。将理解的是,本专利技术不限定于这些特定示例。数据处理设备可具有用于在处理指令时监测性能的机制。一些数据处理设备可包括响应于指令而转换地址的地址转换电路,且与执行地址转换相关联的延迟可为处理一些指令时影响整体性能的一个因素。用于识别由地址转换引起的性能问题的一个方法可为对特定事件的发生率进行计数,这些特定事件是例如,转换查找缓冲器(translationlookasidebuffer,TLB)中的未命中或对从存储器撷取的页表数据的请求。这种方法假定,如果存在大量TLB未命中或页表移动,则与存在较少TLB未命中或页表移动时相比性能较差。然而,专利技术人认识到,在一些系统中,执行地址转换所花费的时间可在全部经历同一种事件,例如,TLB未命中,的指令之间有相对较大程度的改变。根据本技术的设备包括转换延迟测量电路,以测量地址转换过程的至少部分的延迟。延迟提供了转换所用时长的更直接的指示,因此可做出更为精确的成本与性能的判定。除了测量地址转换延迟之外,还可对诸如TLB未命中或页表移动的事件进行计数。与地址转换相关联的延迟可在全部经历同一种事件(例如,TLB未命中)的指令之间改变的原因很多。存在多种本地高速缓存用于地址转换的一些信息的高速缓存策略(例如,可在数据高速缓存中高速缓存页表项,或可以使用步行高速缓存(walkcache)来高速缓存存储器中的页表项的地址以加速页表移动),因此延迟可取决于在何处高速缓存所需信息。在一些示例中,地址转换电路可使用两阶段转换将虚拟地址转换为物理地址,该两阶段转换包括从虚拟地址获取中间地址的第一阶段和从中间地址获取物理地址的第二阶段。这例如可适用于支持虚拟化,在虚拟化中,第一阶段由操作系统控制,第二阶段由管理程序(hypervisor)控制。当使用两个阶段的地址转换时,本技术尤其有利,因为两阶段转换引入了更多变量,地址转换延迟可由于这些变量而改变,因此转换延迟的直接测量可比仅对TLB未命中或页表移动的数目进行计数更有用。测量出的地址转换延迟可为与用于从给定虚拟地址获取物理地址的整体地址转换过程相关联的延迟的量度。当地址转换过程包括第一转换阶段及第二转换阶段时,延迟测量可为两个阶段的总延迟。或者,测量出的延迟可只是地址转换过程的部分,或者可对该过程的数个部分进行多个单独的延迟测量。例如,可排他地对转换阶段中的一者进行延迟测量,或可单独测量两个阶段的延迟以允许对哪一阶段造成潜在的性能问题进行更有针对性的识别。地址转换过程有时可通过使用数据存储装置(例如,存储器)中的页表执行页表移动来获取转换数据。例如,如果TLB中有未命中,则可执行页表移动。在一些情况下,页表可为单级页表,在单级页表中,对存储器的单次存取返回用于转换给定虚拟地址的转换数据。然而,在一些情况下,页表可具有层级结构。在这种情况下,单次页表移动可包括对不同级别的页表的多次存取。例如,可查找给定级别的页表以识别指向下一级别的页表的指针,且可遍历数个级别的页表来定位包括所需转换数据的最终级别的页表。这种层级结构可用于缩减存储器中的页表结构的总大小。当提供多级页表结构时,与页表移动相关联的延迟可能有更大的变动,因为取决于正在使用的高速缓存策略,移动的一些步骤可比其他步骤更快或可全部省略。因此,在提供层级页表结构的系统中,通过追踪地址转换延迟而非仅对事件进行计数来监测性能尤其有用。该设备还可包括指令选择电路以选择将由转换测量电路监测的指令子集,且转换延迟测量电路可在指令子集中的一个指令需要地址转换过程时测量地址转换的延迟。另一方面,当并非来自指令子集的指令需要地址转换时,转换延迟测量电路不可测量该指令的地址转换延迟。这样可以通过不追踪全部指令来帮助减少与转换延迟测量电路相关联的面积及功率开销。对特定指令子集进行采样以作为地址转换的候选也有助于将延迟测量归属于个别指令,比起仅对在整个程序执行期间发生多少事件进行计数,此举可提供更有针对性的诊断信息。尽管有人可能预计仅记录指令子集的延迟可能会错漏某些性能关键事件,但是对指令中某一部分进行采样可给出充足信息以提供对整个程序的性能的统计代表视图。指令选择电路可识别哪些指令为将以不同方式监测的子集的部分。例如,与指令自身相关联的标记值可用以指示指令属于还是不属于该子集。标记可与指令一起沿处理管线传递,且当转换延迟测量电路检测到具有设定值的标记的指令时,该转换延迟测量电路可测量针对该指令的地址转换延迟。另一选项可为使用与指令子集分开存储的标识符来识别子集。例如,每一指令可能已具有将其区别于其他指令的指令标识符,且指令选择电路可将识别哪些指令标识符属于子集的记录与指令自身分开储存,并且当转换延迟测量电路遇到其标识符被存储在记录中的指令时,该电路可测量延迟。另一选项可为使用这些方法的组合,例如,包括指令子集的指令组的单独存储的标识符,及与该组内将用作指令子集的特定指令相关联的标记;或与沿管线传递的指令组中的全部指令相关联的标记,及指定标记组中的哪些指令将被包括在子集中的一个或更多个单独标识符。也可对微型架构中的不同部分使用不同方法,例如,一些指令族可使用标记,而其他指令可使用标识符。此外,在一些情况下,可针对指令的使用寿命中的一个或多个部分进行标记,并用其他部分的记录对指令进行引用。例如,当指令在管线中时对指令进行标记,但当指令在队列(例如,加载/存储队列)中时可使用指令标识符的记录。在给定时间允许在管线中处于飞行状态的指令子集的最大数目在不同实施方式中可不同。一些系统可提供充足的资源来同时追踪多个指令的地址转换延迟,在此情况下,可将一个以上处于飞行状态的指令识别为在给定时间属于指令子集。然而,为减少电路开销,其他系统可将被监测指令的数目限制为每次一个处于飞行状态的指令。指令选择电路可被配置为在从选择前一指令起经过预定间隔之后,选择额外指令作为指令子集中本文档来自技高网...

【技术保护点】
1.一种设备,包括:处理电路,用以处理指令;地址转换电路,用以响应于由所述处理电路处理的指令而转换地址;以及转换延迟测量电路,用以测量由所述地址转换电路响应于给定指令而执行的地址转换过程的至少部分的延迟。

【技术特征摘要】
【国外来华专利技术】2016.01.21 US 15/002,6481.一种设备,包括:处理电路,用以处理指令;地址转换电路,用以响应于由所述处理电路处理的指令而转换地址;以及转换延迟测量电路,用以测量由所述地址转换电路响应于给定指令而执行的地址转换过程的至少部分的延迟。2.如权利要求1所述的设备,其中,所述地址转换过程包括第一转换阶段和第二转换阶段,所述第一转换阶段用于将虚拟地址转换为中间地址,所述第二转换阶段用于将所述中间地址转换为物理地址。3.如权利要求2所述的设备,其中,所述延迟包括所述第一转换阶段及所述第二转换阶段的总延迟。4.如权利要求2所述的设备,其中,所述延迟包括所述第一转换阶段及所述第二转换阶段中被选择的一者的延迟。5.如前述任一权利要求所述的设备,其中,所述地址转换电路被配置为通过使用存储器中存储的多个级别的页表执行页表移动,从所述存储器获取用于转换给定地址的转换数据。6.如前述任一权利要求所述的设备,包括指令选择电路,用以选择由所述处理电路处理的指令子集;其中,所述转换延迟测量电路被配置为当所述指令子集中的一个指令需要所述地址转换过程时测量所述延迟。7.如权利要求6所述的设备,其中,所述转换延迟测量电路被配置为基于以下各项中的至少一项来识别给定指令是否是所述指令子集中的一个指令:与所述给定指令相关联的标记值,该标记值指示所述给定指令是否是所述指令子集中的一个指令;以及与所述给定指令分开存储的标识符,该标识符识别所述给定指令是所述指令子集中的一个指令。8.如权利要求6或7所述的设备,其中,所述指令选择电路被配置为判定从选择前一指令作为所述子集中的一个指令开始是否已经过预定间隔,并在经过所述预定间隔后选择另一指令作为所述子集中的一个指令。9.如权利要求8所述的设备,其中,响应于已经过所述预定间隔,当被选择作为所述子集中的一个指令的所述前一指令有待进展超过处理的预定阶段时,所述指令选择电路被配置为推迟选择另一指令作为所述子集中的一个指令,直至所述前一指令进展超过所述预定阶段为止。10.如权利要求6至9中任一项所述的设备,包括性能监测电路,用以监测除所述转换延迟测量电路测量的所述延迟以外,与所述指令子集的处理相关联的至...

【专利技术属性】
技术研发人员:迈克尔·约翰·威廉姆斯迈克尔·菲利普哈齐姆·沙菲
申请(专利权)人:ARM有限公司
类型:发明
国别省市:英国,GB

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1