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

文档序号:18985658发布日期:2019-10-29 04:22阅读:108来源:国知局
用于提供空闲轮询循环的有效检测的技术的制作方法

在由计算装置执行的典型分组处理应用中,多核处理器的核可以执行轮询模式驱动,该驱动使核连续轮询存储器地址(例如,重复读取在存储器中的一位置的描述符数据),等待值改变,这将指示一个或多个项目(例如,分组)已经排队,并且准备好被操作(例如,对于要被操作的新接收的分组,轮询与计算装置的网络接口控制器相关联的队列)。执行轮询模式驱动器的核对计算装置的操作系统表现为被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中的一个或多个)的功率使用的任何装置或电路(例如,asic、协处理器等)。每个核140可以被实施为能够接收指令并基于那些指令执行计算或动作的任何装置或电路。虽然在处理器114中示出了四个核140,但应该理解,在其它实施例中,核140的数量可以不同。

主存储器116可被实施为能够执行本文描述的功能的任何类型的易失性(例如,动态随机存取存储器(dram)等)或非易失性存储器或数据存储装置。易失性存储器可以是需要功率来维持由介质存储的数据的状态的存储介质。易失性存储器的非限制示例可包含各种类型的随机存取存储器(ram),诸如动态随机存取存储器(dram)或静态随机存取存储器(sram)。可用在存储器模块中的一个具体类型的dram是同步动态随机存取存储器(sdram)。在具体实施例中,存储器组件的dram可符合由jedec颁布的标准,诸如对于ddrsdram的jesd79f、对于ddr2sdram的jesd79-2f、对于ddr3sdram的jesd79-3f、对于ddr4sdram的jesd79-4a、对于低功率ddr(lpddr)的jesd209、对于lpddr2的jesd209-2、对于lpddr3的jesd209-3以及对于lpddr4的jesd209-4。此类标准(以及类似标准)可被称为基于ddr的标准,并且实现此类标准的存储装置的通信接口可被称为基于ddr的接口。

在一个实施例中,存储器装置是块可寻址存储器装置,诸如基于nand或nor技术的存储器装置。存储器装置还可包含三维交叉点存储器装置(例如英特尔3dxpointtm存储器)或其它字节可寻址原地写非易失性存储器装置。在一个实施例中,存储器装置可以是或者可包含使用硫属玻璃的存储器装置、多阈值等级nand闪存、nor闪存、单级或多级相变存储器(pcm)、阻性存储器、纳米线存储器、铁电晶体管随机存取存储器(fetram)、反铁电存储器、结合了忆阻器技术的磁阻随机存取存储器(mram)存储器、包含金属氧化物基、氧空缺基和导电桥随机存取存储器(cb-ram)的阻性存储器或者自旋转移扭矩(stt)-mram、基于电子自旋磁结存储器的装置、基于磁遂穿结(mtj)的装置、基于dw(畴壁)和sot(自旋轨道转移)的装置、基于晶闸管的存储器装置或者上面任何的组合或者其它存储器。存储器装置可指的是管芯本身和/或封装的存储器产品。

在一些实施例中,3d交叉点存储器(例如英特尔3dxpointtm存储器)可包括无晶体管可堆叠交叉点架构,其中存储器单元位于字线和位线的交点处,并且单独可寻址,并且其中位存储基于体电阻的改变。在一些实施例中,所有或部分主存储器116可被集成到处理器114中。在操作中,主存储器116可存储在操作期间使用的各种软件和数据,诸如应用、程序、库和驱动器。在说明性实施例中,存储器116定义一个或多个队列150(例如,队列152、154),每个队列可以被实施为在一个或多个存储器地址可访问的并且能够存储要由其中计算装置110的核140中的一个或多个和/或其它组件对其操作的数据集(例如,分组)的存储器的集合。例如,队列152可以暂时存储由nic122接收的分组(例如,通过网络170从客户端装置160或从另一个源),并且队列154可以暂时存储要由nic122发送(例如,通过网络170)的分组。

计算引擎112经由i/o子系统118可通信地耦合到计算装置110的其它组件,i/o子系统118可被实施为促进关于计算引擎112(例如关于处理器114和/或存储器116)以及计算装置110的其它组件的输入/输出操作的电路和/或组件。例如,i/o子系统118可被实施为或以别的方式包含存储器控制器集线器、输入/输出控制集线器、集成传感器集线器、固件装置、通信链路(例如,点对点链路、总线链路、导线、电缆、光导、印刷电路板迹线等)和/或促进输入/输出操作的其它组件和子系统。在一些实施例中,i/o子系统118可形成片上系统(soc)的一部分,并连同处理器114、主存储器116和计算装置110的其它组件中的一个或多个一起结合到计算引擎112中。

通信电路120可被实施为能够使通过网络170在计算装置110和另一计算装置(例如客户端装置160等)之间的通信能实现的任何通信电路、装置或它们的集合。通信电路120可配置成使用任何一种或多种通信技术(例如有线或无线通信)以及关联的协议(例如以太网、蓝牙®、wi-fi®、wimax等)来实现此类通信。

说明性通信电路120包含网络接口控制器(nic)122,其也可被称为主机组构接口(hfi)。nic122可被实施为一个或多个内插板、子卡、网络接口卡、控制器芯片、芯片集或可由计算装置110用于与另一计算装置(例如客户端装置160等)连接的其它装置。在一些实施例中,nic122可被实施为包含一个或多个处理器的片上系统(soc)的一部分,或者被包含在也含有一个或多个处理器的多芯片封装上。在一些实施例中,nic122可包含本地处理器(未示出)和/或本地存储器(未示出),它们两者对nci122都是本地的。在此类实施例中,nic122的本地处理器可能能够执行本文描述的计算引擎112的功能中的一个或多个。附加地或备选地,在此类实施例中,nic122的本地存储器可在板级、插座级、芯片级和/或其它级被集成到计算装置110的一个或多个组件中。

一个或多个说明性数据存储装置124可被实施为配置用于数据的短期存储或长期存储的任何类型的装置,诸如例如存储器装置和电路、存储器卡、硬盘驱动器、固态驱动器或者其它数据存储装置。每个数据存储装置124可包含存储用于数据存储装置124的数据和固件码的系统分区。每个数据存储装置124还可包含存储用于操作系统的可执行项和数据文件的一个或多个操作系统分区。

客户端装置160可以具有与在图1中参考计算装置110描述的组件类似的组件。计算装置110的那些组件的描述同样适用于客户端装置的组件的描述,并且为了描述的清晰起见本文不再重复。另外,应该认识到,计算装置110和客户端装置160中的任一个可以包含通常在计算装置中发现的其它组件、子组件和装置,它们未在上面参考计算装置110进行讨论,并且为了描述的清晰起见在本文未讨论。

如上面所描述的,计算装置110和客户端装置160说明性地经由网络170通信,网络170可被实施为任何类型的有线或无线通信网络,包含全球网络(例如因特网)、局域网(lan)或广域网(wan)、蜂窝网络(例如全球移动通信系统(gsm)、3g、长期演进(lte)、全球微波接入互操作性(wimax)等)、数字订户线(dsl)网络、电缆网络(例如同轴网络、光纤网络等)或者它们的任何组合。

现在参考图2,计算装置110在操作中可以执行用于有效地检测空闲轮询循环的方法200。方法200开始于框202,其中计算装置110确定是否检测到空闲轮询循环。在说明性实施例中,计算装置110可以确定处理器114的核140(例如,核142)是否已经被指配为对于指示状况改变的数据连续轮询存储器地址(例如,对于状况改变,诸如一个或多个接收的分组的存在,连续轮询队列,诸如队列152),并且如果是,则确定执行方法200。在其它实施例中,计算装置110可以基于其它因素进行确定。无论如何,响应于确定检测到空闲轮询循环,方法200前进到框204,其中计算装置110确定核140(例如,核142)在预定义时间段(例如,10微秒)上的不成功操作与成功操作的比率,核140被指配为对于状况改变连续轮询存储器地址。在这样做时,并且如在框206中所指示的,在说明性实施例中,计算装置110确定核140(例如,核142)的不成功操作与成功操作的比率,核140被指配为对于新接收到的分组连续轮询与nic122相关联的队列150(例如,队列152)。在确定比率时,计算装置110可以确定由虚拟机利用的核140(例如,核142)的不成功操作与成功操作的比率,如在框208中所指示的。如在框210中所指示的,在说明性实施例中,计算装置110用pmu130监视不成功操作与成功操作的发生。另外,并且如在框212中所指示的,计算装置110可以确定与用于轮询存储器地址的核142不同的核(例如,核144)的比率(例如,基于由pmu130监视的发生)。在确定不成功操作与成功操作的比率时,计算装置110可以确定不成功推测操作与成功推测操作的比率,如在框214中所指示的。例如,并且如在框216中所指示的,计算装置110可以确定分支未中(例如,不正确地预测核142将执行特定分支操作)与分支命中(例如,正确地预测核142将执行分支操作)的比率。计算装置110可以附加地或备选地确定高速缓存未中与高速缓存命中的比率,如在框218中所指示的。

随后,在框220中,计算装置110可以确定指示指配的核142的操作改变的参考比率。例如,计算装置110可以从配置文件或另一个源读取预定义比率,预定义比率如果被满足,则指示核142不再轮询空队列152,并且相反已经标识了队列152中的分组,并且对那些分组执行一个或多个操作。在说明性实施例中,与在核142重复轮询队列152并且对任何分组不起作用时相比,要对分组执行的操作的多样性和复杂性导致更多的分支误预测和/或高速缓存未中。在一些实施例中,计算装置110可以从已知与空队列相关联的时间标识所确定比率(例如,来自框204)(例如,从当计算装置110尚未开始接收分组的时间获得的所确定比率),将所确定比率增大预定义量,并将该调整的所确定比率指定为阈值比率(例如,大于或等于该调整的所确定比率的任何比率指示已经接收到一个或多个分组)。在一些实施例中,计算装置110可以为核142的多种类型的操作中的每种确定单独的参考比率,如在框222中所指示的。例如,并且如在框224中所指示的,计算装置110可以确定对于分支未中与分支命中的参考比率,和/或可以确定对于高速缓存未中与高速缓存命中的参考比率,如在框226中所指示的。之后,方法200前进到图3的框228,其中计算装置110确定所确定比率是否满足参考比率。

现在参考图3,在确定所确定比率(例如,来自框204)是否满足参考比率时,计算装置110可以确定所确定比率是否等于或大于参考比率,如在框230中所指示的。在这样做时,如在框232中所指示的,计算装置110可以确定所确定比率是否等于或大于0.01%。在一些实施例中,计算装置110可以确定多个所确定比率是否满足对应的参考比率(例如,分支未中与分支命中的所确定比率相较于分支未中与分支命中的参考比率,并且高速缓存未中与高速缓存命中的所确定比率相较于高速缓存未中与高速缓存命中的参考比率),如在框234中所指示的。在说明性实施例中,计算装置110还确定所确定比率超过参考比率的量,如在框236中所指示的。在一些实施例中,计算装置110可以将来自框228的指示确定的数据提供给另一计算装置(例如,用于性能监视和/或功率管理目的的数据中心中的编排器服务器)。在框238中,计算装置110确定是否满足参考比率(例如,所确定比率是否等于或大于参考比率)。在一些实施例中,计算装置110可以确定所确定比率在预定义时间段内是否满足参考比率(例如,以提供滞后)。响应于确定不满足参考比率(例如,分支未中与分支命中的比率小于0.01%),方法200前进到框240,其中计算装置110在低功率模式中操作或继续操作指配的核142。在这样做时,计算装置110可以利用功率控制单元(pcu)132减小指配的核142的功率使用,如在框242中所指示的。如在框244中所指示的,在低功率模式中操作指配的核142时,计算装置110可以减小指配的核142的频率(例如,时钟频率),如在框244中所指示的,和/或减小指配的核142的电压,如在框246中所指示的。随后,方法200循环回到图3的框202,其中计算装置110确定是否继续检测空闲循环,并且再次确定核142的不成功操作与成功操作的比率。

参考回到图3的框238,如果计算装置110转而确定满足参考比率(例如,所确定比率大于或等于参考比率),则方法200前进到图4的框248,其中计算装置110在相对高的功率模式(例如,比低功率模式高)中操作指配的核142。在这样做时,计算装置110可以使用功率控制单元(pcu)132来增大指配的核142的功率使用,如在框250中所指示的。如在框252中所指示的,计算装置110可以增大指配的核142的频率。此外,计算装置110可以增大指配的核142的电压,如在框254中所指示的。在说明性实施例中,计算装置110根据所确定比率超过参考比率的量来增大核142的功率使用,如在框256中所指示的。例如,并且如在框258中所指示的,计算装置110可以以与所确定阈值超过(例如,大于)参考比率的量的线性关系(例如,线性函数)来增大功率使用。随后,方法200循环回到框202,其中计算装置110确定是否继续检测空闲循环,并且再次确定核142的不成功操作与成功操作的比率。

现在参考图5,示出了处理器使用、分支命中和未中比率以及业务速率(例如,分组被放置在队列152中的速率)之间的关系500。在说明性实施例中,处理器使用看起来恒定在100%(例如,对计算装置110的操作系统而言),而业务的实际速率在相同时间段期间从0%变化到100%。然而,不像处理器使用数据,分支未中与分支命中的比率随着业务增大而增大。像这样,并且如上所述,通过根据核142的不成功操作与成功操作(例如,分支未中与分支命中)的比率选择性地调整核142的功率使用,而不是根据所报告的处理器使用来控制功率,计算装置110可以准确且有效地确定核142的功率需求,并且相应地缩放核142的功率使用,由此在低业务的时间段内节省功率。

现在参考图6,状态图600图示了方法200的实施例。如所示,只要分支未中与分支命中的比率小于0.01%,计算装置110就在低频节能状态下操作核142。否则,计算装置110在高频性能模式中操作核142,以改进核142对入局分组操作(例如,以降低缓冲器溢出和分组丢失的可能性)的能力。虽然上述特定示例属于检测由nic接收的分组,但是应当理解,计算装置110可以附加地或备选地检测和响应对于其它类型的队列和接口的状况改变(例如,由协处理器或加速器装置产生的要由处理器的一个或多个核对其操作的数据、用除了nic122以外的另一个i/o装置接收的数据等)。

本发明还提供如下技术方案:

技术方案1.一种计算装置,包括:

计算引擎,所述计算引擎包含多个核和存储器;

其中所述计算引擎用于:

确定在所述多个核中的核的预定义时间段期间不成功操作与成功操作的比率,其中所述核被指配为在所述预定义时间段内对于状况改变连续轮询存储器地址;

确定所确定的比率是否满足不成功操作与成功操作的参考比率,其中所述参考比率指示指配的核的操作改变;以及

根据所述确定的比率是否满足所述参考比率来选择性地增大或减小所述指配的核的功率使用。

技术方案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.如技术方案1所述的计算装置,其中确定在预定义时间段期间不成功操作与成功操作的比率包括:确定在10微秒的预定义时间段期间的所述比率。

技术方案14.如技术方案1所述的计算装置,其中计算引擎要确定预定义时段期间不成功操作与成功操作的不同类型的多个比率,并且将每个确定的比率与对应的参考比率相比较以确定是选择性地增大还是减小所述指配的核的所述功率使用。

技术方案15.一个或多个机器可读存储介质,所述一个或多个机器可读存储介质包括存储在一个或多个机器可读存储介质上的多个指令,所述指令响应于被执行而使计算装置:

确定在所述计算装置的多个核中的核的预定义时间段期间不成功操作与成功操作的比率,其中所述核被指配为在所述预定义时间段内对于状况改变连续轮询存储器地址;

确定所确定的比率是否满足不成功操作与成功操作的参考比率,其中所述参考比率指示指配的核的操作改变;以及

根据所述确定的比率是否满足所述参考比率来选择性地增大或减小所述指配的核的功率使用。

技术方案16.如技术方案15所述的一个或多个机器可读存储介质,其中确定不成功操作与成功操作的所述比率包括:确定不成功推测操作与成功推测操作的所述比率。

技术方案17.如技术方案15所述的一个或多个机器可读存储介质,其中确定不成功操作与成功操作的所述比率包括:确定分支未中与分支命中的所述比率。

技术方案18.如技术方案15所述的一个或多个机器可读存储介质,其中确定不成功操作与成功操作的所述比率包括:确定高速缓存未中与高速缓存命中的所述比率。

技术方案19.如技术方案15所述的一个或多个机器可读存储介质,其中所述计算装置进一步包括性能监视单元,并且其中确定不成功操作与成功操作的所述比率包括:利用所述性能监视单元监视不成功操作和成功操作的发生。

技术方案20.如技术方案15所述的一个或多个机器可读存储介质,其中确定所述指配的核的不成功操作与成功操作的所述比率包括:确定由虚拟机利用的核的不成功操作与成功操作的所述比率。

技术方案21.如技术方案15所述的一个或多个机器可读存储介质,其中确定所述确定的比率是否满足不成功操作与成功操作的参考比率包括:确定所述确定的比率超过所述参考比率的量,并且其中选择性地增大或减小所述指配的核的所述功率使用包括:根据所述确定的比率超过所述参考比率的所述量来增大所述指配的核的所述功率使用。

技术方案22.如技术方案15所述的一个或多个机器可读存储介质,其中根据所述确定的比率超过所述参考比率的所述量来增大所述指配的核的所述功率使用包括:以与所述确定的比率超过所述参考比率的所述量的线性关系来增大所述指配的核的所述功率使用。

技术方案23.如技术方案15所述的一个或多个机器可读存储介质,其中确定所述确定的比率是否满足所述参考比率包括:确定所述确定的比率是否大于或等于0.01%。

技术方案24.一种计算装置,所述计算装置包括:

用于确定在所述计算装置的多个核中的核的预定义时间段期间不成功操作与成功操作的比率的电路,其中所述核被指配为在所述预定义时间段内对于状况改变连续轮询存储器地址;

用于确定所确定的比率是否满足不成功操作与成功操作的参考比率的电路,其中所述参考比率指示指配的核的操作改变;以及

用于根据所述确定的比率是否满足所述参考比率来选择性地增大或减小所述指配的核的功率使用的部件。

技术方案25.一种方法,所述方法包括:

由计算装置确定在所述计算装置的多个核中的核的预定义时间段期间不成功操作与成功操作的比率的电路,其中所述核被指配为在所述预定义时间段内对于状况改变连续轮询存储器地址;

由所述计算装置确定所确定的比率是否满足不成功操作与成功操作的参考比率,其中所述参考比率指示指配的核的操作改变;以及

由所述计算装置根据所述确定的比率是否满足所述参考比率来选择性地增大或减小所述指配的核的功率使用。

技术方案26如技术方案25所述的方法,其中确定不成功操作与成功操作的所述比率包括:确定不成功推测操作与成功推测操作的所述比率。

技术方案27如技术方案25所述的方法,其中确定不成功操作与成功操作的所述比率包括:确定分支未中与分支命中的所述比率。

技术方案28如技术方案25所述的方法,其中确定不成功操作与成功操作的所述比率包括:确定高速缓存未中与高速缓存命中的所述比率。

示例

下面提供了本文公开的技术的说明性示例。技术的实施例可以包含下面所描述的示例中的任一个或多个以及它们的任何组合。

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

示例2包含示例1的主题,并且进一步包含与存储器中的队列相关联的网络接口控制器;并且其中确定不成功操作与成功操作的比率包括:确定在所述多个核中被指配为对于新接收的分组连续轮询所述队列的核的预定义时间段期间不成功操作与成功操作的比率。

示例3包含示例1和2中任一示例的主题,并且其中确定不成功操作与成功操作的所述比率包括:确定不成功推测操作与成功推测操作的比率。

示例4包含示例1-3中任一示例的主题,并且其中确定不成功操作与成功操作的所述比率包括:确定分支未中与分支命中的比率。

示例5包含示例1-4中任一示例的主题,并且其中确定不成功操作与成功操作的所述比率包括:确定高速缓存未中与高速缓存命中的比率。

示例6包含示例1-5中任一示例的主题,并且其中所述计算引擎进一步包括性能监视单元,并且其中确定不成功操作与成功操作的所述比率包括:用所述性能监视单元监视不成功操作和成功操作的发生。

示例7包含示例1-6中任一示例的主题,并且其中确定所述指配的核的不成功操作与成功操作的所述比率包括:确定由虚拟机利用的核的不成功操作与成功操作的比率。

示例8包含示例1-7中任一示例的主题,并且其中确定所述确定的比率是否满足不成功操作与成功操作的参考比率包括:确定所述确定的比率超过所述参考比率的量,并且其中选择性地增大或减小所述指配的核的所述功率使用包括:根据所述确定的比率超过所述参考比率的所述量增大所述指配的核的所述功率使用。

示例9包含示例1-8中任一示例的主题,并且其中根据所述确定的比率超过所述参考比率的所述量来增大所述指配的核的所述功率使用包括:以与所述确定的比率超过所述参考比率的所述量的线性关系来增大所述指配的核的所述功率使用。

示例10包含示例1-9中任一示例的主题,并且其中确定所述确定的比率是否满足所述参考比率包括:确定所述确定的比率是否大于或等于0.01%。

示例11包含示例1-10中任一示例的主题,并且其中选择性地增大或减小所述指配的核的所述功率使用包括:减小所述指配的核的频率或电压中的至少一个。

示例12包含示例1-11中任一示例的主题,并且其中选择性地增大或减小所述指配的核的所述功率使用包括:增大所述指配的核的频率或电压中的至少一个。

示例13包含示例1-12中任一示例的主题,并且其中确定在预定义时间段期间不成功操作与成功操作的比率包括:确定在10微秒的预定义时间段期间的比率。

示例14包含示例1-13中任一示例的主题,并且其中计算引擎要确定预定义时段上不同类型的不成功操作与成功操作的多个比率,并且将每个确定的比率与对应的参考比率相比较以确定是选择性地增大还是减小指配的核的功率使用。

示例15包含一个或多个机器可读存储介质,所述介质包括其上存储的多个指令,所述指令响应于被执行而使计算装置确定在计算装置的多个核中的核的预定义时间段期间不成功操作与成功操作的比率,其中所述核被指配为在预定义时间段内对于状况改变连续轮询存储器地址;确定所确定的比率是否满足不成功操作与成功操作的参考比率,其中所述参考比率指示指配的核的操作改变;以及根据所确定的比率是否满足所述参考比率来选择性地增大或减小所述指配的核的功率使用。

示例16包含示例15的主题,并且其中确定不成功操作与成功操作的所述比率包括:确定不成功推测操作与成功推测操作的比率。

示例17包含示例15和16中任一示例的主题,并且其中确定不成功操作与成功操作的所述比率包括:确定分支未中与分支命中的比率。

示例18包含示例15-17中任一示例的主题,并且其中确定不成功操作与成功操作的所述比率包括:确定高速缓存未中与高速缓存命中的比率。

示例19包含示例15-18中任一示例的主题,并且其中所述计算装置进一步包括性能监视单元,并且其中确定不成功操作与成功操作的所述比率包括:利用所述性能监视单元监视不成功操作和成功操作的发生。

示例20包含示例15-19中任一示例的主题,并且其中确定所述指配的核的不成功操作与成功操作的所述比率包括:确定由虚拟机利用的核的不成功操作与成功操作的比率。

示例21包含示例15-20中任一示例的主题,并且其中确定所述确定的比率是否满足不成功操作与成功操作的参考比率包括:确定所述确定的比率超过所述参考比率的量,并且其中选择性地增大或减小所述指配的核的所述功率使用包括:根据所述确定的比率超过所述参考比率的所述量增大所述指配的核的所述功率使用。

示例22包含示例15-21中任一示例的主题,并且其中根据所述确定的比率超过所述参考比率的所述量来增大所述指配的核的所述功率使用包括:以与所述确定的比率超过所述参考比率的所述量的线性关系来增大所述指配的核的所述功率使用。

示例23包含示例15-22中任一示例的主题,并且其中确定所述确定的比率是否满足所述参考比率包括:确定所述确定的比率是否大于或等于0.01%。

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

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

示例26包含示例25的主题,并且其中确定不成功操作与成功操作的所述比率包括:确定不成功推测操作与成功推测操作的比率。

示例27包含示例25和26中任一示例的主题,并且其中确定不成功操作与成功操作的所述比率包括:确定分支未中与分支命中的比率。

示例28包含示例25-27中任一示例的主题,并且其中确定不成功操作与成功操作的所述比率包括:确定高速缓存未中与高速缓存命中的比率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1