CN101048722B - 一种管理电路中的热量的方法和系统 - Google Patents

一种管理电路中的热量的方法和系统 Download PDF

Info

Publication number
CN101048722B
CN101048722B CN2005800366430A CN200580036643A CN101048722B CN 101048722 B CN101048722 B CN 101048722B CN 2005800366430 A CN2005800366430 A CN 2005800366430A CN 200580036643 A CN200580036643 A CN 200580036643A CN 101048722 B CN101048722 B CN 101048722B
Authority
CN
China
Prior art keywords
instruction
performance element
heat
hot
microprocessor
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.)
Expired - Fee Related
Application number
CN2005800366430A
Other languages
English (en)
Other versions
CN101048722A (zh
Inventor
H·P·丹
A·夏尔马
S·M·斯里加亚塔
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 CN101048722A publication Critical patent/CN101048722A/zh
Application granted granted Critical
Publication of CN101048722B publication Critical patent/CN101048722B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30076Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
    • G06F9/30083Power or thermal control instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016Decoding the operand specifier, e.g. specifier format
    • G06F9/30167Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3824Operand accessing
    • G06F9/383Operand prefetching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
    • 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

Abstract

一种管理电路中的热量的方法、系统和微处理器,其中该方法包括使用被附加到将被处理的指令的热指令来确定关联于所述指令的热负荷,以及以指令速率将由指令产生的热负荷的值乘以代表所述指令的发生的值以获得乘积,以及将该乘积加到之前产生的热量的动态和中,其中所述热执行单元解码附加到所述指令的所述热指令,并且保持正由当前指令流产生的热量的动态和,其中所述热执行单元包括乘法器和加法器,其中在每个指令周期,在所述热执行单元内,所述乘法器将所述热指令的N个位乘以热表的N个条目以产生乘积,以及所述加法器将所述乘积加到每个执行单元的热仪表的动态和中,并且所述热执行单元为每个执行单元提供一个热仪表。

Description

一种管理电路中的热量的方法和系统 
相关申请的交叉引用 
本发明涉及由Sri Sri-Jayantha等在2004年7月16日提出的、题目为“METHOD AND SYSTEM FOR REAL-TIME ESTIMATION ANDPREDICTION OF THE THERMAL STATE OF A MICROPROCESSORUNIT”的美国专利申请No.10/892,211,其中,该申请具有IBM文档号YOR920040069US1,其被转让给本受让人,并且在此被引入作为参考。 
技术领域
本发明一般涉及微处理器和由此的方法,并且特别涉及用于高性能微处理器的具有热操作码的指令集和由此的方法。 
背景技术
例如IBM 
Figure DEST_PATH_GA20179822200580036643001D00011
的当代64位高性能微处理器具有以七层有色冶金互连的1.74亿个晶体管。其是以0.18μm互补金属氧化物半导体(CMOS)硅绝缘体(SOI)技术所制造,运转于大约1.3GHz,并且在最坏情况下消耗140W。 
类似于其它微处理器,并非该管芯的所有部分都产生同样热量。更快或更频繁使用的电路(例如浮点单元(FPU)等等)比芯片的剩余部分运行于更高的温度,由此形成该芯片上的“热点”。由于芯片可靠性是温度的指数函数,因此保证芯片的任一部分均不超过额定最大结温是至关重要的。由此,需要在芯片的多个位置精确测量温度。 
测量微处理器的温度的一种方法是使用多个二极管作为温度传感器。这些二极管可以在芯片的外部或内部。 
外部温度二极管用针对模拟电路优化的半导体过程制造,并且趋于具有比内部二极管更好的分辨率。现有技术是+/-1摄氏度内的测量分辨率。内部二极管不得不与数字电路妥协,并且具有更差的规格。 
例如,Motorola PowerPC
Figure 10003_1
具有带+/-4摄氏度分辨率的温度传感二极管(例如见1997年由Hector Sanchez等所著的“Thermal ManagementSystem for High Performance PowerPC Microprocessors”,IEEE1063-6390/97)。 
众所周知,跨二极管的正向电压降Vd与温度成线性比例,其由下面的方程给出: 
Vd=(N*k*T/q)*ln(If/Is) 
其中,N=非线性因子,k=波尔兹曼常数,T=绝对温度,q=电子电荷,If=正向电流,Is=饱和电流。N和Is是与过程和设备相关的。于是,每个二极管典型地必须在使用前被校准。 
存在用于避开所述校准的几种方法。一种方法是使一个二极管比其它的大得多(例如32x),然后看两个Vd的比率,如由此处引入作为参考的美国专利No.5,829,879所建议的那样。 
另一种方法是改变正向电流If,并且还看两个电压的比率来确定非线性因子。两种方法都有显著缺点:大得多的面积(案例1)或多个电流源(案例2)。 
温度传感二极管给出大约2mV/摄氏度,其需要稳定电流源(一个或多个)、低噪声放大器和可能高分辨率的模数转换(ADC),用以正常运行。将所有这些模拟部件与有噪声的、高速数字电路集成以在多个不同位置精确测量温度是有挑战性的。 
另一个实际的考虑是,很多时候,由于空间限制而不能将二极管传感器放在正好所述“热点”之上/之处。实际上,二极管传感器可能被放置在远离感兴趣的设备数百个晶体管(例如毫米级)的位置。由此,代替于测量感兴趣的设备的温度,所述二极管传感器可能错误地传感相邻设备。因此,即使使用最好的传感器,但仍然需要某种形式的空间外推来确定真实 的热点温度。 
另外,为最小化二极管传感器等的噪声,可以使用低通滤波器(LPF)。然而,所述LPF减小带宽从而增加了传感器的响应时间,由此导致测量的延迟时间。由此,当温度上升时,所述上升不必要被立即感知。 
发明内容
考虑到常规方法和结构的前述和其它示例问题、缺点和不足,本发明的示例特征是,提供一种用于在不必使用温度二极管传感器的情况下感知微处理器中的温度的方法和结构。 
本发明的另一示例特征是,提供这样一种方法和结构,其判断将在微处理器中被处理的指令流,并且确定将由此被产生的热量,以便此后采取某种动作。 
在本发明的第一方面中,一种管理电路中的热量的方法包括:使用附加到将被处理的指令的热指令来确定关联于该指令的热负荷。 
在本发明的第二方面中,一种管理处理器中的热量的方法包括:检查附加到将由处理器处理的现有指令的热指令;以及在多个位置实时测量处理器的热量产生,以便检测局部平均温度和实际瞬时温度。 
在本发明的第三方面中,一种微处理器包括执行指令的执行单元,其中,所述指令包括附加到其的热指令,通过该热指令,关联于所述指令的热量负荷可测量。 
在本发明的第四方面中,一种用于管理电路中的热量的系统包括:用于接收将被处理的指令的执行单元,其中,所述指令包括被附加到其的热指令;以及用于基于该热指令确定关联于所述指令的热量负荷的单元。 
在本发明的第五方面中,一种将在微处理器中被处理的指令包括:用于被所述微处理器执行的现有指令;以及附加到所述现有指令的热指令,该热指令指示由将被所述现有指令调用的至少一个执行单元产生的热量。 
在本发明的第六方面中,一种将在微处理器中被处理的指令包括:用于被所述微处理器执行的现有指令;以及附加到所述现有单元的、指示用 于索引查找表的地址的热指令,其中所述查找表保存了指示由将被所述现有指令调用的至少一个执行单元产生的热量的条目。 
在本发明的第七方面中,一种管理微处理器中的热能的方法包括:判断将在微处理器中被处理的指令流;以及基于该指令流确定将通过处理该指令流产生的热量。 
在本发明的第八方面中,一种信号承载媒体有形地包括机器可读指令的程序,其可由数字处理装置执行从而执行管理电路中的热量的方法。所述方法包括:使用附加到将处理的指令的热指令来确定关联于该指令的热量负荷。 
根据本发明的独特和不明显方面,一种在不需要使用任何温度传感器的情况下监视(跟踪)温度的方法(和结构)被提供。 
即,在示例实施例中,新的热操作码被添加到现有指令集,以指示多少热量正被每个指令产生。通过保持正被产生的热量的动态和(runningsum),可以映射芯片的任意区域或每个执行单元的温度。 
另外,本发明方法用光刻技术(lithography)来调整,避免了伴随传感器放置的问题和缓慢的传感器响应时间。由此,所述芯片及其区域被更好地保护使其免于热损坏。 
因此,本发明可以提前考虑当前指令,其具有除了当前指令之外的附加信息,并且可以断定多少热量将通过对该指令的处理产生。 
不同于其它方法,本发明不需要实际的功率生成输入(例如功率测量),而作为代替可以为将被执行的每个指令嵌入估计的热信息(热量)。因此,在不测量实际电流或电阻等的情况下,本发明可以基于所述指令处理获得将在每个位置消耗的热量(焦耳)。 
由此,本发明对于现在的微处理器以及将来当可以想象用于执行下述详尽算法的大型、大量微处理器(比现有的那些微处理器大很多倍)时都具有极大效用,其中所述算法提供跨所述大量微处理器的即时温度测量/预测映射。本发明提供了一种管理所述热量并且避免所述热量在芯片上的“热点”增大的装置。 
附图说明
从下面参考附图对本发明的示例实施例的详细描述中,前述和其它示例目的、方面和优点将被更好地理解,在附图中: 
图1示出了常规的高性能微处理器体系结构100; 
图2示出了具有热执行单元210的微处理器体系结构200; 
图3示出了具有预测热执行单元310的微处理器体系结构300; 
图4示出了热指令400; 
图5示出了所述热执行单元210的细节; 
图6示出了热执行单元的示例600; 
图7示出了多速率热执行单元700; 
图8示出了多速率热执行单元示例800; 
图9示出了编码热执行单元900; 
图10示出了编码热执行单元查找表1000; 
图11示出了编码热执行单元示例1100; 
图12示出了用于将本发明引入其中的示例性硬件/信息处理系统1200;以及 
图13示出了用于存储根据本发明的方法的程序的步骤的信号承载媒体1300(例如存储媒体)。 
具体实施方式
现在参考附图并且特别是图1-13,其示出了根据本发明的方法和结构的示例性实施例。 
示例性实施例 
图1示出了常规的、示例性当代高性能微处理器的体系结构100,并且更准确地说是推测性超规模无序执行设计的IBM Power
Figure 10003_2
微处理器核心的高度简化框图。 
指令被载入到64KB I高速缓存110中,其开始于由取指令地址寄存 器(IFAR)120指示的位置。每周期中多个(例如多达八个)指令被读取到指令队列130中以及解码器140中,其中,所述指令被分组并发送到合适的发布队列150A(分支/条件寄存器发布队列)、150B(定点/加载发布队列)、150C(浮点发布队列)以及相应的执行单元(EU)160A(分支执行单元)、160B(条件寄存器执行单元)、160C(定点执行单元)、160D(加载/存储执行单元)和160E(浮点执行单元)。 
Power
Figure 10003_3
具有两个定点/加载队列和两个浮点执行单元,但为使读者容易理解,二者中的仅一个被示出。所述队列的每个输出被发送到合适的执行单元。如所示,所述定点执行单元将两个整数值加到一起(或相减),而所述浮点执行单元处理非整数值。所述加载/存储可以被分为两种类型的加载和存储。 
由此,所述加载/存储从存储器以及更准确地说从D高速缓存(例如数据高速缓存等)或从即时存储队列获得指令。如果所述存储队列更近,则从所述即时存储队列获得指令相对于所述D高速缓存耗费更少能量。 
多级分支预测器170预测指令并且以“最佳猜测”的下一地址加载IFAR 120。Power4
Figure 10003_4
使用内部二极管作为芯片上某处的温度传感器195来进行热量管理。 
为加载代码,来自所述取指令地址寄存器120的地址被使用。所述地址通过三种方法中的一种被生成。一种方法是通过所述分支预测器170,其中,该分支预测器170考虑从I高速缓存110到来的指令,以及,例如可以查看循环将被(或正被)执行,以及下一指令集被需要。由此,所述分支预测器170发送下一指令地址。 
另一种方法是通过分组完成表180,在该表中,指令可以被无序地执行。所述分组完成表180对哪些指令已被执行进行跟踪。 
第三种方法是通过跳跃。所述三种的任一种可以修改将被加载的下一指令块的地址。 
由此,图1示出了所述微处理器的高级示图/视图。应当指出,为简洁起见,并非把所述微处理器的所有操作/功能示出在图1中,而是,将其限 制于指令如何在所述微处理器中被执行和处理,以及新的分支如何被生成。 
所述Power4
Figure 10003_5
体系结构的更详细操作可以在2002年1月的IBMJournal of Research & Development,Volume 46,Number 1中由Tendler等所著的“Power4 System Microarchitecture”中找到。 
应当指出,本发明可以以图1的示例性体系结构被使用,但当然不限于仅以图1的所述体系结构使用。 
图2示出了把热执行单元210添加到图1的微体系结构。所述指令队列130信息和解码、分组构造140信息被发送到所述热EU 210。所述热EU 210解码所述指令的热操作码部分,并且保存正由当前指令流产生的热量的动态和。由此,所述热执行单元210知道什么指令正在被运行以及按什么顺序运行。 
所述热EU 210与所述指令解码器顺序牵动地(locked-step)运行,并且再次利用分组构造的输出来处理无序指令执行。所述热EU 210的内部运转将在随后详细讨论。在所述配置中,热指令被与正常指令一起存储在I高速缓存110中,并且热EU 210仅分析执行的指令。 
图3示出了允许在指令被执行之前提前确定什么单元将被加热的配置。为此,必须在指令被执行前考虑这些指令。由此,在图3中,接收(除被提供给I高速缓存110之外的)取指令地址的T高速缓存(热高速缓存)304和预测热执行单元310被提供。 
因此,在图3的配置中,指令被载入到I高速缓存110中,并且相应的热操作码被载入到热高速缓存304中。所述T高速缓存305具有附加逻辑,以致当热操作码被加载时,其被预测热EU 310处理。这提供了一种机制,用于预测如果I高速缓存110中的当前指令被执行则将来的热负荷将是什么。当然,任何时候当新地址被分支EU 160A、分组完成表180或分支预测器170载入到所述取指令地址寄存器120中之时,所述信息将被更新。所述概念可以被扩展到L2/L3高速缓存,以便预测将来远期的热负荷。 
如图4中所示,热指令405被附加到每个现有微处理器指令410。对于该特定示例,所述热指令可以包括6位(为简化,忽略复制的定点和加 载/存储单元)。 
每一位指示哪个执行单元被特定指令调用。BR 420、CR 430、FX 440、LD 450、LQ 460和FQ 470分别指分支、条件寄存器、定点、来自/到D高速缓存的加载/存储、来自/到存储队列的加载/存储和浮点单元。由于每一类型访问导致不同水平的能量消耗,所以独立的位被用于指示到所述存储队列或到所述D高速缓存的访问。应当指出,如果特定指令缺失(例如没有从队列加载的指令、没有分支指令等),则将不存在代表该“缺失”指令的相应位。 
对于具有更多执行单元的其它微体系结构,将需要附加位。对于多个执行单元完成同一功能的情况(例如两个浮点单元、两个分支单元等),两个位可以被使用(例如FX1、FX2;BR1、BR2等)。另外,可以优化它们(所述位)在于,尽管针对当前配置中的每个执行单元一位被示出,但是很多时候,某些操作/指令/作业可能未出现,并且由此,可以不(几乎不)需要跟踪某些单元以及从其产生的热量。 
由此,本发明的一个重要方面是通过用所述附加位扩充现有指令集来修改现有指令集。 
图5示出了根据本发明的热执行单元的一个示例性实现,并且更准确地说,其示出了,在每个指令周期中,热操作码2110的N位乘以热表2105的N个条目,并且然后被加到每个执行单元(EU)的热仪表(thermal meter)(n-1)2115的动态和。典型地,每个执行单元存在一个仪表。该操作可以类比于家用的电表。 
所述热表2105的每个条目指示当相应的执行单元运行时由其产生的热量。操作码中的“0”是指匹配的EU不运行,并且由此将不会添加热量。 
操作码中的相反值是“1”。在所述配置中,向量乘法器和加法器运行于Ghz级的指令速率并且累加由各个EU产生的热量。由于热传播慢得多,所述热仪表2115可以以低得多的速度进行采样。 
设想所述热仪表(n)2120以几十到几百微秒的速率被读取和复位。所述热采样速率取决于许多变量,例如指令速率、设备大小/几何形状/材 料、以及芯片热传导性。 
所述热表2105在上电时被加载以合适的值,并且可以在运行期间基于芯片的状态被更新。存在用于确定这些值的很多方法。 
对于当前微处理器设计,一种方法是将所述设计分解到寄存器传输级(RTL),并且基于容量、净长、面积和开关活动来估计功率消耗。例如Power Theater(例如参见2002年1月的IBM Journal of Research &Development,Volume 46,Number 1中由Tendler等所著的“Power4
Figure 10003_6
 System Microarchitecture”)或IBM Common Power Analysis Method(CPAM)(例如参见2000年的9th Topical Meeting on the ElectricalPerformance of Electronic Packaging的会议录的303-306页中由ScottNeely、Howard Chen、Steven Walker和Thomas Bucelot所著的“CPAM:A Common Power Analysis Methodology for High-Performance VLSIDesign”)的商用仿真软件可以被用作起始点。1996年9月的美国专利No.5,557,557的由Frantz等所著的“Processor Power Profiler”提出了一种用于确定当执行程序时处理器的能量消耗的方法。 
1999年8月的美国专利No.5,941,991的由Kageshima等所著的“Method of Estimating Power Consumption of each instruction processedby a microprocessor”考虑了指令的高速缓存命中/缺失。2002年1月的美国专利No.6,338,025B1的由Bowen等所著的“Data Processing system andmethod to estimate power in mixed dynamic/static CMOS designs”处理动态CMOS电路的功率仿真。 
通过上述工具和方法,可以获得对由每个EU消耗的功率的良好估计。 
下一步将是使用物理电路设计的模型,并且将功率消耗数量翻译为每指令的热量上升,其可以被称为“热量子”。例如,如果浮点乘法指令导致浮点单元上升5微摄氏度,则该指令具有5个热量子,并且5将被载入到热表2105中。该翻译过程优选地应当考虑三维空间中每个设备的热阻性和容性。 
由此,对于当前的微处理器设计,存在许多仿真工具来允许知道:对 于每个指令,多少晶体管正被开关,以及所述晶体管正在驱动什么设备,由此知道多少热量正被产生以及所述热量正被产生的位置。 
应当指出,图5的另一重要特征在于,所有单元(电路)都在指令速率(例如目前大约2-3Ghz)运行。由此,通过对热量的跟踪,由于在Ghz速率的实时相乘而大量热量通过该过程本身产生。 
图6示出了图5中示出的配置的例子。假设所述分支、条件寄存器、定点、高速缓存加载/存储、队列加载/存储和浮点单元分别产生2、1、5、3、1和10个热量子。由此,所述条件寄存器(CR)不执行大量工作(例如创造大量热量),而所述浮点产生相对大量热量。 
对于仅使用定点(FX)和高速缓存加载/存储(LD)的特定指令,用于该指令的热操作码将是“001100”。由此,5和3个量子将被加到所述热仪表的动态和,其中,“n”被定义为当前状态(例如热仪表2120),以及“n-1”(例如热仪表2115)为前一状态。于是,对于所述FX和LD,现在有50和75个量子。所述热仪表的剩余部分保持不变。 
应当指出,在上面描述的示例性应用中,正被产生的所述热量数值(热仪表)是在一定时间周期上累积的。然而,取决于设计者的需求和约束,所述热仪表可以是不同的或是具有不同类型。 
即,代替于对应于正特定时间周期上被释放的累积热量的热仪表,在另一示例性应用中,以及通过利用使用该信息的实际模型,可以不需要所述热仪表以累积模式运转。相反,仅使用热表2105和热指令2110的输出(乘积)作为热估计器的输入就足够了。热估计器典型在其中具有内置消耗单元,例如具有热阻性的电阻等,并且所述单元可以基于整体系统冷却体系结构来选择所消耗的热量子多快将最终被消耗完。 
因此,可以想象这样的情形,其中,一个处理器可以使用液体冷却,而另一处理器使用不同的热消散机制(被动的、散热片等)。实际上,即使所述另一处理器使用液体冷却,如果将冷却设备连接到所述处理器的热胶(thermal paste)由于机械误差而稍微脱离(不同),则其消耗速率也将不同。由此,其它活动可以作为整个实现的一部分有益于确定消耗参数。 
因此,在下一情况下,所述热仪表将被增加或保持固定,并且由此读取和复位操作将被所述热估计器执行。实际上,所述热仪表的优点中的一个在于,即使所述数量正在每个指令周期被添加,但对于实际的热模型实现,不需要这么好的热消耗信息级别。相反,可以仅找到例如对于每千次执行的和。因此,可以使用累积信息,但不必要从时刻0开始。 
转向图7,其示出了,通过颠倒从图6中所示的操作的顺序,热EU的功率消耗可以被大大减小。即,图6的相乘操作和相加操作的顺序被颠倒,如图7中所示。 
在图7中,热指令2110被以指令速率添加到热计数器2130的前一状态,以及,与热表2115的相乘以较低的热采样速率被完成。所述加法器现在简单得多,因为其仅加上1。代替于如前的整体加法器,简单递增计数器(例如1位计数器)可以被用于该操作。 
对于相同的热指令(“001100”)、热表(n)2105以及等价的热计数器2130(n-1)和2130a的值,热仪表(n)2120给出同样的读数(例如与图6中相同),如图8中所示。 
由此,在图7中,相对较快的指令速率(在图7示图的顶部示出,并且为GHz级)区别于相对较慢的速率(例如在图7的底部的操作中示出的速率;还被称为热响应时间)。 
因此,代替于如图6中乘以由每个指令产生的热量,在图7中,对于每个单元(例如运行在指令速率)被执行的指令的数量进行计数,因而仅所述热表2115中的数值当需要时以较低速率被相乘,并且热仪表2120将与图6中相同。再次,与图6相同的结果被得到,但其使用简单得多的电路。该实施例对于当需要所述热信息之前需要求和大量指令周期的情形有益。由此,乘法操作不是每个周期必要的。相反,求和可以在每个周期继续,但乘法可以在需要热信息时被选择性地执行。 
所述热指令2110应当尽量短,以最小化开销。保持所述热指令很短的一种方法是仅监视被大量使用的EU。 
例如,所述分支单元不太可能在每个指令中被使用。由此,其可以不 需要被监视。对于某种微体系结构,所述定点单元被使用得最多。在所述情况下,仅该EU和对于该定点单元的热负荷有贡献的一些关键的相邻EU应当被监视。 
如上面所指出的,可以是每执行单元为一位。然而,这可能不是位的数量的高效使用,由于所述位正被加到每个指令(被递增1以及之后被乘),并且由此,这可能变成非常大的增量。由此,找到一种编码所述热指令以使其在空间上更加高效的方法将是有益的。 
由此,另一种方法是二进制编码所述热指令。图9示出了管理2N个区域的N位热操作码。所述热操作码提供了到包含2N个条目的查找表(LUT)2190的索引或地址。其加法和乘法操作与图7中相同。热仪表2120示出了区域0到(2N-1)中累积的热量。 
由此,在图9中,代替于如之前描述的代表执行单元的每个位,每个位将贯穿所述LUT 2190,该LUT 2190将把所述位翻译为如结构1000中所示的芯片(例如微处理器1010)上的对应空间,如图10中所示。 
例如,4位热指令提供了用于索引16条目LUT 2190的必要地址,并且对芯片(例如微处理器1010)的16个区域进行跟踪,如图10的结构1000中所示。LUT 2190的每个条目可以涉及单一区域或多个区域。在该例中,热指令(地址)“0000”指向LUT 2190的条目0,其跟踪区域R2、R3、R6和R7。热指令(地址)“0001”将指向R5、R9和R13。另外,热指令(地址)“1111”可以指向R10和R15的对角区域。通过所述示例性映射,多达16个区域可以用仅4个位覆盖。 
由此,代替于每执行单元为一位,所述地址将载入用于索引LUT 2190的指令,由此来得到热索引2195,正如前面图8中那样。 
图11示出了其中地址“0000”影响区域R2、R3、R6和R7的例子。图11示出,所述热计数器当被添加到动态计数时对于具有索引“1”的每个区域递增1。所述热仪表值是热计数器和热表的积。 
对比于在其中不论四个位是否正产生热量四个位都将对应于所使用的四个执行单元的实施例,使用与指向表(LUT)2190的地址生成器相同的 4个位的图10(以及如图11所示)的配置(以及4个位的使用)现在从所述4个位提供16组信息,并且由此增强了加宽热信息的能力。其开销是去往所述表的额外步骤。所述表提供了关于哪些区域正在参与以及哪些区域未参与的信息(例如由图10的“0”和“1”所示)。 
热EU的输出可以与新的或现有的动态热管理或点冷却技术耦合,以便调节微处理器的最大结温(例如,参见上面提到的由S.M.Sri-Jayantha等提出的被题目为“METHOD AND SYSTEM FOR REAL TIMEESTIMATION AND PREDICTION OF THE THERMAL STATE OF AMICROPROCESSOR UNIT”的美国专利申请No.10/892,211,以及IEEE2001,0-7695-1019-1/01中由David Brooks和Margaret Martonosi所著的“Dynamic Thermal Management for High-PerformanceMicroprocessor”)。 
图12示出了与本发明一起使用并且优选具有至少一个处理器或中央处理单元(CPU)1211的信息处理/计算机系统的典型硬件配置。 
所述CUP 1211经由系统总线1212互连到随机存取存储器(RAM)1214、只读存储器(ROM)1216、输入/输出(I/O)适配器1218(用于将例如磁盘单元1221和磁带驱动器1240的外围设备连接到总线1212)、用户接口适配器1222(用于将键盘1224、鼠标1226、扬声器1228、麦克风1232和/或其它用户接口设备连接到总线1212)、用于将信息处理系统连接到数据处理网络、因特网、内联网、个人区域网(PAN)等的通信适配器1234,以及用于将总线1212连接到显示设备1238和/或打印机的显示适配器1236。 
除上面描述的硬件/软件环境之外,本发明的不同方面包括一种用于执行上述方法的计算机实现方法。作为例子,所述方法可以在上面描述的特定环境中被实现。 
所述方法可以例如通过操作计算机来执行机器可读指令序列来实现,其中,所述计算机如由数字数据处理装置体现。这些指令可以驻留在各种类型的信号承载媒体中。 
所述信号承载媒体可以包括例如被包含在CPU 1211中的RAM,例如由快速存取存储器代表的那样。可选地,所述指令可以被包含在可以由CPU 1211直接或间接访问的另一信号承载媒体中,例如磁性数据存储装置或CD-ROM盘(图13)。 
不论是否被包含在盘1300、计算机/CPU 1211或其它地方之中,所述指令可被存储在多种机器可读数据存储媒体中,例如DASD存储装置(例如常规“硬盘驱动器”或RAID阵列)、磁带、电子只读存储器(例如ROM、EPROM或EEPROM)、光存储设备(例如CD-ROM、WROM、DVD、数字光带等)、纸质“打孔”卡或其它合适的信号承载媒体,其包括例如数字和模拟的传送媒体和通信链路以及无线。在本发明的示例实施例中,所述机器可读指令可以包括通过例如“C”等语言编译的软件目标代码。 
另外,在本发明的又另一方面中,在作为整体考虑本说明后,本领域的普通技术人员应当容易地认识到,本发明可以用作大量商业或服务活动的基础。所有的潜在服务相关活动都旨在被本发明所覆盖。 
根据本发明的独特和不明显方面,一种在不需要使用任何温度传感器的情况下监视(跟踪)温度的方法(和结构)被提供。相反,在示例性实施例中,新的热操作码可以被添加到现有指令集,以指示多少热量正被每个指令产生。通过保持正被产生的热量的动态和,每个执行单元或芯片的任意区域的温度可以被映射。 
另外,本发明方法以设备光刻技术来调整,避免了关联于传感器放置的常规问题和缓慢的传感器响应时间。由此,所述芯片及其区域被更好地保护使其免于热损坏。此外,每个指令可以被提前考虑,并且可以具有除了当前指令之外的附加信息,并且可以确定多少热量将通过对该指令的处理产生。 
本发明不需要具有实际的功率生成输入(例如功率测量),但相反,可以对于将被执行的每个指令嵌入估计的热信息(热量)。因此,在不测量实际电流、电阻等的情况下,本发明可以基于所述指令处理获得将在每 个位置消耗的热量(焦耳)。 
由此,本发明具有极大效用,并且可以管理热量,以及避免所述热量在芯片上的“热点”增大。 
尽管已通过几个示例性实施例描述了本发明,但本领域的技术人员将认识到,本发明可以通过落在权利要求的精神和范围内的修改来实现。 
例如,尽管本发明已被描述为用于并且引入到图1的示例性体系结构中,但本发明决不限于用于或引入到所述体系结构中。实际上,许多其它不同体系结构可以被使用,如对于整体考虑本申请书的本领域的普通技术人员将显而易见的那样。 
另外,应当指出,申请者的目的是包括所有的权利要求要素的等价体,即使在之后的实行期间被修正过也是如此。 

Claims (24)

1.一种管理电路中的热量的方法,其中所述电路包括微处理器,所述微处理器包括执行单元和热执行单元,该方法包括:
使用附加到将被处理的指令的热指令来确定关联于所述指令的热负荷;以及
以指令速率将由指令产生的热负荷的值乘以代表所述指令的发生的值以获得乘积,以及将该乘积加到之前产生的热量的动态和中,
其中所述热执行单元具有可修改的热表和多个热仪表,所述热执行单元解码附加到所述指令的所述热指令,并且保持正由当前指令流产生的热量的动态和,其中所述热执行单元包括乘法器和加法器,并且所述热执行单元为每个执行单元提供一个热仪表,其中在每个指令周期,在所述热执行单元内,所述乘法器将所述热指令的N个位乘以热表的N个条目以产生乘积,以及所述加法器将所述乘法器所产生的乘积加到每个执行单元的热仪表的动态和中。
2.根据权利要求1所述的方法,所述方法还包括:
在多个位置实时测量所述微处理器的热量产生,以检测局部平均温度和实际瞬时温度。
3.根据权利要求2所述的方法,还包括:
测量当前指令的热负荷,以及由仍在所述微处理器的存储器中的将来指令产生的将来的热负荷。
4.根据权利要求3所述的方法,其中,所述热表中的值代表所述微处理器的指令执行单元。
5.根据权利要求4所述的方法,还包括:
确定关联于被使用了预定的少量时间的执行单元的指令,以便在确定所述热负荷时所述指令被避开。
6.根据权利要求1所述的方法,所述方法还包括:
通过以指令速率将所述热指令添加到热计数器的之前状态来获得和,从而减少所述热执行单元的功率消耗;以及
以低于所述指令速率的速率将所述热计数器中的和乘以存储在所述热表中的值。
7.根据权利要求5所述的方法,还包括:
对于所述微处理器的每个执行单元所执行的指令数量进行计数,以获得计数;以及
将所述热表中的因子乘以所述计数以获得所述热仪表。
8.根据权利要求7所述的方法,
其中,对所述微处理器的每个执行单元提供所述热指令中的一位。
9.根据权利要求1所述的方法,其还包括:
二进制编码所述热指令的N个位,使得所述热指令提供到包含2N个条目的查找表的索引,其中,N是整数。
10.根据权利要求9所述的方法,还包括:
通过用附加位扩充现有指令集来修改所述现有指令集。
11.根据权利要求10所述的方法,其中所述电路包括微处理器,以及
其中每个所述附加位指向将该附加位翻译为所述微处理器上的对应空间的查找表。
12.根据权利要求1所述的方法,其中N位热指令提供了用于索引2N个条目的查找表的地址,并且对所述微处理器的2N个区域进行跟踪。
13.根据权利要求12所述的方法,其中所述查找表的每个条目是指单一区域和多个区域中的一个。
14.根据权利要求2所述的方法,还包括:
检查附加到将被微处理器处理的现有指令的热指令;以及
在多个位置实时测量所述处理器的热量产生,以检测局部平均温度和实际瞬时温度。
15.根据权利要求14所述的方法,还包括:
测量当前指令的热负荷以及由仍在所述处理器的存储器中的将来指令产生的将来的热负荷。
16.一种管理电路中的热量的系统,包括:
执行指令的执行单元,所述指令包括附加到所述指令的热指令,通过该热指令,关联于所述指令的热负荷可测量;以及
运行在指令速率的热执行单元,其具有可修改的热表和多个热仪表,
其中所述热执行单元解码附加到所述指令的所述热指令,并且保持正由当前指令流产生的热量的动态和,其中所述热执行单元包括乘法器和加法器,并且所述热执行单元为每个执行单元提供一个热仪表,其中在每个指令周期,在所述热执行单元内,所述乘法器将所述热指令的N个位乘以热表的N个条目以产生乘积,以及所述加法器将所述乘积加到每个执行单元的热仪表的动态和中。
17.根据权利要求16所述的系统,其中所述热执行单元被控制以运转于多个速率。
18.根据权利要求17所述的系统,其中所述热执行单元被编码以最小化所述热指令的长度。
19.根据权利要求17所述的系统,其中所述热执行单元包括映射对应于所述热执行单元的微处理器的多个区域的热查找表。
20.根据权利要求17所述的系统,其中所述热指令的每个位指示哪个执行单元被特定指令调用。
21.根据权利要求17所述的系统,其中在确定所述热负荷时,关联于特定执行单元的指令被忽略。
22.根据权利要求16所述的系统,其中所述热表的每个条目指示当对应执行单元运行时由所述对应执行单元产生的热量。
23.一种用于管理电路中的热量的系统,包括:
用于接收将被处理的指令的执行单元,所述指令包括被附加到所述指令的热指令;以及
运行在指令速率的热执行单元,其具有可修改的热表和多个热仪表,
其中所述热执行单元解码附加到所述指令的所述热指令,并且保持正由当前指令流产生的热量的动态和,其中所述热执行单元包括乘法器和加法器,并且所述热执行单元为每个执行单元提供一个热仪表,其中在每个指令周期,在所述热执行单元内,所述乘法器将所述热指令的N个位乘以热表的N个条目以产生乘积,以及所述加法器将所述乘积加到每个执行单元的热仪表的动态和中。
24.一种管理微处理器中的热能的方法,其中所述电路包括微处理器,所述微处理器包括执行单元和热执行单元,该方法包括:
判断将在微处理器中被处理的指令流;以及
基于所述指令流确定将通过处理所述指令流产生的热量;
其中所述确定步骤包括:使用附加到将被处理的指令的热指令来确定关联于所述指令的热负荷;以指令速率将由指令产生的热负荷的值乘以代表所述指令的发生的值以获得乘积,以及将该乘积加到之前产生的热量的动态和中,其中所述热执行单元解码附加到所述指令的所述热指令,并且保持正由当前指令流产生的热量的动态和,其中所述热执行单元包括乘法器和加法器,并且所述热执行单元为每个执行单元提供一个热仪表,其中在每个指令周期,在所述热执行单元内,所述乘法器将所述热指令的N个位乘以热表的N个条目以产生乘积,以及所述加法器将所述乘积加到每个执行单元的热仪表的动态和中。
CN2005800366430A 2004-11-05 2005-10-27 一种管理电路中的热量的方法和系统 Expired - Fee Related CN101048722B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/981,473 US7313709B2 (en) 2004-11-05 2004-11-05 Instruction set with thermal opcode for high-performance microprocessor, microprocessor, and method therefor
US10/981,473 2004-11-05
PCT/US2005/038815 WO2006052470A1 (en) 2004-11-05 2005-10-27 Instruction set with thermal opcode for high-performance microprocessor, microprocessor, and method therefor

Publications (2)

Publication Number Publication Date
CN101048722A CN101048722A (zh) 2007-10-03
CN101048722B true CN101048722B (zh) 2011-01-12

Family

ID=35871212

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005800366430A Expired - Fee Related CN101048722B (zh) 2004-11-05 2005-10-27 一种管理电路中的热量的方法和系统

Country Status (5)

Country Link
US (3) US7313709B2 (zh)
EP (1) EP1812845A1 (zh)
JP (1) JP5356688B2 (zh)
CN (1) CN101048722B (zh)
WO (1) WO2006052470A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8831791B2 (en) 2009-04-29 2014-09-09 International Business Machines Corporation Processor cooling management

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7347621B2 (en) * 2004-07-16 2008-03-25 International Business Machines Corporation Method and system for real-time estimation and prediction of the thermal state of a microprocessor unit
US8812169B2 (en) * 2005-10-31 2014-08-19 Hewlett-Packard Development Company, L.P. Heat sink verification
US7460932B2 (en) * 2005-11-29 2008-12-02 International Business Machines Corporation Support of deep power savings mode and partial good in a thermal management system
US7376532B2 (en) * 2005-11-29 2008-05-20 International Business Machines Corporation Maximal temperature logging
US7603576B2 (en) * 2005-11-29 2009-10-13 International Business Machines Corporation Hysteresis in thermal throttling
US7490017B2 (en) * 2005-11-29 2009-02-10 International Business Machines Corporation Analytical generation of software thermal profiles
US7721128B2 (en) * 2005-11-29 2010-05-18 International Business Machines Corporation Implementation of thermal throttling logic
US7512513B2 (en) * 2005-11-29 2009-03-31 International Business Machines Corporation Thermal throttling control for testing of real-time software
US7386414B2 (en) * 2005-11-29 2008-06-10 International Business Machines Corporation Generation of hardware thermal profiles for a set of processors
US7698089B2 (en) * 2005-11-29 2010-04-13 International Business Machines Corporation Generation of software thermal profiles executed on a set of processors using processor activity
US20070124618A1 (en) * 2005-11-29 2007-05-31 Aguilar Maximino Jr Optimizing power and performance using software and hardware thermal profiles
US7848901B2 (en) * 2005-11-29 2010-12-07 International Business Machines Corporation Tracing thermal data via performance monitoring
US7480586B2 (en) * 2005-11-29 2009-01-20 International Business Machines Corporation Thermal interrupt generation
US7681053B2 (en) * 2005-11-29 2010-03-16 International Business Machines Corporation Thermal throttle control with minimal impact to interrupt latency
US7512530B2 (en) * 2005-11-29 2009-03-31 International Business Machines Corporation Generation of software thermal profiles for applications in a simulated environment
US7395174B2 (en) * 2005-11-29 2008-07-01 International Business Machines Corporation Generation of software thermal profiles executed on a set of processors using thermal sampling
US8037893B2 (en) * 2006-05-03 2011-10-18 International Business Machines Corporation Optimizing thermal performance using thermal flow analysis
US7552346B2 (en) * 2006-05-03 2009-06-23 International Business Machines Corporation Dynamically adapting software for reducing a thermal state of a processor core based on its thermal index
US7596430B2 (en) * 2006-05-03 2009-09-29 International Business Machines Corporation Selection of processor cores for optimal thermal performance
US7467280B2 (en) * 2006-07-05 2008-12-16 International Business Machines Corporation Method for reconfiguring cache memory based on at least analysis of heat generated during runtime, at least by associating an access bit with a cache line and associating a granularity bit with a cache line in level-2 cache
US8027798B2 (en) * 2007-11-08 2011-09-27 International Business Machines Corporation Digital thermal sensor test implementation without using main core voltage supply
US8452581B2 (en) * 2009-05-05 2013-05-28 Oracle America, Inc. Technique using power macromodeling for register transfer level power estimation
US8549330B2 (en) 2009-12-18 2013-10-01 International Business Machines Corporation Dynamic energy management
US9442732B2 (en) 2012-03-19 2016-09-13 Via Technologies, Inc. Running state power saving via reduced instructions per clock operation
US8918576B2 (en) 2012-04-24 2014-12-23 Avago Technologies General Ip (Singapore) Pte. Ltd. Selectively placing data in thermally constrained memory systems to dynamically adapt to changing environmental conditions
US9329648B2 (en) * 2012-07-17 2016-05-03 International Business Machines Corporation Performance management of subsystems in a server by effective usage of resources
US20160139589A1 (en) * 2014-11-18 2016-05-19 Qualcomm Incorporated Thermal mitigation based on event counter
US10331189B2 (en) * 2015-02-12 2019-06-25 Dell Products L.P. Fan speed determination for improved power management in information handling systems
US9785209B2 (en) * 2015-03-31 2017-10-10 Qualcomm Incorporated Thermal management in a computing device based on workload detection
US10114649B2 (en) 2015-05-26 2018-10-30 International Business Machines Corporation Thermal availability based instruction assignment for execution
CN110825440B (zh) * 2018-08-10 2023-04-14 昆仑芯(北京)科技有限公司 指令执行方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5557551A (en) * 1993-10-27 1996-09-17 International Business Machines Corporation Method and apparatus for a thermal protection unit
CN1505777A (zh) * 2000-08-11 2004-06-16 ���ǵ�����ʽ���� 用于计算机外围装置的节电设备和方法
CN1526089A (zh) * 2002-01-02 2004-09-01 ض� 用于热控制的确定性功率估计

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1020959A (ja) * 1996-07-01 1998-01-23 Matsushita Electric Ind Co Ltd 低消費電力マイクロプロセッサ
US6000036A (en) * 1996-07-17 1999-12-07 International Business Machines Corp. Logical steering to avoid hot spots on integrated circuits
JP3494813B2 (ja) * 1996-07-19 2004-02-09 株式会社東芝 マイクロプロセッサの消費電力見積もり方法
JP2000057122A (ja) * 1998-08-06 2000-02-25 Yamaha Corp デジタル信号処理装置
US6625740B1 (en) * 2000-01-13 2003-09-23 Cirrus Logic, Inc. Dynamically activating and deactivating selected circuit blocks of a data processing integrated circuit during execution of instructions according to power code bits appended to selected instructions
US7174194B2 (en) * 2000-10-24 2007-02-06 Texas Instruments Incorporated Temperature field controlled scheduling for processing systems
US7191350B2 (en) * 2002-01-30 2007-03-13 Matsushita Electric Industrial Co., Ltd. Instruction conversion apparatus and instruction conversion method providing power control information, program and circuit for implementing the instruction conversion, and microprocessor for executing the converted instruction
JP2003296123A (ja) * 2002-01-30 2003-10-17 Matsushita Electric Ind Co Ltd 電力制御情報を付与する命令変換装置及び命令変換方法、命令変換を実現するプログラム及び回路、変換された命令を実行するマイクロプロセッサ
US7174469B2 (en) * 2003-09-30 2007-02-06 International Business Machines Corporation Processor power and energy management
JP3830491B2 (ja) * 2004-03-29 2006-10-04 株式会社ソニー・コンピュータエンタテインメント プロセッサ、マルチプロセッサシステム、プロセッサシステム、情報処理装置および温度制御方法
CA2576508A1 (en) * 2004-08-04 2006-02-16 Osa Technologies, Inc. Software and firmware adaptation for unanticipated/changing hardware environments

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5557551A (en) * 1993-10-27 1996-09-17 International Business Machines Corporation Method and apparatus for a thermal protection unit
CN1505777A (zh) * 2000-08-11 2004-06-16 ���ǵ�����ʽ���� 用于计算机外围装置的节电设备和方法
CN1526089A (zh) * 2002-01-02 2004-09-01 ض� 用于热控制的确定性功率估计

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Anoop Iyer等.Power aware microarchitecture resource scaling.IEEE.2001,190-196. *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8831791B2 (en) 2009-04-29 2014-09-09 International Business Machines Corporation Processor cooling management

Also Published As

Publication number Publication date
CN101048722A (zh) 2007-10-03
EP1812845A1 (en) 2007-08-01
US7313709B2 (en) 2007-12-25
WO2006052470A1 (en) 2006-05-18
US7673158B2 (en) 2010-03-02
JP5356688B2 (ja) 2013-12-04
US20080059774A1 (en) 2008-03-06
US20080059775A1 (en) 2008-03-06
US20060101289A1 (en) 2006-05-11
JP2008519330A (ja) 2008-06-05
US7711968B2 (en) 2010-05-04

Similar Documents

Publication Publication Date Title
CN101048722B (zh) 一种管理电路中的热量的方法和系统
Gupta et al. Bundled execution of recurring traces for energy-efficient general purpose processing
CN105706050B (zh) 能量高效的多模式指令发布
Bazzaz et al. An accurate instruction-level energy estimation model and tool for embedded systems
Chang et al. Cycle-accurate energy measurement and characterization with a case study of the ARM7TDMI [microprocessors]
Roy et al. Software design for low power
Constantin et al. TamaRISC-CS: An ultra-low-power application-specific processor for compressed sensing
CN104541173B (zh) 用于对集成电路的功率消耗建模的方法和装置
Sultan et al. Processor power estimation techniques: a survey
CN108008715A (zh) 基于fpga的系统功率评估装置与方法
Feinberg et al. Commutative data reordering: a new technique to reduce data movement energy on sparse inference workloads
Sayed et al. Dynamic behavior predictions for fast and efficient hybrid STT-MRAM caches
Mayo Methods for the rapid solution of the pricing PIDEs in exponential and Merton models
Mohanty et al. ILP models for simultaneous energy and transient power minimization during behavioral synthesis
Dasygenis et al. Power and performance exploration of embedded systems executing multimedia kernels
Mohaqeqi et al. Analytical leakage/temperature-aware power modeling and optimization for a variable speed real-time system
Paci et al. Exploring temperature-aware design in low-power mpsocs
Brooks et al. Power-performance simulation: design and validation strategies
Finc et al. A systematic approach to profiling for hardware/software partitioning
Joshi et al. Energy-Efficient Approximate Arithmetic Circuit Design for Error Resilient Applications
Du et al. A Time Series Data Compression Co-processor Based on RISC-V Custom Instructions
Viitanen et al. Variable length instruction compression on transport triggered architectures
Ananda Kumar Learning-based architecture-level power modeling of CPUs
Pasha et al. A simulation framework for code-level energy estimation of embedded soft-core processors
Nikolaidis et al. Developing an environment for embedded software energy estimation

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

Granted publication date: 20110112

CF01 Termination of patent right due to non-payment of annual fee