操作计算系统的系统和方法可以包括识别多个状态值,其中每个状态值对应于与处理器相关的计算线程。可对多个状态值确定平均值,其中可以至少部分基于该平均值作出关于是否批准频率加速请求的判定。
【技术实现步骤摘要】
【国外来华专利技术】【专利摘要】操作计算系统的系统和方法可以包括识别多个状态值,其中每个状态值对应于与处理器相关的计算线程。可对多个状态值确定平均值,其中可以至少部分基于该平均值作出关于是否批准频率加速请求的判定。【专利说明】有效频率加速操作
技术介绍
实施例一般性地涉及计算平台中的频率加速操作。更具体地,实施例涉及性能状态和/或功率状态值的平均以提高频率加速的效率。讨论特定的计算平台可以通过加速处理器内核频率超出所建议的频率值(例如,“睿频”加速(turbo boost))以提供改进的性能从而使用可用的功率余量和热余量。尽管睿频加速可以增加性能,但在特定环境下其也会减少能量效率。例如,已知的睿频加速方法在范围从大约60%至80%的负载期间会展现出明显的效率降级,特别是在多核、多线程架构中。附图简要说明通过阅读下列说明书和附属权利要求,以及通过参照下列附图,本专利技术实施例的各种优点对本领域技术人员是显而易见的,在其中:图1是依照实施例管理频率加速的方法不例的流程图;图2是依照实施例使用上限/下限约束和滞后控制功能以管理频率加速的方法示例的流程图;图3是依照实施例的多个状态计数器值示例的曲线图;图4是依照实施例的一组活动水平与功率的关系曲线的示例的曲线图;图5是依照实施例的一组每瓦性能曲线的示例的曲线图;图6是依照实施例的系统的框图。【具体实施方式】实施例可以包括具有指令集的计算机可读存储介质,如果指令由处理器执行,导致计算机识别多个状态值,其中每个状态值对应于计算线程。该指令还可以使计算机确定多个状态值的平均值,并且至少部分基于平均值确定是否批准频率加速请求。实施例还可以包括计算机执行方法,在其中识别多个状态值,其中每个状态值对应于计算线程。该方法还可以提供确定多个状态值的平均值,并且至少部分基于平均值确定是否批准频率加速请求。此外,实施例可以包括具有处理器和识别多个状态值的逻辑的系统,其中每个状态值对应于与处理器相关的计算线程。该逻辑还能确定多个状态值的平均值,并且至少部分基于平均值确定是否批准频率加速请求。其他实施例可以包括计算机执行方法,在其中识别多个状态值,其中每个状态值对应于与处理器相关的计算线程。对于一个或多个计算线程,识别状态值可以包括采样线程性能状态,在线程性能状态和与频率加速请求相关的性能状态之间进行比较,并且至少部分基于该比较修改对应于计算线程的状态计数器。该方法可以提供确定多个状态值的平均值,并且如果该平均值超出阈值则批准频率加速请求。如果平均值没有超过阈值则可以拒绝该频率加速请求。现在转向图1,示出了管理频率加速的方法10。该方法10可以在可执行软件中被实现为存储在存储器的机器或计算机可读介质中的逻辑指令集,存储器例如随机存取存储器(RAM)、只读存储器(ROM)、可编程ROM(PROM)、固件、闪存、等等,以及在使用电路技术(例如,专用集成电路(ASIC)、互补金属氧化物半导体(CMOS)或晶体管-晶体管逻辑(TTL)技术、或它们的任意组合)的固定功能逻辑硬件中实现,。例如,执行在方法10中示出的操作的计算机程序代码可以用一种或多种编程语言的任意组合编写,包括面向对象的编程语言(例如Java、Smalltalk、C++等等)以及传统的过程编程语言(例如“C”编程语言或类似的编程语目)。处理框12提供用于识别多个状态值,其中每个状态值对应于与多线程物理处理器相关的计算线程(例如,逻辑处理器)。例如,状态值能够代表如在高级配置和电源接口规范(例如,ACPI规范,Ref.4.0a, 2010年4月5日)、或其他适当规范中定义的处理器性能状态(例如,Px)值和/或功率状态(例如,Cx)值。处理器功率状态(Cx状态)可以定义具有特定入口和出口语义的功耗和热管理条件,并且性能状态(Px状态)可以定义在活动/执行状态(例如,用于处理器的CO)内的功耗和能力状态。因此,每个活动线程可以处于特定的Cx/Px状态,其中示出的框12识别用于每个线程的至少一个状态。此外,该处理器可以是中央处理单元(CPU)或具有单核或多核配置的分布式计算架构。在框14可以对多个状态值确定平均值,其中示出的框16至少部分基于平均值确定是否批准频率加速请求。如将要更详细地讨论,频率加速请求可以仅当跨所有线程的平均性能/功率状态值高于特定阈值时才被批准。因此,在存在将处理器的操作频率增加至高于所建议处理器最大频率的水平的待批睿频加速请求的情况下,所述的示例使用平均值整体上评估多线程处理器负载,而不是在每线程基础上解释负载。简单地说,所述的方法限制了单个线程在多线程、多内核环境下主导频率加速管理方案的能力。相应地,方法10能够实现更有效的频率加速操作。图2示出了管理频率加速的更详细方法18,其中上限/下限约束和滞后控制功能被用于进一步增强操作。在所示的示例中,在框20确定多线程处理架构中的一个或多个线程(例如,逻辑处理器)正在请求睿频加速操作。响应于该请求,框22初始化相应于活动线程的处理器状态计数器至下限值。特别地,每个计算线程可以与跟踪其性能状态以及其功率状态的计数器相关联,其中该下限值可以是小的非零值,用于防止状态计数器具有可能会对平均功能带来问题的负值。频率加速阈值在框24可以被设置为“批准水平”。如将要被更详细地描述,多个水平可被用于阈值以实现频率控制系统的滞后控制功能。框26提供用于周期地采样每个线程的性能和/或功率状态。采样率可被设置为任何合适的值(例如,每15微秒)。框28提供用于在采样状态和与频率加速请求相关的性能/功率状态之间进行比较,并且相应地修改状态计数器。例如,如果线程应当在C0/P0状态以适合频率加速,则每个线程的状态会与该C0/P0状态比较并且其计数器会基于比较结果递增或递减。此外,用于递增/递减的阶值可以是可变的。因此,在上述示例中,在CO/Px状态的线程可以使其状态计数器递减特定量并且在Cx/Px状态的线程可以使其状态计数器递减更大量,而C0/P0状态的线程可以使其状态计数器仍递增另一量。所示的框30将上限/下限约束应用至计数器。特别地,如果给定状态计数器超出上限值,则其可被设置为(例如,约束为)上限值,以及如果状态计数器下降低于下限值则其可被设置为(例如,约束为)下限制。如已被注意的,下限值能够防止状态计数器具有可能会对平均功能带来问题的负值。上限值能够限制在平均确定中反映的历史量,同时仍允许单个线程触发频率加速。例如,用于二十线程处理器架构的上限值可被设置用来支持约二十倍阈值加一,以便保持在单线程应用过程中(例如,当单个处理器线程单独请求频率加速时的情形)做出频率加速判定所需的历史量。在框32可以平均计数器值,其中在框34可以作出关于平均值是否超出频率加速阈值的判定。如果这样,所示的框36允许进行频率加速操作,并且框38能够将阈值设置为“拒绝水平”。因此,如果该阈值之前处于批准水平,则框38可以包括将其降低至较低水平从而使得处理器稍微容易地保持以频率加速模式继续操作。相应地,所述方法实现滞后控制功能,该功能考虑可能原本围绕频率加速阈值上下振荡的平均值。如果平均值没有超过当前频率加速阈值,则所示框40阻止频率加速操作进行,并且框42可以将阈值设置回批准水平。因此,如果阈值之前被降至本文档来自技高网...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】...
【专利技术属性】
技术研发人员:B·加内桑,J·S·波恩斯,S·苏古玛,D·V·博达斯,S·R·伊恩加,F·尼尔森,D·纳加拉,R·J·芬格,
申请(专利权)人:英特尔公司,
类型:
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。