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

用于提供空闲轮询循环的有效检测的技术制造技术

技术编号:22387263 阅读:16 留言:0更新日期:2019-10-29 06:29
用于提供空闲轮询循环的有效检测的技术包括计算装置。计算装置具有包括多个核和存储器的计算引擎。计算引擎要确定在多个核中的核的预定义时间段期间不成功操作与成功操作的比率,所述核被指配为在预定义时间段内对于状况改变连续轮询存储器地址,并且确定所确定的比率是否满足不成功操作与成功操作的参考比率。参考比率指示指配的核的操作改变。计算引擎进一步根据所确定的比率是否满足参考比率来选择性地增大或减小指配的核的功率使用。还描述了其它实施例并且要求了权利。

【技术实现步骤摘要】
用于提供空闲轮询循环的有效检测的技术
技术介绍
在由计算装置执行的典型分组处理应用中,多核处理器的核可以执行轮询模式驱动,该驱动使核连续轮询存储器地址(例如,重复读取在存储器中的一位置的描述符数据),等待值改变,这将指示一个或多个项目(例如,分组)已经排队,并且准备好被操作(例如,对于要被操作的新接收的分组,轮询与计算装置的网络接口控制器相关联的队列)。执行轮询模式驱动器的核对计算装置的操作系统表现为被100%利用,即便尚未发生状况改变(例如,没有分组正在被处理器接收和处理)。因而,由于执行轮询模式驱动器的核的报告的利用率未指示业务量(例如,入局分组的量),因此典型的功率管理方案已经难以确定何时在低业务情形下按比例缩小核的频率,或者在高业务情形下按比例放大核的频率。因此,计算装置的操作者(例如,包含计算装置的数据中心的操作者)可能引起由于在电力可能已经被节省或被用在数据中心的其它地方时在空闲轮询循环期间(例如,在低业务情形下)以相对高的功率模式操作核而不必要地消耗的电力的操作费用。附图说明本文描述的概念在附图中作为示例而非作为限制被图示。为了图示的简洁和清晰起见,在图中图示的元件不一定按比例绘制。视情况而定,参考标记已经在各图之间被重复,以指示对应的或类似的元件。图1是用于提供空闲轮询循环的有效检测的计算装置的至少一个实施例的简化图解;图2-4是可以由图1的计算装置执行的用于有效地检测空闲轮询循环的方法的至少一个实施例的简化框图;图5是在可存在于图1的计算装置的操作期间的处理器使用、分支命中和未中比率和业务速率之间的关系的图解;以及图6是图1的计算装置的核可以在执行图2-4的方法期间操作处于的功率使用模式的状态图。具体实施方式虽然本公开的概念易受到各种修改和备选形式,但它们的特定实施例已经在附图中作为示例示出了,并且将在本文详细描述。然而,应该理解到,没有意图将本公开的概念限制于所公开的具体形式,而是相反,意图是涵盖与本公开和所附权利要求书一致的所有修改、等效和备选。在说明书中对“一个实施例”、“实施例”、“说明性实施例”等的参考指示所描述的实施例可包含具体特征、结构或特性,但每一个实施例可包含或者可能不一定包含该具体特征、结构或特性。而且,此类短语不一定指的是相同实施例。另外,当具体特征、结构或特性结合某实施例进行描述时,认为结合其它实施例来实现此类特征、结构或特性在本领域技术人员的知识范围内,不管是否明确描述。附加地,应该认识到,包含在以“至少一个A、B和C”形式的列表中的项目能意味着(A);(B);(C);(A和B);(A和C);(B和C);或(A、B和C)。类似地,包含在以“A、B或C中至少一个”形式的列表中的项目可意味着(A);(B);(C);(A和B);(A和C);(B和C);或(A、B和C)。所公开的实施例在一些情况下可采用硬件、固件、软件或它们的任何组合实现。所公开的实施例还可被实现为由暂态或非暂态机器可读(例如计算机可读)存储介质携带的或存储在其上的指令,其可由一个或多个处理器读取和执行。机器可读存储介质可以被实施为用于以由机器(例如易失性或非易失性存储器、媒体盘或其它媒体装置)可读形式存储或传送信息的任何存储装置、机构或其它物理结构。在附图中,一些结构性或方法特征可以在特定布置和/或排序中示出。然而,应该认识到,此类特定布置和/或排序可以不是必需的。而是,在一些实施例中,此类特征可采用按与在说明性附图中示出的不同的方式和/或次序布置。此外,在具体附图中包含结构性或方法特征不意图暗示此类特征在所有实施例中是必需的,并且在一些实施例中可能不被包含,或者可与其它特征组合。现在参考图1,用于有效地检测空闲轮询循环的计算装置110通过网络170与客户端装置160通信。计算装置110在操作中可以使用处理器114的核140来执行一个或多个应用(例如,在一个或多个虚拟机中),诸如以代表客户端装置160执行服务。在这样做时,计算装置110利用性能监视单元(PMU)130监视核140的不成功操作与成功操作的比率(例如,不成功推测操作与成功推测操作(诸如分支未中与分支命中、高速缓存未中与高速缓存命中等)的比率),核140被指配为对于指示状况改变的数据连续轮询存储器地址(例如,对于新接收的分组连续轮询与网络接口控制器(NIC)122相关联的队列150等)。响应于确定比率超过预定义阈值(例如,0.01%),计算装置确定核140已检测到状况改变。另外,计算装置110可以根据(asafunctionof)比率超过预定义阈值的量(例如,线性关系)来增大核140的功率使用(例如,频率和/或电压)。类似地,随着比率逼近预定义阈值,计算装置可以减小核的功率使用。在说明性实施例中,计算装置110可以使用功率控制单元(PCU)132选择性地增大或减小核的功率使用。与根据轮询模式驱动器来确定不断报告100%利用率而不管状况改变是否已经发生(例如,不管NIC是否已经接收到任何分组)的典型计算装置相比,计算装置110能够有效地(例如,在没有用于对NIC队列150中的接收的分组的数量进行计数的专用硬件或软件情况下)并且准确地确定状况改变是否已经发生,并且快速地(例如,具有低时延,诸如在测量的比率的改变的10微秒内)按比例放大或按比例缩小核140的功率以节省功率,并降低计算装置110的操作费用。如图1所示,说明性计算装置110包含计算引擎112、输入/输出(I/O)子系统118、通信电路120和一个或多个数据存储装置124。当然,在其它实施例中,计算装置110可包含其它或附加组件,诸如通常在计算机中发现的组件(例如显示器、外围装置等)。此外,在一些实施例中,说明性组件中的一个或多个可被结合在另一组件中,或以别的方式形成另一组件的一部分。计算引擎112可被实施为能够执行下面描述的各种计算功能的任何类型的装置或装置集合。在一些实施例中,计算引擎112可被实施为单个装置,诸如集成电路、嵌入式系统、现场可编程门阵列(FPGA)、片上系统(SOC)或者其它集成系统或装置。在说明性实施例中,计算引擎112包含或被实施为处理器114和存储器116。处理器114可被实施为能够执行本文描述的功能的任何类型的处理器。例如,处理器114可被实施为(一个或多个)多核处理器、微控制器或者其它处理器或处理/控制电路。在一些实施例中,处理器114可被实施为、可包含或者可被耦合到FPGA、专用集成电路(ASIC)、可重配置硬件或硬件电路或者促进本文描述的功能执行的其它专门硬件。在说明性实施例中,处理器114包括一个或多个性能监视器单元(PMU)130、一个或多个功率控制单元(PCU)132以及核142、144、146和148(统称为核140)的对应集合。每个性能监视器单元130可以被实施为能够监视计算引擎112的微架构事件的发生和后果(诸如推测操作(例如,分支预测)的发生及其后果(例如,分支命中、分支未中)、高速缓存访问操作的发生及其后果(例如,高速缓存命中、高速缓存未中)以及其它类型的事件)的任何装置或电路(例如,ASIC、协处理器等)。每个功率控制单元132可以被实施为能够选择性地增大或减小计算引擎112的一个或多个组件(诸如核140中的一个或多个本文档来自技高网...

【技术保护点】
1.一种计算装置,包括:计算引擎,所述计算引擎包含多个核和存储器;其中所述计算引擎用于:确定在所述多个核中的核的预定义时间段期间不成功操作与成功操作的比率,其中所述核被指配为在所述预定义时间段内对于状况改变连续轮询存储器地址;确定所确定的比率是否满足不成功操作与成功操作的参考比率,其中所述参考比率指示指配的核的操作改变;以及根据所述确定的比率是否满足所述参考比率来选择性地增大或减小所述指配的核的功率使用。

【技术特征摘要】
2018.04.12 US 15/9513911.一种计算装置,包括:计算引擎,所述计算引擎包含多个核和存储器;其中所述计算引擎用于:确定在所述多个核中的核的预定义时间段期间不成功操作与成功操作的比率,其中所述核被指配为在所述预定义时间段内对于状况改变连续轮询存储器地址;确定所确定的比率是否满足不成功操作与成功操作的参考比率,其中所述参考比率指示指配的核的操作改变;以及根据所述确定的比率是否满足所述参考比率来选择性地增大或减小所述指配的核的功率使用。2.如权利要求1所述的计算装置,进一步包括:与所述存储器中的队列相关联的网络接口控制器;并且其中确定不成功操作与成功操作的比率包括:确定在所述多个核中的被指配为对于新接收的分组连续轮询所述队列的核的预定义时间段期间不成功操作与成功操作的比率。3.如权利要求1所述的计算装置,其中确定不成功操作与成功操作的所述比率包括:确定不成功推测操作与成功推测操作的所述比率。4.如权利要求1所述的计算装置,其中确定不成功操作与成功操作的所述比率包括:确定分支未中与分支命中的所述比率。5.如权利要求1所述的计算装置,其中确定不成功操作与成功操作的所述比率包括:确定高速缓存未中与高速缓存命中的所述比率。6.如权利要求1所述的计算装置,其中所述计算引擎进一步包括性能监视单元,并且其中确定不成功操作与成功操作的所述比率包括:利用所述性能监视单元监视不成功操作和成功操作的发生。7.如权利要求1所述的计算装置,其中确定所述指配的核的不成功操作与成功操作的所述比率包括:确定由虚拟机利用的核的不成功操作与成功操作的所述比率。8.如权利要求1所述的计算装置,其中确定所述确定的比率是否满足不成功操作与成功操作的参考比率包括:确定所述确定的比率超过所述参考比率的量,并且其中选择性地增大或减小所述指配的核的所述功率使用包括:根据所述确定的比率超过所述参考比率的所述量来增大所述指配的核的所述功率使用。9.如权利要求1所述的计算装置,其中根据所述确定的比率超过所述参考比率的所述量来增大所述指配的核的所述功率使用包括:以与所述确定的比率超过所述参考比率的所述量的线性关系来增大所述指配的核的所述功率使用。10.如权利要求1所述的计算装置,其中确定所述确定的比率是否满足所述参考比率包括:确定所述确定的比率是否大于或等于0.01%。11.如权利要求1所述的计算装置,其中选择性地增大或减小所述指配的核的所述功率使用包括:减小所述指配的核的频率或电压中的至少一个。12.如权利要求1所述的计算装置,其中选择性地增大或减小所述指配的核的所述功率使用包括:增大所述指配的核的频率或电压中的至少一个。13.一种计算装置,包括:用于确定在所述计算装置的多个核中的核的预定义时间段期间不成功操作与成功操作的比率的部件,其中所述核被指配为在所述预...

【专利技术属性】
技术研发人员:D亨特N鲍尔K德维C韦B理查森E塔米尔A坎宁安C麦克纳马拉N马贾诺维奇R塞克斯顿J布朗尼
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

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

1