当前位置: 首页 > 专利查询>英特尔公司专利>正文

微操作的自适应动态分派制造技术

技术编号:37977444 阅读:12 留言:0更新日期:2023-06-30 09:52
公开了用于微操作的自适应动态分派的装置、方法和系统的实施例。在实施例中,装置包括多个冗余执行单元、分派器、控制硬件、第一计数器和第二计数器。分派器用于将微操作分派至多个冗余执行单元中的一个或多个冗余执行单元,该微操作具有多个微操作类型。第一计数器用于在窗口期间生成对具有多个微操作类型中的第一类型的微操作的分派的第一计数。第二计数器用于在该窗口期间生成对具有多个微操作类型中的任何类型的微操作的分派的第二计数。控制硬件用于部分基于第一计数和第二计数来导致第一模式和第二模式之间的切换。在第一模式下,分派器用于将具有第一类型的微操作仅分派至多个冗余执行单元的子集。在第二模式下,分派器用于将具有第一类型的微操作分派至多个冗余执行单元中的所有冗余执行单元。冗余执行单元中的所有冗余执行单元。冗余执行单元中的所有冗余执行单元。

【技术实现步骤摘要】
微操作的自适应动态分派


[0001]本专利技术的领域总体上涉及信息处理,并且更具体但非限制性地涉及处理器微体系结构。

技术介绍

[0002]信息处理系统中的处理器或执行核心可包括可执行与软件调用的指令相对应的一个或多个操作的多于一个执行资源。例如,软件可以在核心上调用可解码为融合乘加(fused

multiply

add,FMA)微操作的FMA指令。核心可包括能够执行FMA微操作的两个或更多个执行单元。
附图说明
[0003]在所附附图中以示例方式而非限制方式来图示本专利技术,在附图中,类似的附图标记指示类似的要素,并且其中:
[0004]图1A是根据实施例的自适应动态分派硬件的框图;
[0005]图1B是根据实施例的用于自适应动态分派的方法的框图;
[0006]图2是根据实施例的用于自适应动态分派的状态机的示意图;
[0007]图3是根据实施例的自适应动态分派的操作的时间线的示意图;
[0008]图4A是图示出根据实施例的有序管线和寄存器重命名的、乱序发布/执行管线两者的框图;
[0009]图4B是图示出根据实施例的要包括在处理器中的有序体系结构核心和寄存器重命名的、乱序发布/执行体系结构核心两者的框图;
[0010]图5是根据本专利技术的实施例的可具有多于一个核心、可具有集成存储器控制器、并且可具有集成图形器件的处理器的框图;
[0011]图6是根据实施例的系统的框图;
[0012]图7是根据实施例的第一更具体的系统的框图;
[0013]图8是根据实施例的第二更具体的系统的框图;以及
[0014]图9是根据实施例的片上系统的框图。
具体实施方式
[0015]在以下描述中,可阐述诸如组件和系统配置之类的众多特定细节以提供对本专利技术的更透彻理解。然而,本领域技术人员将领会,可在没有此类特定细节的情况下实施本专利技术。另外,未详细示出一些公知的结构、电路和其他特征,以避免不必要地使本专利技术模糊。
[0016]对“一个实施例”、“实施例”、“示例实施例”、“各实施例”等的引用指示所描述的(一个或多个)实施例可包括特定的特征、结构或特性,但是多于一个实施例可包括该特定的特征、结构或特性,并且并非每一个实施例都一定包括该特定的特征、结构或特性。一些实施例可具有针对其他实施例所描述的特征中的一些或全部,或完全不具有这些特征。而
且,此类短语不一定是指同一实施例。当结合实施例来描述特定的特征、结构或特性时,认为结合无论是否明确地描述的其他实施例来实施此类特征、结构或特性在本领域技术人员的知识范围之内。
[0017]如在本说明书和权利要求书中所使用,除非以其他方式指定,否则对用于描述要素的序数词“第一”、“第二”、“第三”等的使用仅仅指示正在引用的要素的特定实例或类似要素的不同实例,并且不旨在暗示如此描述的这些要素在时间上、空间上、按等级或按任何其他方式必须按照特定的序列。另外,如在实施例的描述中所使用,在多个项之间的“/”字符可意指实施例可包括第一项和/或第二项(和/或任何其他附加项),或者可使用、利用和/或根据第一项和/或第二项(和/或任何其他附加项)来实现。
[0018]此外,术语“比特”、“标志”、“字段”、“条目”、“指示符”等可用于描述无论是以硬件还是以软件实现的、寄存器中任何类型或内容的存储位置、表、数据库或其他数据结构,并且这些术语不旨在将实施例限于任何特定类型的存储位置或任何特定存储位置内的比特或其他元素的数量。例如,术语“比特”可用于指代寄存器内的比特位置和/或被存储在或要被存储在该比特位置中的数据。术语“清除”可用于指示将逻辑值0存储在存储位置中或以其他方式引起逻辑值0被存储在存储位置中,并且术语“清除的”可指在存储或引起已经发生之后的状态。术语“置位”可用于指示将逻辑值1、全1或某个其他指定值存储在存储位置中或以其他方式引起逻辑值1、全1或某个其他指定值被存储在存储位置中,并且术语“置位的”可指在存储或引起存储已经发生之后的状态。然而,这些术语并非旨在将本专利技术的实施例限于任何特定的逻辑约定,因为任何逻辑约定都可在本专利技术的实施例内使用。
[0019]如在
技术介绍
部分中所提到的,信息处理系统中的处理器或执行核心可包括多于一个可执行与软件调用的指令相对应的一个或多个操作的执行资源。这些执行资源可以被称为冗余。例如,软件可以在核心上调用可解码为融合乘加(fused

multiply

add,FMA)微操作(micro

operation,uop)的FMA指令。核心可包括两个或更多个能够执行FMA微操作的冗余执行单元(每个FMA单元一个)。因此,包括多个FMA指令的指令序列或线程可使其相应的FMA微操作被分派或发布(这两个术语在本说明书中可以互换地使用)以由冗余FMA单元中的任一冗余FMA单元执行,因此冗余FMA单元中的两个或更多个冗余FMA单元可以并行操作和/或在序列或线程执行期间操作。
[0020]此外,处理器或执行核心可能会受到功率管理技术的影响或根据功率管理技术可控制,在该功率管理技术中,其时钟频率可基于功率消耗、功率预算等进行改变。
[0021]因此,使用实施例,可能期望自适应地和动态地控制和/或改变向其分派指令/微操作的冗余执行资源的数量。例如,在具有四个冗余FMA单元的核心中,功率和性能之间的最优权衡可能取决于所使用的FMA单元的数量。在该示例中,实施例可以提供在第一模式和第二模式之间的自适应和动态切换,在第一模式下使用所有四个FMA单元,而在第二模式下仅使用四个FMA单元中的两个FMA单元。实施例可以包括用于确定相对于其他微操作被分派的FMA微操作的数量的电路系统,以及用于基于该确定在模式之间切换的电路系统。在本说明书中,术语“确定(determining)”和“判定(determination)”可能不需要精确、确定性或绝对的判定(例如,它们可以替代地对应于“估计(estimating)”和“估算(estimation)”)。
[0022]对于相比其他执行单元(例如,整数)可消耗更多功率的执行单元(例如,FMA),实施例的使用可能是期望的。可能期望使用实施例来提高比其他工作负载使用更耗电的执行
资源的工作负载的性能,而不降低那些其他工作负载的性能。
[0023]核心中的不同单元和核心执行的不同类型微操作的功率消耗的差异意味着,为了实现性能和功率之间的最优权衡,核心应在与正在执行的程序的功率特性相对应的不同频率下工作。因此,使用额外的硬件可能不会像预期的那样具有提高性能的直接效果。例如,如果FMA微操作具有所有微操作中最高的功率成本,那么使用额外的FMA单元可能会对核心的整体性能产生负面影响。
[0024]更具体地,从两个FMA单元移至四个FMA单元(例如,支持四个并行的256比特FMA微操作)所产生的问题是,如果在任何给定时间,核心都可以执行四本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于分派微操作的装置,包括:多个冗余执行单元;分派器,所述分派器用于将微操作分派至所述多个冗余执行单元中的一个或多个冗余执行单元,所述微操作具有多个微操作类型;第一计数器,所述第一计数器用于在窗口期间生成对具有所述多个微操作类型中的第一类型的微操作的分派的第一计数;以及第二计数器,所述第二计数器用于在所述窗口期间生成对具有所述多个微操作类型中的任何类型的微操作的分派的第二计数;以及控制硬件,所述控制硬件用于部分基于所述第一计数和所述第二计数来导致第一模式和第二模式之间的切换;其中在所述第一模式下,所述分派器用于将具有所述第一类型的微操作仅分派至所述多个冗余执行单元的子集;以及在所述第二模式下,所述分派器用于将具有所述第一类型的微操作分派至所述多个冗余执行单元中的所有冗余执行单元。2.如权利要求1所述的装置,其特征在于,所述多个冗余执行单元在所述第一模式下以第一时钟频率操作,并且在所述第二模式下以第二时钟频率操作,其中所述第二时钟频率小于所述第一时钟频率。3.如权利要求2所述的装置,其特征在于,响应于第一指示符达到第一阈值,所述控制硬件还用于确定要导致从所述第一模式到所述第二模式的切换,其中所述指示符基于所述第一计数,以指示在所述第一模式下具有所述第一类型的微操作的分派率。4.如权利要求3所述的装置,其特征在于,所述控制硬件还响应于确定要导致从所述第一模式到所述第二模式的所述切换而存储第二指示符,其中所述第二指示符基于所述第二计数,以指示所述第一模式下的整体分派率。5.如权利要求4所述的装置,其特征在于,所述控制硬件还部分地基于第三指示符与所述第二指示符的第一比较来确定要导致从所述第二模式到所述第一模式的切换,其中所述第三指示符基于所述第二计数,以指示所述第二模式下的整体分派率。6.如权利要求5所述的装置,其特征在于,确定要导致从所述第二模式到所述第一模式的所述切换的所述控制硬件还基于第四指示符与第二阈值的第二比较,其中所述第四指示符基于所述第一计数,以指示在所述第二模式下具有所述第一类型的微操作的分派率。7.如权利要求6所述的装置,其特征在于,确定要导致从所述第二模式到所述第一模式的所述切换的所述控制硬件还基于对所述第一时钟频率和所述第二时钟频率的差异的考虑。8.如权利要求7所述的装置,其特征在于,所述第一比较部分地基于对所述第一时钟频率和所述第二时钟频率的所述差异的所述考虑。9.如权利要求7所述的装置,其特征在于,所述第一比较部分地基于通过以可配置值乘以所述第二计数的、对所述第一时钟频率和所述第二时钟频率的所述差异的所述考虑。10.如权利要求9所述的装置,进一步包括用于生成第五指示符的置信度计数器,其中所述第五指示符基于所述第一比较和所述第二比较,以检查性能增加的稳定性。11.如权利要求1所述的装置,其特征在于,对具有所述第一类型的微操作的执行消耗
比基于所有所述多个微操作类型的平均功率更多的功率。12.如权利要求1所述的装置,其特征在于,所述第一类型是融合乘加。13.一种用于分派微操作的方法,包括:在第一模式下分派具有多个微操作类型中的第一类型的微操...

【专利技术属性】
技术研发人员:O
申请(专利权)人:英特尔公司
类型:发明
国别省市:

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

1