使用共享硬件资源的群集处理器核心中硬件线程的动态负载平衡以及相关的电路、方法和计算机可读媒体技术

技术编号:14698135 阅读:74 留言:0更新日期:2017-02-24 04:01
本发明专利技术揭示使用共享硬件资源的群集处理器核心中硬件线程的动态负载平衡和相关的电路、方法以及计算机可读媒体。在一个方面中,提供包括控制单元的动态负载平衡电路。所述控制单元经配置以确定非最优负载条件是否存在于群集处理器核心的第一群集与第二群集之间。如果非最优负载条件存在,那么所述控制单元进一步经配置以经由所述第一群集的第一硬件线程和所述第二群集的第二硬件线程的共享硬件资源将所述第一硬件线程的专用寄存器的内容传送到所述第二硬件线程的专用寄存器。所述控制单元还经配置以经由所述共享硬件资源将与所述第一硬件线程相关联的第一标识符与与所述第二硬件线程相关联的第二标识符交换。

【技术实现步骤摘要】
【国外来华专利技术】优先权要求本申请案主张2014年5月7日申请的且题为“使用共享硬件资源的群集处理器核心中硬件线程的动态负载平衡和相关的电路、方法以及计算机可读媒体(DYNAMICLOADBALANCINGOFHARDWARETHREADSINCLUSTEREDPROCESSORCORESUSINGSHAREDHARDWARERESOURCES,ANDRELATEDCIRCUITS,METHODS,ANDCOMPUTER-READABLEMEDIA)”的美国专利申请案第14/271,812号的优先权,所述美国专利申请案以引用的方式全文并入本文中。
本专利技术的技术大体上涉及改进群集处理器核心的性能。
技术介绍
现代处理器(例如,中央处理单元(CPU))可包含提供资源以供执行计算机指令的一或多个硬件线程。每一硬件线程可包含仅可通过硬件线程存取的一组专用寄存器(例如,通用寄存器(GPR)、控制寄存器或程序计数器,作为非限制性实例)。专用寄存器可由硬件线程使用以托管供执行的软件线程。专用寄存器的内容可共同表示软件线程的“上下文”,其界定在通过硬件线程执行软件线程时软件线程在给定时间点处的状态。在处理器内,硬件线程可经组织成被称为“群集”的若干群组。每一群集可包含一或多个硬件线程,且还可包含可由群集内的任何硬件线程存取的共享群集资源。举例来说,共享群集资源可包含可轮流使用群集的硬件线程中的每一者的执行管道。多个群集可进一步经组织成“群集处理器核心”。每一群集处理器核心可包含可由多个群集利用的共享硬件资源。共享硬件资源可包含一或多个执行单元(例如,浮点单元和/或算术逻辑单元)和/或高速缓冲存储器(例如,数据高速缓冲存储器),作为非限制性实例。在一些情形下,群集处理器核心的第一群集可相对于第二群集经历非最优负载条件。举例来说,第一群集的所有硬件线程可正在高负载条件下执行软件线程和操作,而第二群集内的硬件线程可未经充分利用。如果第一和第二群集正各自在某些情形(在此期间如果单个群集正执行两个硬件线程,那么可实现电力节省)下执行硬件线程,那么还可出现非最优负载条件。非最优负载条件的存在可导致群集处理器核心在非最优性能等级下操作。移位过程常规地需要操作系统将软件线程的上下文保存到存储器,且接着将软件线程重新载入为不同的硬件线程。常规的基于软件的技术使得软件线程能够从一个硬件线程移位到另一硬件线程。然而,如果操作系统缺乏对确定移位软件线程的性能和/或电力消耗益处所需的微架构数据的存取权,那么此过程可为不可行的。此外,将软件线程的上下文保存到存储器可能过分地缓慢。
技术实现思路
详细描述中所揭示的各方面包含使用共享硬件资源的群集处理器核心中硬件线程的动态负载平衡。还揭示相关的电路、方法以及计算机可读媒体。在这点上,在一个方面中,提供用于提供群集处理器核心中硬件线程的动态负载平衡的动态负载平衡电路。动态负载平衡电路包括以通信方式耦合到群集处理器核心的第一群集和第二群集的控制单元。控制单元经配置以确定非最优负载条件是否存在于第一群集与第二群集之间。响应于确定非最优负载条件存在,控制单元进一步经配置以经由以通信方式耦合到第一群集的第一硬件线程和第二群集的第二硬件线程的共享硬件资源而将第一硬件线程的一或多个专用寄存器的内容传送到第二硬件线程的一或多个专用寄存器。进一步响应于确定非最优负载条件存在,控制单元还经配置以经由共享硬件资源将与第一硬件线程相关联的第一标识符与与第二硬件线程相关联的第二标识符交换。以此方式,可通过经由共享硬件资源将第一硬件线程的内容从第一群集重定位到第二群集而高效解析非最优负载条件。在另一方面中,提供用于提供群集处理器核心中硬件线程的动态负载平衡的动态负载平衡电路。动态负载平衡电路包括用于确定群集处理器核心的第一群集与第二群集之间是否存在非最优负载条件的装置。动态负载平衡电路进一步包括用于响应于确定非最优负载条件存在,经由以通信方式耦合到第一群集的第一硬件线程和第二群集的第二硬件线程的共享硬件资源而将第一硬件线程的一或多个专用寄存器的内容传送到第二硬件线程的一或多个专用寄存器的装置。动态负载平衡电路还包括用于响应于确定非最优负载条件存在,经由共享硬件资源将与第一硬件线程相关联的第一标识符与与第二硬件线程相关联的第二标识符交换的装置。在另一方面中,提供用于提供群集处理器核心中硬件线程的动态负载平衡的方法。所述方法包括确定群集处理器核心的第一群集与第二群集之间是否存在非最优负载条件。所述方法进一步包括响应于确定非最优负载条件存在,经由以通信方式耦合到第一群集的第一硬件线程和第二群集的第二硬件线程的共享硬件资源而将第一硬件线程的一或多个专用寄存器的内容传送到第二硬件线程的一或多个专用寄存器。所述方法还包括响应于确定非最优负载条件存在,经由共享硬件资源将与第一硬件线程相关联的第一标识符与与第二硬件线程相关联的第二标识符交换。在另一方面中,提供非暂时性计算机可读媒体,其上存储有计算机可执行指令以致使处理器确定群集处理器核心的第一群集与第二群集之间是否存在非最优负载条件。计算机可执行指令进一步致使处理器响应于确定非最优负载条件存在,经由以通信方式耦合到第一群集的第一硬件线程和第二群集的第二硬件线程的共享硬件资源而将第一硬件线程的一或多个专用寄存器的内容传送到第二硬件线程的一或多个专用寄存器。计算机可执行指令还致使处理器响应于确定非最优负载条件条件,经由共享硬件资源而将与第一硬件线程相关联的第一标识符与与第二硬件线程相关联的第二标识符交换。附图说明图1为包含经配置以使用共享硬件资源执行硬件线程的负载平衡的动态负载平衡电路的例示性群集处理器核心的框图;图2为说明在通过动态负载平衡电路负载平衡之前通过硬件线程代管软件线程的图1的群集处理器核心的框图;图3为说明在动态负载平衡电路的负载平衡操作期间的通信流的图1的群集处理器核心的框图;图4为说明在通过动态负载平衡电路完成负载平衡操作之后的软件线程的代管的图1的群集处理器核心的框图;图5为说明使用共享硬件资源的群集处理器核心中硬件线程的动态负载平衡的例示性过程的流程图;以及图6为可包含图1的动态负载平衡电路的例示性基于处理器的系统的框图。具体实施方式现参考各图,描述本专利技术的若干例示性方面。词语“例示性”在本文中用以意味着“充当实例、例子或说明”。本文中描述为“例示性”的任何方面不必解释为比其它方面优选或有利。详细描述中所揭示的各方面包含使用共享硬件资源的群集处理器核心中硬件线程的动态负载平衡。还揭示相关的电路、方法以及计算机可读媒体。在这点上,在一个方面中,提供用于提供群集处理器核心中硬件线程的动态负载平衡的动态负载平衡电路。动态负载平衡电路包括以通信方式耦合到群集处理器核心的第一群集和第二群集的控制单元。控制单元经配置以确定非最优负载条件是否存在于第一群集与第二群集之间。响应于确定非最优负载条件存在,控制单元进一步经配置以经由以通信方式耦合到第一群集的第一硬件线程和第二群集的第二硬件线程的共享硬件资源而将第一硬件线程的一或多个专用寄存器的内容传送到第二硬件线程的一或多个专用寄存器。进一步响应于确定非最优负载条件存在,控制单元还经配置以经由共享硬件资源将与第一硬件线程相关联的第一标识符与本文档来自技高网
...
<a href="http://www.xjishu.com/zhuanli/55/201580021938.html" title="使用共享硬件资源的群集处理器核心中硬件线程的动态负载平衡以及相关的电路、方法和计算机可读媒体原文来自X技术">使用共享硬件资源的群集处理器核心中硬件线程的动态负载平衡以及相关的电路、方法和计算机可读媒体</a>

【技术保护点】
一种动态负载平衡电路,其包括:控制单元,其以通信方式耦合到群集处理器核心的第一群集和第二群集;所述控制单元经配置以:确定所述第一群集与所述第二群集之间是否存在非最优负载条件;以及响应于确定所述非最优负载条件存在:经由以通信方式耦合到所述第一群集的第一硬件线程和所述第二群集的第二硬件线程的共享硬件资源而将所述第一硬件线程的一或多个专用寄存器的内容传送到所述第二硬件线程的一或多个专用寄存器;以及经由所述共享硬件资源而将与所述第一硬件线程相关联的第一标识符与与所述第二硬件线程相关联的第二标识符交换。

【技术特征摘要】
【国外来华专利技术】2014.05.07 US 14/271,8121.一种动态负载平衡电路,其包括:控制单元,其以通信方式耦合到群集处理器核心的第一群集和第二群集;所述控制单元经配置以:确定所述第一群集与所述第二群集之间是否存在非最优负载条件;以及响应于确定所述非最优负载条件存在:经由以通信方式耦合到所述第一群集的第一硬件线程和所述第二群集的第二硬件线程的共享硬件资源而将所述第一硬件线程的一或多个专用寄存器的内容传送到所述第二硬件线程的一或多个专用寄存器;以及经由所述共享硬件资源而将与所述第一硬件线程相关联的第一标识符与与所述第二硬件线程相关联的第二标识符交换。2.根据权利要求1所述的动态负载平衡电路,其中所述共享硬件资源包括执行单元或高速缓冲存储器或其组合。3.根据权利要求1所述的动态负载平衡电路,其中所述控制单元经配置以通过检测所述第二群集的未充分利用而确定所述第一群集与所述第二群集之间是否存在所述非最优负载条件。4.根据权利要求1所述的动态负载平衡电路,其中所述控制单元经配置以通过检测所述群集处理器核心的能耗的潜在降低而确定所述第一群集与所述第二群集之间是否存在所述非最优负载条件。5.根据权利要求1所述的动态负载平衡电路,其中所述控制单元经配置以基于指示处理器利用、共享群集资源的利用、执行进程的数目或所述第一群集和所述第二群集的电力消耗中的一或多者的负载数据而确定所述第一群集与所述第二群集之间是否存在所述非最优负载条件。6.根据权利要求1所述的动态负载平衡电路,其中所述控制单元经配置以通过传送一或多个通用寄存器GPR的内容或一或多个控制寄存器的内容或其组合而将所述第一群集的所述第一硬件线程的所述一或多个专用寄存器的所述内容传送到所述第二群集的所述第二硬件线程的所述一或多个专用寄存器。7.根据权利要求6所述的动态负载平衡电路,其中:所述一或多个控制寄存器包括与所述第一硬件线程相关联的所述第一标识符和与所述第二硬件线程相关联的所述第二标识符;与所述第一硬件线程相关联的所述第一标识符将第一软件线程映射到所述第一硬件线程;以及与所述第二硬件线程相关联的所述第二标识符将第二软件线程映射到所述第二硬件线程。8.根据权利要求1所述的动态负载平衡电路,其经集成为集成电路。9.根据权利要求1所述的动态负载平衡电路,其经集成到从由以下各者组成的群组中选出的装置中:机顶盒、娱乐单元、导航装置、通信装置、固定位置数据单元、移动位置数据单元、移动电话、蜂窝式电话、计算机、便携式计算机、台式计算机、个人数字助理PDA、监视器、计算机监视器、电视、调谐器、收音机、卫星收音机、音乐播放器、数字音乐播放器、便携式音乐播放器、数字视频播放器、视频播放器、数字视频光盘DVD播放器以及便携式数字视频播放器。10.一种用于提供群集处理器核心中硬件线程的动态负载平衡的动态负载平衡电路,其包括:用于确定群集处理器核心的第一群集与第二群集之间是否存在非最优负载条件的装置;用于响应于确定所述非最优负载条件存在,经由以通信方式耦合到所述第一群集的第一硬件线程和所述第二群集的第二硬件线程的共享硬件资源而将所述第一硬件线程的一或多个专用寄存器的内容传送到所述第二硬件线程的一或多个专用寄存器的装置;以及用于响应于确定所述非最优负载条件存在,经由所述共享硬件资源将与所述第一硬件线程相关联的第一标识符与与所述第二硬件线程相关联的第二标识符交换的装置。11.一种用于提供群集处理器核心中硬件线程的动态负载平衡的方法,其包括:确定群集处理器核心的第一群集与第二群集之间是否存在非最优负载条件;以及响应于确定所述非最优负载条件存在:经由以通信方式耦合到所述第一群集的第一硬件线程和所述第二群集的第二硬件线程的共享硬件资源而将所述第一硬件线程的一或多个专用寄存器的内容传送到所述第二硬件线程的一或多个专用寄存器;以及经由所述共享硬件资源而将与所述第一硬件线程相关联的第一标识符与与所述第二硬件线程相关联的第二标识符交换。12.根据权利...

【专利技术属性】
技术研发人员:苏瑞序·库玛·凡库玛汉堤史蒂芬·罗伯特·香农王林
申请(专利权)人:高通股份有限公司
类型:发明
国别省市:美国;US

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

1