CN104246653A - 固定频率处理单元操作的功耗最小化 - Google Patents

固定频率处理单元操作的功耗最小化 Download PDF

Info

Publication number
CN104246653A
CN104246653A CN201380019054.6A CN201380019054A CN104246653A CN 104246653 A CN104246653 A CN 104246653A CN 201380019054 A CN201380019054 A CN 201380019054A CN 104246653 A CN104246653 A CN 104246653A
Authority
CN
China
Prior art keywords
processing unit
voltage
frequency processing
fixed frequency
response
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201380019054.6A
Other languages
English (en)
Other versions
CN104246653B (zh
Inventor
M·S·艾伦-韦尔
A·J·德拉克
黄伟
M·S·弗洛伊德
闻华君
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN104246653A publication Critical patent/CN104246653A/zh
Application granted granted Critical
Publication of CN104246653B publication Critical patent/CN104246653B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Control Of Electrical Variables (AREA)

Abstract

提供了一种用于使固定频率处理单元的操作的功耗最小化的机制。对时间窗口中向固定频率处理单元进行节流的时隙的数量进行计数。将进行节流的时隙的数量除以时间窗口内的时隙总数,从而产生性能损失(PLOSS)值。确定与固定频率处理单元相关联的(PLOSS)值是否大于允许性能损失(APLOSS)值。响应于PLOSS值小于或等于APLOSS值,发起供应给固定频率处理单元的电压的降低。

Description

固定频率处理单元操作的功耗最小化
技术领域
本发明通常涉及改进的数据处理设备和方法,并且更具体地涉及用于使固定频率处理单元操作的功耗最小化的机制。
背景技术
时常地,中央处理单元(CPU)设计聚焦于下述中的一个或多个:数据通路、控制单元、存储器元件、时钟电路、PAD收发器电路、逻辑门单元库等。为高性能市场设计的CPU可能需要针对这些项目中的每一个的定制设计来实现所需的频率、功耗、芯片面积目标等。因此,CPU设计项目通常包括诸如下述的主要任务:程序员可见的指令集架构,架构研究和性能建模,高级合成或逻辑实现,速度关键组件的电路设计,逻辑合成或逻辑门级设计,芯片定时分析以确认所有逻辑和电路将以指定的工作频率运行,物理设计,以及其他设计规范。
发明内容
技术问题
特定于芯片定时的是标称芯片频率,其是基于常常具有大保护带的最差情况的拐角(corner)而选择的。最差情况的拐角是指芯片内的所有最坏情况条件,诸如最高可能的温度、最差可能的工作负荷等。大保护带指的是针对给定操作频率而增加的额外电压、或者针对给定电压的频率降低,以便从在某个选定的温度和工作负荷条件下已经证明或预测会发生芯片定时故障的操作点移开。然而,当前的技术局限于对于具有完全同步的定时网格(clocking grid)的芯片减小这些大保护带。此外,对于具有异步定时网格的芯片,虽然可以使用动态频率调整来减小保护带,但是当系统总线频率等于核心频率(即,固定频率)时,可能无法做出这些调整。
问题的解决方案
在一个说明性实施例中,提供了一种在数据处理系统中用于使固定频率处理单元的操作的功耗最小化的方法。该说明性实施例对时间窗口中向固定频率处理单元进行节流的时隙的数量进行计数。该说明性实施例将进行节流的时隙数量除以时间窗口内的时隙总数,从而产生性能损失(PLOSS)值。该说明性实施例确定与固定频率处理单元相关联的(PLOSS)值是否大于允许性能损失(APLOSS)值。该说明性实施例响应于PLOSS值小于或等于APLOSS值,而发起供应给固定频率处理单元的电压的降低。
在其它说明性实施例中,提供了一种计算机程序产品,其包括具有计算机可读程序的计算机可用或可读介质。所述计算机可读程序在计算设备上被执行时使该计算设备执行上面关于方法说明性实施例所概述的操作中的各种操作以及其组合。
在又一说明性实施例中,提供了一种系统/装置。该系统/装置可以包括一个或多个处理器以及与该一个或多个处理器耦合的存储器。该存储器可以包括指令,所述指令在由一个或多个处理器执行时使一个或多个处理器执行上面关于方法说明性实施例所概述的操作中的各种操作以及其组合。
本发明的这些及其它特征和优点将在本发明的示例实施例的以下详细描述中进行描述,或者考虑到本发明的示例实施例的以下详细描述,本发明的这些及其它特征和优点对于本领域普通技术人员而言将变得明显。
附图说明
当结合附图阅读时,通过参照说明性实施例的以下详细描述将最佳地理解本发明及其优选使用模式以及另外的目标和优点。
图1是说明性实施例的各方面可以在其中实现的示例数据处理系统的框图;
图2示出根据说明性实施例的用于使固定频率处理单元操作的功耗最小化的监视和反馈机构的功能框图;并且
图3示出由根据说明性实施例的用于使固定频率处理单元操作的功耗最小化的监视和反馈机构执行的操作的流程图。
具体实施方式
对于以固定频率运行的系统,电压从来未被适配成使运行时的功耗最小化。说明性实施例提供了固定频率处理单元操作的功耗最小化。可以改变频率的先前的方法已被应用,使电压和频率按照彼此之间的关系或者按照与芯片上的负荷的关系而移动。该先前的解决方案的缺陷在于:当以固定频率运行时,电压不能被适配成节约能量并降低功耗。
大多数计算机系统提供标称操作模式,其是大多数消费者运行他们的机器的开箱即用的正常操作模式。一些系统使用完全同步的处理器互连构造,而没有可以允许孤立的降频的异步边界。该系统中的所有处理器核心和逻辑必须在同步锁步(synchronous lock step)中运行。这样的同步设计的性能优势是不会由于异步边界而损失性能。然而,功耗缺陷是不能够调整电压,除非也跨越整个系统调整频率。根据选择成覆盖最差情况的工作负荷、温度、di/dt噪声以及寿命耗损(例如负偏压温度不稳定性)特征的标称固定电压,说明性实施例将导致芯片功耗的百分之5到10的降低。所节省的芯片功耗的百分比降低可以取决于消费者环境中的上述变量的当前状态。
因此,可以在许多不同类型的数据处理环境中利用各说明性实施例。为了给各说明性实施例的具体元件和功能的描述提供上下文,下文提供图1作为说明性实施例的各方面可以在其中实现的示例环境。应该理解的是,图1仅仅是示例,并且并非旨在断言或暗示关于本发明的各方面或实施例可以在其中实现的环境的任何限制。可以在不脱离本发明的精神和范围的情况下对所描绘的环境作出许多修改。
图1是说明性实施例的各方面可以在其中实现的示例数据处理系统的框图。数据处理系统100是计算机的示例,其中实现本发明的说明性实施例的处理的计算机可用代码或指令可以位于所述计算机中。
在所描绘的示例中,数据处理系统100采用中心(hub)架构,其包括北桥及存储器控制器中心(NB/MCH)102以及南桥及输入/输出(I/O)控制器中心(SB/ICH)104。处理单元106、主存储器108和图形处理器110连接到NB/MCH102。图形处理器110可以通过加速图形端口(AGP)连接到NB/MCH102。
在所描绘的示例中,局域网(LAN)适配器112连接到SB/ICH104。音频适配器116、键盘和鼠标适配器120、调制解调器122、只读存储器(ROM)124、硬盘驱动器(HDD)126、CD-ROM驱动器130、通用串行总线(USB)端口及其它通信端口132、以及PCI/PCIe设备134通过总线138和总线140连接到SB/ICH104。PCI/PCIe设备可以包括例如以太网适配器、插入卡以及用于笔记本计算机的PC卡。PCI使用卡总线控制器,而PCIe则不使用。ROM124可以例如是快闪基本输入/输出系统(BIOS)。
HDD126和CD-ROM驱动器130通过总线140连接到SB/ICH104。HDD126和CD-ROM驱动器130可以使用例如电子集成驱动器(IDE)或串行高级技术附件(SATA)接口。超级I/O(SIO)设备136可以连接到SB/ICH104。
操作系统在处理单元106上运行。操作系统协调并提供对图1中的数据处理系统100内的各种部件的控制。作为客户端,操作系统可以是市售的操作系统,诸如面向对象的编程系统(诸如JavaTM编程系统)可以与操作系统协同运行,并提供从在数据处理系统100上执行的JavaTM程序或应用对操作系统的调用。
作为服务器,数据处理系统100可以是例如系统计算机系统,其运行高级交互执行()操作系统或操作系统。数据处理系统100可以是在处理单元106中包括多个处理器的对称多处理器(SMP)系统。可替换地,可以采用单处理器系统。
用于操作系统、面向对象的编程系统以及应用或程序的指令位于存储设备(诸如HDD126)上,并且可以被加载到主存储器108中以便由处理单元106执行。本发明的说明性实施例的过程可以由处理单元106使用计算机可用程序代码执行,所述计算机可用程序代码可以位于存储器(诸如主存储器108、ROM124)中,或者位于例如一个或多个外围设备126和130中。
总线系统(诸如图1所示的总线138或总线140)可以由一个或多个总线组成。当然,总线系统可以使用任何类型的通信构造或架构来实现,所述通信构造或架构在附接至该构造或架构的不同部件或设备之间提供数据的传递。通信单元(诸如图1中的调制解调器122或网络适配器112)可以包括一个或多个用来发送和接收数据的设备。存储器可以是例如主存储器108、ROM124或者诸如图1的NB/MCH102中可见的高速缓存。
本领域普通技术人员将认识到,图1中的硬件可以取决于实现方案而变化。除了图1中所描绘的硬件之外、或者取代这些硬件,可以使用其它的内部硬件或外围设备(诸如闪存存储器、等效的非易失性存储器、或光盘驱动器等等)。此外,在不脱离本发明的精神和范围的情况下,各说明性实施例的过程可以应用于除了前面提到的SMP系统以外的多处理器数据处理系统。
此外,数据处理系统100可以采取多种不同的数据处理系统(包括客户端计算设备、服务器计算设备、平板计算机、膝上型计算机、电话或其它通信设备、个人数字助理(PDA)等等)中任何一种的形式。在一些说明性示例中,数据处理系统100可以是便携式计算设备,其配置有闪存存储器以提供例如用于存储操作系统文件和/或用户生成的数据的非易失性存储器。基本上,数据处理系统100可以是没有任何架构限制的任何已知的或以后开发的数据处理系统。
再一次,说明性实施例提供了固定频率处理单元操作的功耗最小化。说明性实施例引入节流(throttling)机制,其可以响应于关键路径监视器(CPM)和输出温度计代码,而在10纳秒内作出响应。CPM即时地识别电压网格(voltage grid)内的许多点处的时序松弛(slack)或时序缺乏。当温度计输出指示芯片接近于时序故障时,输出温度计代码在必要时提供核心节流。最后,内部或外部控制机构执行监视节流计数器的算法,并且以如下方式调整电压:使被允许的节流量最小化至没有或非常少,同时还使无时序故障地运行处理单元所需的电压最小化为针对处理单元的当前操作状况的最小能耗水平。
图2示出根据说明性实施例的用于使固定频率处理单元操作的功耗最小化的监视和反馈机构的功能框图。数据处理系统200包括被耦合到处理单元204的控制机构202,所述处理单元204是集成电路芯片201内的固定频率处理单元。虽然关于单个处理单元204描述说明性实施例,但是取决于集成电路芯片201上的特定实现,处理单元204可以是一组一个或多个处理器和/或可以是多核处理器。此外,处理器单元204可以使用一个或多个异构处理器系统来实现,在所述异构处理器系统中,主处理器与辅助处理器一起存在于单个芯片(诸如集成电路芯片201)上。作为另一个说明性示例,处理器单元204可以是对称多处理器系统,其在集成电路芯片201上包含多个相同类型的处理器。
数据处理系统200还包括节流计206,其对预定时间窗口内的进行节流的时隙数量进行计数。也就是说,在说明性实施例中,存在预定的时间窗口并且该预定的时间窗口被划分成时隙。因此,在具有10纳秒的示例性时隙的1毫秒的示例性时间窗口内,存在100,000个10纳秒时隙。节流计206针对该时间窗口计数那些10纳秒时隙中有多少是主动进行节流的时隙。可替换地,预定时间窗口可以是预定数量的周期,并且时隙可以是预定数量的周期的等分子集。
在每个预定时间周期的结束时,节流计206可以主动地向控制机构202中的性能损失逻辑208发送节流计206内的计数器的值,或者可替换地,性能损失逻辑208可以在预定时间窗口的结束时读取节流计206内的计数器的值。性能损失逻辑208使用该值来确定数据处理系统200在节流上花费的时间的百分比。为了确定该百分比,性能损失逻辑208把从节流计206获得的值(即,在这个示例中为50,000)除以预定时间窗口内的预定时隙的数量,该数量根据上面的示例将会是100,000个10纳秒时隙。因此,性能损失逻辑208输出在这个示例中将会是50%的节流百分比作为性能损失(PLOSS)值210。
控制机构202内的电压控制逻辑212使用PLOSS值210连同允许性能损失(APLOSS)值214来控制处理单元204的节流,同时通过动态调整供应给处理单元204的电压来最小化工作电压。APLOSS值214可以是预先指定的可接受的性能损失值,其包括可忽略的性能损失。可忽略的性能损失是不可察觉的损失;然而,在说明性实施例中,百分之一或更少的性能损失是无法检测到的,并且因此被认为是可忽略的。例如,如果电压控制逻辑212确定PLOSS值210大于APLOSS值214,则电压控制逻辑212可以发送信号以提高供应给处理单元204的电压。
另外,如果将要提高电压,则在发送信号以提高给处理单元204的电压之前,电压控制逻辑212可以确定供应电压(Vdd)是否小于标称电压(Vnom)加电压保护带,该电压保护带通常是供应电压(Vdd)的3%。如果电压控制逻辑212确定供应电压(Vdd)小于标称电压(Vnom)加电压保护带,则电压控制逻辑212可以发送信号来提高供应给处理单元204的电压。然而,如果电压控制逻辑212确定供应电压(Vdd)大于或等于标称电压(Vnom)加电压保护带,则电压控制逻辑212可以将电压保持在其当前设置。
此外,如果将要提高电压,则在发送信号以提高给处理单元204的电压之前,电压控制逻辑212可以确定是否存在用于做出所期望的电压改变的热余量。即,电压控制逻辑212可以确定与处理单元204相关联的温度是否小于热阈值(例如85摄氏度)。如果电压控制逻辑212确定与处理单元204相关联的温度小于该热阈值,则电压控制逻辑212可以发送信号来提高供应给处理单元204的电压。然而,如果电压控制逻辑212确定与处理单元204相关联的温度大于或等于热阈值,则电压控制逻辑212可以将电压保持在其当前设置。因此,在提高或降低供应给处理单元204的电压之前,电压控制逻辑212可以做出关于工作特征的一个或多个确定。
可替换地,如果电压控制逻辑212确定PLOSS值210小于或等于APLOSS值214,则电压控制逻辑212可以发送信号来降低供应给处理单元204的电压。此外,对供应给处理单元204的电压的任何提高或降低可以基于诸如供应电压(Vdd)的0.5%之类的度量。
此外,为了使得供应给处理单元204的电压在一个时间周期期间不被提高,在接下来的时间周期中被降低,然后在接下来的时间周期中被提高,则电压控制逻辑212可以利用迟滞控制,在该迟滞控制中,在可以实现对先前电压设置的返回之前,必须经过至少一个或多个时间周期。如果电压将被提高或降低,则电压控制逻辑212向电压调节器216发送信号。然后,电压调节器216对供应给处理单元204的电压实现所期望的改变。
基于由控制机构202实现的供应电压改变、以及基于与处理单元204相关联的工作负荷、温度和其他特征,额外且更快的节流措施将被请求以应对其他问题,诸如时序余裕(timing margin)和差错。也就是说,控制机构202基于固定频率处理单元204的性能来实现电压调整。然而,由于电压调节控制回路的性质,这样的电压调整将总是与微秒或更长的时间尺度相关联,诸如在2微秒与4微秒之间。然而,为了应对工作负荷中的突然变化(其可能造成时序余裕差错),数据处理系统200还包括时序余裕电路218,其由监视与处理单元204相关联的特征的检测电路(诸如关键路径监视器(CPM)电路、RAZOR电路等等)组成,其中与处理单元204相关联的特征诸如是工作负荷变化、温度变化和电压变化(例如,不受电压调节器216控制的电压突降、电压高涨,控制机构202不能足够快速响应的工作负荷增加等)。因此,为了避免基于工作负荷变化、温度变化和电压变化(诸如由电压调节器216发出的那些)的时序故障,时序余裕电路218可以在几个纳秒的时间尺度上(诸如在10纳秒和40纳秒之间)进行节流。例如,当电压控制逻辑开始经由电压调节器216降低电压时,当诸如上述那些的问题连同电压变化一起发生时,固定频率处理单元204可能更接近于时序故障。为了避免该时序故障,时序余裕电路218内的检测电路输出信号,该信号使节流控制逻辑220在几纳秒的时间尺度上进行节流。节流控制逻辑220可以通过降低工作负荷(即指令)来进行节流。因此,时序余裕电路218应对这类问题,并且对处理单元204做出快速的节流改变。对于预定时间窗口内的由时序余裕电路218进行节流的任何时隙,节流计206递增其计数器,使操作在该预定时间窗口结束时再次重新开始。该节流可以得到保证,使得检测到时序余裕的损失越多,就进行越极端的节流,从而仅对性能造成保持系统安全所必要的量的损害。
所属领域的技术人员将理解的是,本发明的各个方面可以实施为系统、方法或计算机程序产品。因此,本发明的各个方面可以采取以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或软件和硬件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。此外,本发明的各个方面还可以采取用一个或多个计算机可读介质实施的计算机程序产品的形式,该计算机可读介质上包含有计算机可读程序代码。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线或半导体的系统、装置或器件,或者任意以上的适当组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机软盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件的上下文中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读信号介质可以包括例如在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读程序代码。这种传播的信号可以采用各种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明各方面的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言(诸如Java(TM)、Smalltalk(TM)、C++等),还包括常规的过程式程序设计语言(诸如“C”程序设计语言或类似的程序设计语言)。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
下面参照根据本发明的说明性实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的各方面。应当理解的是,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机程序指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
也可以把这些计算机程序指令存储在计算机可读介质中,这些指令可以使得计算机、其它可编程数据处理装置、或其他设备以特定方式工作,使得存储在计算机可读介质中的指令产生包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品。
计算机程序指令还可以加载到计算机、其它可编程数据处理装置或其他设备上,以使一系列操作步骤在计算机、其它可编程装置或其他设备上被执行以产生计算机实现的过程,使得在计算机或其它可编程装置上执行的指令提供用于实现流程图和/或框图中的一个或多个方框中规定的功能/动作的处理。
图3描绘根据说明性实施例由监视和反馈机构执行用于使固定频率处理单元操作的功耗最小化的操作的流程图。当操作开始时,在预定时间窗口期间或对于指定数量的周期,与处理单元相关联的节流计对向处理单元进行节流的时隙的数量进行计数(步骤302)。一旦该指定的时间窗口已经期满或者指定数量的周期已经得到满足,节流计就向内部或外部控制机构中的性能损失逻辑发送计数器的值,其指示对处理单元进行节流的时隙的数量(步骤304)。性能损失逻辑使用由节流计提供的值来确定数据处理系统在对处理单元进行节流上所花费的时间的百分比(步骤306)。然后,性能损失逻辑将节流百分比作为性能损失(PLOSS)值输出给控制机构内的电压控制逻辑(步骤308)。
电压控制逻辑使用PLOSS值连同允许性能损失(APLOSS)值来控制处理单元的节流,同时通过动态地调整供应给处理单元的电压来最小化工作电压。为了确定是否应该提高、降低供应给处理单元的电压或者将其保持在当前电压,电压控制逻辑确定PLOSS值是否大于APLOSS值(步骤310)。如果在步骤310,电压控制逻辑确定PLOSS值大于APLOSS值,则电压控制逻辑确定供应电压(Vdd)是否小于标称电压(Vnom)加电压保护带,该电压保护带通常是供应电压(Vdd)的3%(步骤312)。如果在步骤312,电压控制逻辑确定供应电压(Vdd)大于或等于标称电压(Vnom)加电压保护带,则电压控制逻辑将电压保持在其当前设置(步骤314)。如果在步骤312,电压控制逻辑确定供应电压(Vdd)小于标称电压(Vnom)加电压保护带,则电压控制逻辑确定与处理单元相关联的温度是否小于热阈值(步骤316)。如果在步骤316,电压控制逻辑确定与处理单元相关联的温度大于或等于热阈值,则电压控制逻辑将电压保持在其当前设置(步骤314),使操作返回到步骤304以等待从节流计进行下一次读取。如果在步骤316,电压控制逻辑确定与处理单元相关联的温度小于热阈值,则电压控制逻辑发送信号来提高供应给处理单元的电压(步骤318)。
如果在步骤310,电压控制逻辑确定PLOSS值小于或等于APLOSS值,则电压控制逻辑发送信号以降低供应给处理单元的电压(步骤320)。从步骤318和320以及在对供应给处理单元的电压做出调整之前,电压控制逻辑可以确定是否已经满足迟滞条件,诸如自从供应给处理单元的电压的上一次改变以来,已经经过一个或多个时间窗口或者已经发生了预先指定数量的周期(步骤322)。如果在步骤322,一个或多个时间周期尚未经过或者没有发生预先指定数量的周期,则电压控制逻辑不发送信号以提高或降低供应给处理单元的电压,并将电压保持在其当前设置(步骤314),使操作返回到步骤304以等待从节流计的下一次读取。如果在步骤322,一个或多个时间窗口已经过去或者已经发生了预先指定数量的周期,则电压控制逻辑向电压调节器发送所生成的信号(步骤324)。然后,电压调节器对供应给处理单元的电压实现所期望的改变(步骤326)。
基于由控制机构实现的供给电压改变、以及基于与处理单元相关联的工作负荷、温度和其他特征,额外和更快的节流措施将被请求以应对其他问题,诸如时序余裕(timing margin)和差错。因此,数据处理系统内的时序余裕电路确定在当前时间周期或预先指定数量的周期期间是否出现了需要进一步节流的问题(步骤328)。如果在步骤328,时序余裕电路确定在当前时间周期或预先指定数量的周期内发生了这样的问题,则时序余裕电路通过经由节流控制逻辑进行节流来应对这类问题,使得对处理单元进行快速节流改变(步骤330),使操作在此后返回到步骤304。如果在步骤328,时序余裕电路确定在当前时间周期或预先指定数量的周期内没有发生问题,则操作简单地返回到步骤304。
附图中的流程图和框图示出根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意的是,在有些替代性实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
因此,说明性实施例提供了用于使固定频率处理单元操作的功耗最小化的机制。说明性实施例引入节流机制,其可以响应于关键路径监视器(CPM)和输出温度计代码而在10纳秒内进行响应。CPM即时地识别电压网格内的许多点处的时序松弛或其缺乏。最后,内部或外部控制机构执行监视新节流计数器的算法,并且以如下方式调整电压:使被允许的节流量最小化至没有或非常少,同时还使无时序故障地运行处理单元所需的电压最小化为针对处理单元的当前操作状况的最小能耗水平。
如上面所指出的,应该认识到,各说明性实施例可以采取以下形式:完全硬件实施例、完全软件实施例、或者既包含硬件元件也包含软件元件的实施例。在一个说明性实施例中,各说明性实施例的机制以软件或程序代码实现,所述软件或程序代码包括但不限于固件、驻留软件、微代码等。
适合于存储和/或执行程序代码的数据处理系统将包括通过系统总线与存储器元件直接或间接耦合的至少一个处理器。存储器元件可以包括在实际执行程序代码期间采用的本地存储器、大容量存储器、以及高速缓存存储器,该高速缓存存储器提供至少一些程序代码的临时存储以便减少在执行期间必须从大容量存储器取回代码的次数。
输入/输出或I/O设备(包括但不限于键盘、显示器、指点设备等)可以与系统直接地耦合,或者通过居间I/O控制器与系统耦合。网络适配器也可以与系统耦合以使数据处理系统能够通过居间的私有或公用网络与其它数据处理系统或者远程打印机或存储设备耦合。调制解调器、线缆调制解调器以及以太网卡仅仅是一些当前可用类型的网络适配器。
本发明的描述已经出于举例说明和描述的目的而被给出,并且并非旨在是无遗漏的或局限于所公开的形式的发明。对本领域普通技术人员来说,许多修改和变化是明显的。实施例被选择并描述是为了最佳地解释本发明的原理、实际应用以及为了使本领域其它普通技术人员能够理解本发明从而获得具有适合于所设想的特定用途的各种修改的各种实施例。

Claims (21)

1.一种在数据处理系统中用于使固定频率处理单元的操作的功耗最小化的方法,所述方法包括:
对时间窗口中向所述固定频率处理单元进行节流的时隙的数量进行计数;
将进行节流的时隙的数量除以所述时间窗口内的时隙总数,从而产生性能损失(PLOSS)值;
确定与所述固定频率处理单元相关联的所述(PLOSS)值是否大于允许性能损失(APLOSS)值;以及
响应于所述PLOSS值小于或等于所述APLOSS值,发起供应给所述固定频率处理单元的电压的降低。
2.如权利要求1所述的方法,还包括:
确定对于所述固定频率处理单元是否存在定时问题;以及
响应于定时问题存在,对所述固定频率处理单元的操作进行节流,其中解决所述定时问题的响应比调整供应给所述固定频率处理单元的电压的响应更快。
3.如权利要求2所述的方法,其中通过时序余裕电路检测所述定时问题。
4.如权利要求1所述的方法,还包括:
响应于所述PLOSS值大于所述APLOSS值,确定与所述固定频率处理单元相关联的供应电压是否小于标称电压加电压保护带所得的结果;以及
响应于所述供应电压大于或等于所述标称电压加所述电压保护带所得的结果,将供应给所述固定频率处理单元的电压保持在当前设置。
5.如权利要求4所述的方法,还包括:
响应于所述供应电压小于所述标称电压加所述电压保护带所得的结果,确定与所述固定频率处理单元相关联的温度是否小于热阈值;以及
响应于所述温度大于或等于所述热阈值,将供应给所述固定频率处理单元的电压保持在当前设置。
6.如权利要求5所述的方法,还包括:
响应于所述温度小于所述热阈值,发起供应给所述固定频率处理单元的电压的提高。
7.如权利要求1所述的方法,还包括:
在调整供应给所述固定频率处理单元的电压之前,确定迟滞条件是否已经得到满足;以及
响应于所述迟滞条件未能得到满足,将供应给所述固定频率处理单元的电压保持在当前设置。
8.如权利要求7所述的方法,其中所述迟滞条件是:自从供应给所述固定频率处理单元的电压的上一次改变以来,是否已经过去预先指定数量的时间窗口。
9.如权利要求7所述的方法,还包括:
响应于所述迟滞条件得到满足,调整供应给所述固定频率处理单元的电压。
10.一种包括计算机可读存储介质的计算机程序产品,所述计算机可读存储介质具有存储在其中的计算机可读程序,其中所述计算机可读程序在计算设备上被执行时使所述计算设备:
对时间窗口中向固定频率处理单元进行节流的时隙的数量进行计数;
将进行节流的时隙的数量除以所述时间窗口内的时隙总数,从而产生性能损失(PLOSS)值;
确定与处理单元相关联的所述(PLOSS)值是否大于允许性能损失(APLOSS)值;以及
响应于所述PLOSS值小于或等于所述APLOSS值,发起供应给所述固定频率处理单元的电压的降低。
11.如权利要求10所述的计算机程序产品,其中所述计算机可读程序还使所述计算设备:
确定对于所述固定频率处理单元是否存在定时问题;以及
响应于定时问题存在,对所述固定频率处理单元的操作进行节流,其中解决所述定时问题的响应比调整供应给所述固定频率处理单元的电压的响应更快。
12.如权利要求11所述的计算机程序产品,其中通过时序余裕电路检测所述定时问题。
13.如权利要求10所述的计算机程序产品,其中所述计算机可读程序还使所述计算设备:
响应于所述PLOSS值大于所述APLOSS值,确定与所述固定频率处理单元相关联的供应电压是否小于标称电压加电压保护带所得的结果;以及
响应于所述供应电压大于或等于所述标称电压加所述电压保护带所得的结果,将供应给所述固定频率处理单元的电压保持在当前设置。
14.如权利要求13所述的计算机程序产品,其中所述计算机可读程序还使所述计算设备:
响应于所述供应电压小于所述标称电压加所述电压保护带所得的结果,确定与所述固定频率处理单元相关联的温度是否小于热阈值;以及
响应于所述温度大于或等于所述热阈值,将供应给所述固定频率处理单元的电压保持在当前设置。
15.如权利要求14所述的计算机程序产品,其中所述计算机可读程序还使所述计算设备:
响应于所述温度小于所述热阈值,发起供应给所述固定频率处理单元的电压的提高。
16.一种设备,包括:
处理器;以及
耦合到所述处理器的存储器,其中所述存储器包括指令,所述指令在被所述处理器执行时使所述处理器:
对时间窗口中向固定频率处理单元进行节流的时隙的数量进行计数;
将进行节流的时隙的数量除以所述时间窗口内的时隙总数,从而产生性能损失(PLOSS)值;
确定与处理单元相关联的所述(PLOSS)值是否大于允许性能损失(APLOSS)值;以及
响应于所述PLOSS值小于或等于所述APLOSS值,发起供应给所述固定频率处理单元的电压的降低。
17.如权利要求16所述的设备,其中所述指令还使所述处理器:
确定对于所述固定频率处理单元是否存在定时问题;以及
响应于定时问题存在,对所述固定频率处理单元的操作进行节流,其中解决所述定时问题的响应比调整供应给所述固定频率处理单元的电压的响应更快。
18.如权利要求17所述的设备,其中通过时序余裕电路检测所述定时问题。
19.如权利要求16所述的设备,其中所述指令还使所述处理器:
响应于所述PLOSS值大于所述APLOSS值,确定与所述固定频率处理单元相关联的供应电压是否小于标称电压加电压保护带所得的结果;以及
响应于所述供应电压大于或等于所述标称电压加所述电压保护带所得的结果,将供应给所述固定频率处理单元的电压保持在当前设置。
20.如权利要求19所述的设备,其中所述指令还使所述处理器:
响应于所述供应电压小于所述标称电压加所述电压保护带所得的结果,确定与所述固定频率处理单元相关联的温度是否小于热阈值;以及
响应于所述温度大于或等于所述热阈值,将供应给所述固定频率处理单元的电压保持在当前设置。
21.如权利要求20所述的设备,其中所述指令还使所述处理器:
响应于所述温度小于所述热阈值,发起供应给所述固定频率处理单元的电压的提高。
CN201380019054.6A 2012-04-10 2013-03-27 用于使固定频率处理单元操作的功耗最小化的方法和设备 Expired - Fee Related CN104246653B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US13/443,301 US8943341B2 (en) 2012-04-10 2012-04-10 Minimizing power consumption for fixed-frequency processing unit operation
US13/443,301 2012-04-10
US13/611,210 US9052905B2 (en) 2012-04-10 2012-09-12 Minimizing power consumption for fixed-frequency processing unit operation
US13/611,210 2012-09-12
PCT/JP2013/002087 WO2013153755A1 (en) 2012-04-10 2013-03-27 Minimizing power consumption for fixed-frequency processing unit operation

Publications (2)

Publication Number Publication Date
CN104246653A true CN104246653A (zh) 2014-12-24
CN104246653B CN104246653B (zh) 2016-12-21

Family

ID=49293267

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380019054.6A Expired - Fee Related CN104246653B (zh) 2012-04-10 2013-03-27 用于使固定频率处理单元操作的功耗最小化的方法和设备

Country Status (5)

Country Link
US (2) US8943341B2 (zh)
CN (1) CN104246653B (zh)
DE (1) DE112013002011B4 (zh)
GB (1) GB2515223B (zh)
WO (1) WO2013153755A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111026571A (zh) * 2019-11-11 2020-04-17 北京字节跳动网络技术有限公司 处理器降频处理方法、装置及电子设备

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8943341B2 (en) * 2012-04-10 2015-01-27 International Business Machines Corporation Minimizing power consumption for fixed-frequency processing unit operation
US20150227138A1 (en) * 2012-09-05 2015-08-13 Siemens Corporation Method For Energy Demand Management In A Production Flow Line
US10649518B2 (en) * 2017-01-26 2020-05-12 Ati Technologies Ulc Adaptive power control loop

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6829713B2 (en) * 2000-12-30 2004-12-07 Intel Corporation CPU power management based on utilization with lowest performance mode at the mid-utilization range
JP2010277350A (ja) * 2009-05-28 2010-12-09 Toshiba Corp 電子機器
WO2011118487A1 (ja) * 2010-03-26 2011-09-29 ソニー株式会社 情報処理装置及び電源制御回路

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001125690A (ja) 1999-10-26 2001-05-11 Mitsubishi Electric Corp マイクロコンピュータの誤動作防止装置及びマイクロコンピュータの誤動作防止方法
US6934865B2 (en) 2002-07-09 2005-08-23 University Of Massachusetts Controlling a processor resource based on a compile-time prediction of number of instructions-per-cycle that will be executed across plural cycles by the processor
US8086884B2 (en) * 2002-12-16 2011-12-27 Hewlett-Packard Development Company, L.P. System and method for implementing an integrated circuit having dynamically variable power limit
US7148755B2 (en) 2003-08-26 2006-12-12 Hewlett-Packard Development Company, L.P. System and method to adjust voltage
US7071723B2 (en) 2004-05-21 2006-07-04 Intel Corporation Mapping variations in local temperature and local power supply voltage that are present during operation of an integrated circuit
US20060280019A1 (en) 2005-06-13 2006-12-14 Burton Edward A Error based supply regulation
US7443251B2 (en) 2005-12-15 2008-10-28 International Business Machines Corporation Digital phase and frequency detector
US7607028B2 (en) 2006-05-30 2009-10-20 International Business Machines Corporation Mitigate power supply noise response by throttling execution units based upon voltage sensing
US7467050B2 (en) 2006-05-30 2008-12-16 International Business Machines Corporation Method for detecting noise events in systems with time variable operating points
US7610531B2 (en) 2006-09-13 2009-10-27 International Business Machines Corporation Modifying a test pattern to control power supply noise
US7352297B1 (en) 2007-02-09 2008-04-01 International Business Machines Corporation Method and apparatus for efficient implementation of digital filter with thermometer-code-like output
US8725488B2 (en) 2007-07-26 2014-05-13 Qualcomm Incorporated Method and apparatus for adaptive voltage scaling based on instruction usage
US7886172B2 (en) 2007-08-27 2011-02-08 International Business Machines Corporation Method of virtualization and OS-level thermal management and multithreaded processor with virtualization and OS-level thermal management
US7720621B2 (en) 2007-08-30 2010-05-18 International Business Machines Corporation Application of multiple voltage droop detection
US7949889B2 (en) 2008-01-07 2011-05-24 Apple Inc. Forced idle of a data processing system
US7937563B2 (en) 2008-05-27 2011-05-03 Advanced Micro Devices, Inc. Voltage droop mitigation through instruction issue throttling
US8219831B2 (en) 2009-01-28 2012-07-10 Oracle America, Inc. Reducing temperature and power by instruction throttling at decode stage of processor pipeline in time constant duration steps
JP4585598B1 (ja) 2009-06-30 2010-11-24 株式会社東芝 情報処理装置
US8914661B2 (en) * 2010-06-30 2014-12-16 Via Technologies, Inc. Multicore processor power credit management in which multiple processing cores use shared memory to communicate individual energy consumption
JP5089790B2 (ja) 2011-05-17 2012-12-05 株式会社ソニー・コンピュータエンタテインメント 電源装置およびそれを用いた電子機器
US8943341B2 (en) * 2012-04-10 2015-01-27 International Business Machines Corporation Minimizing power consumption for fixed-frequency processing unit operation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6829713B2 (en) * 2000-12-30 2004-12-07 Intel Corporation CPU power management based on utilization with lowest performance mode at the mid-utilization range
JP2010277350A (ja) * 2009-05-28 2010-12-09 Toshiba Corp 電子機器
WO2011118487A1 (ja) * 2010-03-26 2011-09-29 ソニー株式会社 情報処理装置及び電源制御回路

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111026571A (zh) * 2019-11-11 2020-04-17 北京字节跳动网络技术有限公司 处理器降频处理方法、装置及电子设备
CN111026571B (zh) * 2019-11-11 2023-09-08 北京字节跳动网络技术有限公司 处理器降频处理方法、装置及电子设备

Also Published As

Publication number Publication date
GB2515223A (en) 2014-12-17
US20130268786A1 (en) 2013-10-10
WO2013153755A1 (en) 2013-10-17
DE112013002011B4 (de) 2018-02-15
GB2515223B (en) 2015-04-15
DE112013002011T5 (de) 2015-01-08
US9052905B2 (en) 2015-06-09
US8943341B2 (en) 2015-01-27
CN104246653B (zh) 2016-12-21
GB201417152D0 (en) 2014-11-12
US20130268785A1 (en) 2013-10-10

Similar Documents

Publication Publication Date Title
EP2796961B1 (en) Controlling power and performance in a system agent of a processor
US9235254B2 (en) Controlling temperature of multiple domains of a multi-domain processor using a cross-domain margin
CN106598184B (zh) 在处理器中执行跨域热控制
RU2624563C2 (ru) Оперативное регулирование производительности твердотельных запоминающих устройств
US20220326755A1 (en) Processor core energy management
US9442559B2 (en) Exploiting process variation in a multicore processor
US9785447B2 (en) System standby emulation with fast resume
CN104169832A (zh) 提供处理器的能源高效的超频操作
KR101707096B1 (ko) 일반 호스트 기반 제어기 레이턴시 방법 및 장치
TW201329695A (zh) 用以減少電力消耗之基於優先順序的應用程式事件控制技術
US20140082378A1 (en) Distributing Power To Heterogeneous Compute Elements Of A Processor
US9329658B2 (en) Block-level sleep logic
JP2018506111A (ja) 計算要素がアクティブであるときのシステム低電力状態有効化
CN104246653A (zh) 固定频率处理单元操作的功耗最小化
WO2023081054A1 (en) Performance management during power supply voltage droop
EP2818963B1 (en) Restricting clock signal delivery in a processor
US10712795B2 (en) Power supply unit fan recovery process
US10649484B2 (en) Dynamic adaptive clocking for non-common-clock interfaces
US10162914B1 (en) Apparatus and method to force equivalent outputs at start-up for replicated sequential circuits
CN112860216A (zh) 时钟交叉fifo状态收敛同步器
US20230185349A1 (en) Power management watchdog
US20160216756A1 (en) Power management in computing devices
CN117597665A (zh) 应用程序可协商平台热感知调度器
KR20240040797A (ko) 하드웨어 강제 전력 제어를 제한하는 것에 기초한 전력 관리

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20161221

Termination date: 20210327