CN1645294A - 在逻辑分区的数据处理系统中降低功耗的方法和装置 - Google Patents

在逻辑分区的数据处理系统中降低功耗的方法和装置 Download PDF

Info

Publication number
CN1645294A
CN1645294A CNA2005100045874A CN200510004587A CN1645294A CN 1645294 A CN1645294 A CN 1645294A CN A2005100045874 A CNA2005100045874 A CN A2005100045874A CN 200510004587 A CN200510004587 A CN 200510004587A CN 1645294 A CN1645294 A CN 1645294A
Authority
CN
China
Prior art keywords
processor
selected processor
group
data handling
handling system
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
CNA2005100045874A
Other languages
English (en)
Other versions
CN100338555C (zh
Inventor
马克·艾洛特·哈克
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.)
Intel 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 CN1645294A publication Critical patent/CN1645294A/zh
Application granted granted Critical
Publication of CN100338555C publication Critical patent/CN100338555C/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/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3851Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • 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
    • 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/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • 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

用于管理一组处理器的方法、装置和计算机指令。来自操作系统的一个呼叫被接收。该呼叫指出在该组处理器中的一个选定处理器在一段时间内不被需要。响应对这一呼叫的接收,选定处理器的操作被改变,以在该段时间减少对电源的使用。

Description

在逻辑分区的数据处理系统中 降低功耗的方法和装置
技术领域
本发明一般地涉及改进的数据处理系统,特别是涉及处理数据的方法和装置。更具体地说,本发明提供在逻辑分区的数据处理系统中降低功耗的方法、装置和计算机指令。
背景技术
随着提供给用户的处理能力的增强,数据处理系统在变得越来越强有力。处理能力的一种增强来自使用更快的处理器。处理能力的另一种增强是通过具有多个处理器的数据处理系统提供的。
在这类系统中,多个处理器用于完成不同的任务。在处置多个任务时,可以与这些处理器分割用于不同任务的线程的处理时间。在对称多处理系统(SMP)中,多个过程能在任何可得到的处理器中运行,而单个过程的多个线程能同时在不同的处理器上运行。所有处理器可以自动地用于运行系统中存在的任何线程。再有,多个线程可由不同的处理器并行地执行。结果,一个多线程的应用可同时运行多个线程,从而在较少的时间内完成更多的任务。
随着处理器数量的增大和这类多处理器数据处理系统速度的提高,功耗和生热变成更普遍的问题。例如,处理器产生的热量随处理器所用时钟频率的增加而增加。热量还随着多处理器数据处理系统中添加或包括更多处理器而上升。
在解决这些问题时,当前使用的技术是冷却系统和降低处理器操作频率。冷却系统往往是费钱的且会遭受失败。那类系统只解决热的问题而不解决功耗问题。降低数据处理系统中处理器时钟周期的频率要求将特定接口暴露于操作系统,这意味着降低功耗的方法是不透明的,在不修改操作系统的条件下不能被采用。
所以,如果有一种改进的方法、装置和计算机指令用于降低数据处理系统中的功耗,那会是很有好处的。
发明内容
本发明提供一种管理一组处理器的方法、装置和计算机指令。来自操作系统的一个呼叫被接收。该呼叫指出在该组处理器中的一个选定处理器在一段时间内不被需要。响应对这一呼叫的接收,选定处理器的操作被改变,以在该时段期间减少对电源的使用。
附图说明
在所附权利要求中提出了表征本发明的新特征。然而,结合附图阅读下文中对实施示例的详细描述,将会最好地理解发明本身以及优选的使用方式及其进一步的目的和优点,在这些附图中:
图1是可在其中实现本发明的数据处理系统的方块图;
图2是可在其中实现本发明的逻辑分区平台示例的方块图;以及
图3是根据本发明的优选实施例管理一个逻辑分区的数据处理系统中多个处理器的过程的流程图。
具体实施方式
越来越大的对称多处理器数据处理系统,如可从InternationalBusiness Machines Corporation得到的IBM eServer P690,可从Hewlett-Packard Company得到的DHP 9000 Superdome EnterpriceServer以及可从Sun Microsystems,Inc.得到的Sunfire 15K Server,都往往被分区,用作逻辑分区(LPAR)的数据处理系统。在数据处理系统内的逻辑分区功能允许单个操作系统的多个副本或多个异构操作系统同时在单个数据处理系统平台上运行。本发明可在这类LPAR数据处理系统中实现,以降低对电源的使用,无需将特定接口暴露于操作系统。
在其中运行操作系统映像(image)的分区(partition)被赋予平台资源的一个不重叠子集。该平台的可分配资源包括一个或多个体系结构上不同的处理器以及它们的中断管理区、系统存储器区以及输入/输出(I/O)适配器总线槽。分区资源由该平台的操作系统映像的固件代表。
在一个平台内运行的每个不同的操作系统或一个操作系统的映像被彼此防护,使得一个逻辑分区上的软件错误不能影响任何其他分区的正确操作。所提供的这一防护是通过分配由每个操作系统直接管理的不相交平台资源集合和通过提供保证各映像不能控制尚未分配给这一映像的任何资源的机制来实现的。再有,在控制一个操作系统所得到的资源时的软件错误受到防护使其不影响任何其他映像的资源。这样,操作系统的每个映像或每个不同的操作系统直接控制该平台内可分配资源的不同集合。对于一个逻辑分区的数据处理系统中的硬件资源,这些资源在各分区当中被不相交地共享。例如,这些资源可包括输入/输出(I/O)适配器、存储器DIMM、非易失随机存取存储器(NVRAM)以及硬盘驱动器。一个LPAR数据处理系统内的每个分区可被屡次启动或关掉,而无需开关整个数据处理系统电源。
本发明提供一种方法、装置和计算机指令,用于在包括多分区管理软件的多处理器系统,如LPAR数据处理系统中管理功耗。在用于管理分区的软件内可实现多个呼叫(call),以降低LPAR数据处理系统内选定处理器对电源的使用。在所示举例中,当管理多个分区的软件接收一个指示说明一个处理器在一段时间内被放弃(cede)或不被需要时,该处理器对电源的使用可予以降低。这一指示可通过从操作系统接收的呼叫或消息来识别。
现在参考附图,特别是参考图1,图中描绘可在其中实现本发明的一个数据处理系统的方块图。数据处理系统100可以是一个对称多处理器(SMP)系统,包括多个处理器101、102、103及104连接于系统总线106。例如,数据处理系统100可以是IBM eServer,这是位于Armonk,New York的International Business MachinesCorporation的产品,实现为网络内的一个服务器。或者可利用单处理器系统。也与系统总线106连接的是存储器控制器/高速缓存108,它提供与多个局部(local)存储器160-163的接口。I/O总线桥110连接于系统总线106并提供与I/O总线112的接口。如图所示,存储器控制器/高速缓存108和I/O总线桥110可集成在一起。
数据处理系统100是一个逻辑分区(LPAR)的数据处理系统。这样,数据处理系统100可有多个异构操作系统(或单个操作系统的多个实例)同时运行。这多个操作系统每个可有任何数量的软件在其中执行。数据处理系统100被逻辑分区,使得不同的PCI I/O适配器120-121、128-129以及136、图形适配器148和硬盘适配器149可赋予不同的逻辑分区。在这种情况下,图形适配器148为显示设备(未示出)提供连接,而硬盘适配器149提供连接以控制硬盘150。
这样,例如,假定数据处理系统100被分成三个逻辑分区P1、P2和P3。PCI I/O适配器120-121、128-129、136的每一个,图形适配器148,硬盘适配器149,主机处理器101-104的每一个,以及局部存储器160-163中的存储器,各被赋予到这三个分区的每一个。在这些举例中,存储器160-163可采取双列直插存储模块(DIMM)。DIMM通常不是基于每个DIMM被赋予到各分区。相反,一个分区将得到由平台看到的整个存储器的一部分。例如,存储器101、局部存储器160-163的存储器的某一部分、以及I/O适配器120、128和129可被赋予到逻辑分区P1;处理器102-103、局部存储器160-163的存储器的某些部分、以及PCI I/O适配器121和136可被赋予到分区P2;而处理器104、局部存储器160-163的存储器的某一部分、图形适配器148以及硬盘适配器149可被赋予到逻辑分区P3。
在数据处理系统100内执行的每个操作系统被赋予到一个不同的逻辑分区。这样,在数据处理系统100内执行的每个操作系统只可访问在其逻辑分区内的那些I/O单元。这样,例如,高级交互执行(AIX)操作系统的一个实例可在分区P1内执行,AIX操作系统的第二实例(映像)可在分区P2内执行,而一个Windows XP操作系统可在逻辑分区P3内执行。Windows XP是Redmond,Washington的MicrosoftCorporation的产品和商标。
与I/O总线112连接的外围部件互连(PCI)主桥(host bridge)提供到PCI局部(local)总线115的接口。若干PCI输入/输出适配器120-121可通过PCI至PCI桥116、PCI总线118、PCI总线119、I/O槽170和I/O槽171与PCI总线115相连。PCI至PCI桥116提供到PCI总线118和PCI总线119的接口。PCI I/O适配器120和121分别被放入I/O槽170和171。典型的PCI总线实现将支持至八个I/O适配器(即用于添加连接器的扩展槽)。每个PCI I/O适配器120-121提供数据处理系统100和作为数据处理系统100的客户机的输入/输出设备(如其他网络计算机)之间的接口。
附加的PCI主桥122提供用于附加PCI总线123的接口。PCI总线123连接到多个PCI I/O适配器128-129。PCI I/O适配器128-129可通过PCI至PCI桥124、PCI总线126、PCI总线127、I/O槽172及I/O槽173与PCI总线123相连。PCI至PCI桥124提供到PCI总线126和PCI总线127的接口。PCI I/O适配器128和129分别被放入I/O槽172和173。以这种方式,通过每个PCI I/O适配器128-129可支持附加的I/O设备,如调制解调器或网络适配器。以这种方式,数据处理系统100允许连接于多个网络计算机。
插入I/O槽174的存储器映射图形适配器148可通过PCI总线144、PCI到PCI桥142、PCI总线141和PCI主桥140连接到I/O总线112。硬盘适配器149可被放在I/O槽175中,I/O槽175与PCI总线145相连。这一总线又与PCI到PCI桥142相连,PCI到PCI桥142又通过PCI总线141与PCI主桥140相连。
PCI主桥130为PCI总线131提供连接到I/O总线112的接口。PCI I/O适配器136连接于I/O槽176,I/O槽176由PCI总线133连接于PCI到PCI桥132。PCI到PCI桥132连接于PCI总线131。这一PCI总线还将PCI主桥130连接于服务处理器邮箱接口和ISA总线访问通过逻辑194以及PCI到PCI桥132。服务处理器邮箱接口和ISA总线访问通过逻辑194转发PCI/ISA桥193为目的地的PCI访问。NVRAM存储器192连接于ISA总线196。服务处理器135通过它的局部PCI总线195耦合于服务处理器邮箱和ISA访问通过逻辑194。服务处理器135还经由多个JTAG/I2C总线134连接于处理器101-104。JTAP/I2C总线134是JTAG/scan总线(见IEEE 1149.1)和Phillips I2C总线的组合。然而,另一种作法是JTAG/I2C总线134可以只由PhillipsI2C总线或只由JTAG/scan取代。主机处理器101、102、103和104的所有SP-ATTN信号一起与服务处理器的中断输入信号相连。服务处理器135有它自己的局部存储器191并能访问硬件OP面板190。
当数据处理系统100初始被加电时,服务处理器135使用JTAG/I2C总线134向系统(主机)处理器101-104、存储器控制器/高速缓存108以及I/O桥110提出质询。在完成这一步骤时,服务处理器135有了数据处理系统100的资源清单和对其拓扑结构的理解。服务处理器135还对质询主机处理器101-104、存储器控制器/高速缓存108以及I/O桥110所发现的所有部件执行内置自测试(BIST)、基本保证(assurance)测试(BAT)以及存储器测试。服务处理器135收集和报告在BIST、BAT和存储器测试过程中检测到的失败的任何出错信息。
如果在去掉BIST、BAT和存储器测试过程中发现失效的部件之后系统资源的有意义/有效配置仍然可能,则数据处理系统100被允许前进到将可执行代码加载到局部(主机)存储器160-163。然后,服务处理器135释放主机处理器101-104,供执行加载到局部存储器160-163的代码。当主机处理器101-104执行来自数据处理系统100内各操作系统的代码时,服务处理器135进入监视和报告差错方式。由服务处理器135监视的项目类型包括例如冷却扇速度和操作、热传感器、电源调节器以及由处理器101-104、局部存储器160-163和I/O桥110报告的可恢复和不可恢复差错。
服务处理器135负责保存和报告关于数据处理系统100中所有被监视项目的差错信息。服务处理器135还根据差错类型和定义的阀值采取行动。例如,服务处理器135可把过量的可恢复差错记录在一个处理器的高速缓存存储器并确定这是一个硬件故障的预兆。根据这一确定,服务服务器135可标明在当前运行时段和将来的初始程序加载(IPL)期间那个资源从配置中去掉。有时IPL也称作“自举”或“自展”。
可使用各种市场上可得到的计算机系统实现数据处理系统100。例如,可使用从International Business Machines Corporation可得到的IBM eServer iSeries Model 840系统实现数据处理系统100。这样的系统可支持使用OS/400操作系统进行逻辑分区,该操作系统也可从International Business Machines Corporation得到。
本领域普通技术人员将会理解,图1中描绘的硬件可以改变。例如,其他外围设备,如光盘设备等,也可用于添加于或替换所描绘的硬件。所描绘的举例不意味着对本发明有体系结构限制。
现在参考图2,图中描绘了可在其中实现本发明的示例性逻辑分区的平台的方块图。在逻辑分区的平台200中的硬件可作为例如图1中的数据处理系统100来实现。逻辑分区平台200包括被分区的硬件230、操作系统202以及分区管理固件210。通常,逻辑分区平台200除操作系统202外还包含若干操作系统。在这些示例中,针对单个分区中的单个操作系统描述本发明的机制。当然,本发明也可在多个分区中含有多个操作系统的逻辑分区平台中实现。当使用多操作系统时,这些操作系统可以是在逻辑分区平台200上同时运行的单一操作系统的多个副本或多个异构操作系统。
在这些示例中,操作系统202可以用OS/400实现,它被设计成与开放(open)固件,如一个管理程序(hypervisor)接口,该固件可从International Business Machines Corporation得到。操作系统202位于单个分区203中。再有,分区203包括固件加载器211。固件加载器211可以用IEEE-1275标准开放固件和运行时抽象(runtimeabstraction)软件(RTAS)实现,其可从International BusinessMachines Corporation得到。当分区203被实例化时,由管理程序的分区管理器将开放固件的一个副本加载到分区203。于是,与分区203关联的或赋予到分区203的处理器被调度到该分区的存储器以执行该分区固件。
被分区的硬件230包括多个处理器232-238、多个系统存储器单元240-246、多个输入/输出(I/O)适配器248-262以及存储单元270。被分区的硬件230还包括服务处理器290,它可提供各种服务,如在分区中处理差错。处理器232-238、存储器单元240-246、NVRAM 298以及I/O适配器248-262的每一个被赋予到逻辑分区的平台200内的分区203。如果存在多个分区,则在被分区的硬件230内的不同部件可能赋予到不同的分区。
分区管理固件(管理程序)210为逻辑分区平台200中的分区203执行多种功能和服务。分区管理固件210是由固件实现的与底层硬件相同的虚拟机。管理程序软件是一类分区管理固件,它可从International Business Machines Corporation得到。固件是存储在存储器芯片中的“软件”,该芯片保持其内容而无需电源,如只读存储器(ROM)、可编程ROM(PROM)、可擦可编程ROM(EPROM)、电可擦可编程ROM(EEPROM)以及非易失随机存取存储器(非易失RAM)。这样,分区管理固件210允许通过虚拟化逻辑分区平台200的全部硬件资源来同时执行多个独立的OS映像。
可通过硬件管理控制台,如硬件管理控制台280来控制不同分区的操作。硬件管理控制台280是一个单独的数据处理系统,系统管理员可从它那里实现各种功能,包括向不同分区重新分配资源。利用这类系统,可采用子处理器分区。这类分区允许一个物理处理器被映射到多个逻辑处理器,以支持比物理处理器更大量的逻辑处理器。以这种方式,可以支持比物理存储器更大量的分区。
在这些示例中,只使用单个分区。本发明的机制响应操作系统202对分区管理固件210的呼叫,管理处理器的功耗。当一个逻辑处理器在一段时间内可不被需要时,操作系统202向分区管理固件210发送一个消息或呼叫。这些呼叫是那些通常在逻辑分区平台中用于子处理器分区的呼叫,以请求或放弃对一个逻辑处理器的使用。利用子处理器分区,分区管理固件210能控制不同分区中对单个处理器的分配和使用。利用这类分区,一个处理器可被分配给不只一个分区。换言之,这类配置允许实现比系统中的物理处理器更大量的分区。
本发明的机制以对分区203中执行的程序透明的方式使用这一呼叫或消息传送系统以降低功耗和生热。在一个处理器不被需要的一段时间,不是允许该处理器被另一个分区使用,而是使该处理器置于节能方式。本发明的机制不要求任何特定类型的节能方式,而是可以使用任何类型的节能机制。
特别是,操作系统202可产生一个对分区管理固件210的空闲呼叫。这一呼叫是一个消息,其中包括与逻辑处理器关联的物理处理器要被放弃或不被需要的时间长度。分区管理固件210响应接收来自操作系统202的空闲呼叫,可把该物理处理器置于节能方式。例如,这一节能方式可包括降低时钟速度的频率或将处理器置于睡眠方式。当一个处理器处于睡眠方式时,整个处理器被完全关掉,只有处理器状态被存储在一个动态随机存取存储器(DRAM)中供快速恢复。在这种方式下,外部处理器总线时钟被停止。
以这种方式,本发明的机制允许在多处理器数据处理系统中当那些处理器在一段时间内不被需要时通过将处理器置于节能方式来减少对电源的使用,本发明的机制可以以任何支持分区的操作系统实现,因为这一机制独立于任何操作系统对减少电源使用的支持。再有,本发明的机制对性能有最小影响,因为只有当存在空闲时间时处理器才被置于节能方式。
现在转到图3,图中根据本发明的一个优选实施例描绘了在逻辑分区的数据处理系统中管理处理器的过程的流程图。图3中所示过程可在一个控制过程中实现,如在图2中的分区管理固件中实现。在这些示例中,这一过程与只有单个分区的逻辑分区数据处理系统相比较,如图2中的逻辑分区平台200。当然,这一机制也可应用于具有不只一个分区的系统。
该过程以接收一个要放弃该逻辑处理器的呼叫开始(步骤300)。这一呼叫是从一个操作系统接收的,它通常是在该操作系统对一个逻辑处理器没有需求的时候产生。这一呼叫也称作空闲呼叫,包括要被放弃的处理器的标识以及该处理器要被放弃的时间长度。在这些例子中,处理器的映射是一个逻辑处理器对一个物理处理器。结果,当从一个操作系统接收一个呼叫时,与该逻辑处理器关联的物理处理器可能被置于节能状态,这一点是清楚的。
接下来,确定一个等待时间,即该处理器不被需要的时间,是否小于一个阈值(步骤302),该阈值的确定可根据将该处理器置于节能方式和/或使该处理器返回正常操作方式所需要的时间。如果该等待时间不小于该阈值,则映射到该逻辑处理器的物理处理器被置于节能方式(步骤304)。这一节能方式可采取各种形式,例如,处理器可被置于睡眠方式,可降低时钟速度,或者任何其他节能方法或机制可予以使用。可执行其他任务以防止该处理器在节能方式时被访问。例如,对于该处理器可禁止中断。
然后,该处理器等待一个事件(步骤306)。该事件可以是该处理器不被操作系统需要或被操作系统放弃的时间的终止。再有,该事件还可以是例如操作系统请求该逻辑处理器的一个指示。在接收该事件之后,进行后处理(步骤308),然后控制返回到呼叫方。后处理涉及将物理处理器置回先前的操作方式以及进行为允许处理器完成工作或任务所需的任何任务。回来参考步骤302,如果等待阈值条件未满足,则过程也将控制返回到呼叫方,而不把该处理器置于节能方式。
这样,本发明的机制提供在多处理器数据处理系统中降低功耗的方法、装置和计算机指令。在这些示例中本发明的机制是在单处理器或多处理器数据处理系统中实现的,其中存在管理一个或多个分区的控制程序。在这类系统中,当一个逻辑分区在某一选定时间段内不被一个操作系统所需要时,该操作系统向该控制程序发出一个呼叫。响应这一呼叫,映射到该逻辑处理器的物理存储器被置于节能方式,直至发生某个选定的事件,如选定的时间段终止。以这种方式,在一个处理器的空闲时间,对电源的使用减小。这一机制避免或最大限度减小性能的降低,因为只使用空闲时间。
尽管所示举例是针对只有单个分区的逻辑分区的数据处理系统,但通过记录下列事实,本发明的机制可应用于多个分区,所记录的事实是:该处理器处在睡眠方式,因而在收到一个事件以使该处理器恢复到完全操作方式之前,该处理器不能作为活动处理器参与。
指出下述内容是重要的:尽管在全功能数据处理系统的环境中描述了本发明,但本领域普通技术人员将会理解,本发明的过程能以指定的计算机可读介质形式和多种形式分发,而且本发明同样地适用,不论实际用于进行这种分发的信号承载介质的具体类型如何。计算机可读介质的实例包括:可记录型介质,如软盘、硬盘驱动器、RAM、CD-ROM、DVD-ROM,以及传输型介质,如数字的和模拟的通信链路。以及使用射频和光波通信等传输形式的有线或无线通信。计算机可读介质可采取编码格式的形式,在具体的数据处理系统中它们被解码以供实际使用。
本发明的描述是为了说明和描述的目的,而非以所公开的形式穷尽或限制本发明。许多修改和变化对于本领域技术人员是显然的。选择和描述该实施例是为了最好地解释本发明的原理和实际应用,并使本领域其他普通技术人员能理解本发明以实现具有各种修改的各种实施例,使其适用于所考虑的具体应用。

Claims (25)

1.一种在数据处理系统中管理一组处理器的方法,该方法包含:
接收来自一个操作系统的呼叫,其中该呼叫指出在这组处理器中的一个选定处理器在一段时间内不被需要;以及
改变选定处理器的操作,以在该段时间内减少对电源的使用。
2.权利要求1的方法,其中呼叫是一个子处理器分区呼叫。
3.权利要求1的方法,其中该段时间是选定处理器存在空闲周期的时间。
4.权利要求1的方法,其中在改变选定处理器的操作之前,所选定的处理器处于一种原始状态,该方法进一步包含:
在该段时间已过去之后,使选定处理器返回原始状态。
5.权利要求4的方法,进一步包含:
如果该段时间尚未过去而收到一个外部中断,指出该选定处理器存在要做的工作,则使选定处理器返回到原始状态。
6.权利要求1的方法,其中接收步骤和改变步骤由运行时抽象层完成。
7.权利要求1的方法,其中改变步骤包含:
降低选定处理器的时钟速度。
8.权利要求1的方法,其中改变步骤包含:
将选定处理器置于睡眠方式。
9.一种管理一组处理器的数据处理系统,该数据处理系统包含:
接收装置,用于接收来自一个操作系统的呼叫,其中该呼叫指出在这组处理器中的一个选定处理器在一段时间内不被需要;以及
改变装置,用于改变选定处理器的操作,以在该段时间内减少对电源的使用。
10.权利要求9的数据处理系统,其中呼叫是一个子处理器分区呼叫。
11.权利要求9的数据处理系统,其中该段时间是选定处理器存在空闲周期的时间。
12.权利要求9的数据处理系统,其中在改变选定处理器的操作之前,所选定的处理器处于一种原始状态,该数据处理系统进一步包含:
返回装置,用于在该段时间过去之后使选定处理器返回原始状态。
13.权利要求12的数据处理系统,其中该返回装置是第一返回装置,该数据处理系统进一步包含:
第二返回装置,用于如果该段时间尚未过去而收到一个外部中断,指出该处理器存在要做的工作,则使选定处理器返回到原始状态。
14.权利要求9的数据处理系统,其中接收装置和改变装置位于一个运行时抽象层。
15.权利要求9的数据处理系统,其中改变装置包含:
降低装置,用于降低选定处理器的时钟速度。
16.权利要求9的数据处理系统,其中改变装置包含:
设置装置,用于将选定处理器置于睡眠方式。
17.在计算机可读介质中的用于管理一组处理器的计算机程序产品,该计算机程序产品包含:
第一组指令,用于接收来自一个操作系统的呼叫,其中该呼叫指出在这组处理器中的一个选定处理器在一段时间内不被需要;以及
第二组指令,用于改变选定处理器的操作,以在该段时间内减少对电源的使用。
18.权利要求17的计算机程序产品,其中呼叫是一个子处理器分区呼叫。
19.权利要求17的计算机程序产品,其中该段时间是选定处理器存在空闲周期的时间。
20.权利要求17的计算机程序产品,其中在改变选定处理器的操作之前,所选定的处理器处于一种原始状态,该计算机程序产品进一步包含:
第三组指令,用于在该段时间已过去之后使选定处理器返回原始状态。
21.权利要求20的计算机程序产品,进一步包含:
第四组指令,用于如果该段时间尚未过去而收到一个外部中断,指出该选定处理器存在要做的工作,则使选定处理器返回到原始状态。
22.权利要求17的计算机程序产品,其中第一组指令和第二组指令位于一个运行时抽象层。
23.权利要求17的计算机程序产品,其中第二组指令包含:
子组指令,用于降低选定处理器的时钟速度。
24.权利要求17的计算机程序产品,其中第二组指令包含:
子组指令,用于将选定处理器置于睡眠方式。
25.一种数据处理系统,包含:
总线系统;
与总线系统连接的存储器,其中该存储器包括一组指令;以及
与总线系统连接的处理单元,其中该处理单元执行一组指令,以接收来自一个操作系统的呼叫,其中该呼叫指出在这组处理器中的一个选定处理器在一段时间内不被需要;以及改变选定处理器的操作,以在该段时间内减少对电源的使用。
CNB2005100045874A 2004-01-22 2005-01-18 在逻辑分区的数据处理系统中降低功耗的方法和装置 Expired - Fee Related CN100338555C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/763,094 2004-01-22
US10/763,094 US7334142B2 (en) 2004-01-22 2004-01-22 Reducing power consumption in a logically partitioned data processing system with operating system call that indicates a selected processor is unneeded for a period of time

Publications (2)

Publication Number Publication Date
CN1645294A true CN1645294A (zh) 2005-07-27
CN100338555C CN100338555C (zh) 2007-09-19

Family

ID=34794977

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100045874A Expired - Fee Related CN100338555C (zh) 2004-01-22 2005-01-18 在逻辑分区的数据处理系统中降低功耗的方法和装置

Country Status (5)

Country Link
US (2) US7334142B2 (zh)
JP (1) JP4181554B2 (zh)
KR (1) KR100724507B1 (zh)
CN (1) CN100338555C (zh)
TW (1) TWI329264B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101965547B (zh) * 2008-03-03 2013-08-21 惠普开发有限公司 基于软件的功率封顶
CN104346240A (zh) * 2013-08-05 2015-02-11 国际商业机器公司 用于在迁移操作期间利用多个存储器池的方法和装置

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4257783B2 (ja) * 2003-10-23 2009-04-22 株式会社日立製作所 論理分割可能な記憶装置及び記憶装置システム
JP4549652B2 (ja) * 2003-10-27 2010-09-22 パナソニック株式会社 プロセッサシステム
JP4227035B2 (ja) * 2004-02-03 2009-02-18 株式会社日立製作所 計算機システム、管理装置、ストレージ装置及びコンピュータ装置
JP2005267008A (ja) * 2004-03-17 2005-09-29 Hitachi Ltd ストレージ管理方法およびストレージ管理システム
WO2006100747A1 (ja) * 2005-03-18 2006-09-28 Fujitsu Limited サービスプロセッサを用いたcpu縮退システム及び縮退方法
US7363463B2 (en) * 2005-05-13 2008-04-22 Microsoft Corporation Method and system for caching address translations from multiple address spaces in virtual machines
US7539882B2 (en) 2005-05-30 2009-05-26 Rambus Inc. Self-powered devices and methods
US9721210B1 (en) * 2013-11-26 2017-08-01 Invent.ly LLC Predictive power management in a wireless sensor network
US9946571B1 (en) 2005-05-30 2018-04-17 Invent.Ly, Llc Predictive power management in a wireless sensor network using activity costs
US9846479B1 (en) 2005-05-30 2017-12-19 Invent.Ly, Llc Smart security device with monitoring mode and communication mode
US9791910B1 (en) 2005-05-30 2017-10-17 Invent.Ly, Llc Predictive power management in a wireless sensor network using presence detection
US7631199B2 (en) * 2005-06-30 2009-12-08 Intel Corporation Various methods and apparatuses for power states in a controller
GB0519981D0 (en) * 2005-09-30 2005-11-09 Ignios Ltd Scheduling in a multicore architecture
US8909946B2 (en) 2005-11-15 2014-12-09 Microsoft Corporation Efficient power management of a system with virtual machines
US7802073B1 (en) * 2006-03-29 2010-09-21 Oracle America, Inc. Virtual core management
US7987464B2 (en) * 2006-07-25 2011-07-26 International Business Machines Corporation Logical partitioning and virtualization in a heterogeneous architecture
US20080263324A1 (en) * 2006-08-10 2008-10-23 Sehat Sutardja Dynamic core switching
US7849334B2 (en) * 2006-09-29 2010-12-07 Intel Coporation Transitioning a computing platform to a low power system state
US9092250B1 (en) * 2006-10-27 2015-07-28 Hewlett-Packard Development Company, L.P. Selecting one of plural layouts of virtual machines on physical machines
US8732699B1 (en) 2006-10-27 2014-05-20 Hewlett-Packard Development Company, L.P. Migrating virtual machines between physical machines in a define group
US8185893B2 (en) * 2006-10-27 2012-05-22 Hewlett-Packard Development Company, L.P. Starting up at least one virtual machine in a physical machine by a load balancer
US8296760B2 (en) * 2006-10-27 2012-10-23 Hewlett-Packard Development Company, L.P. Migrating a virtual machine from a first physical machine in response to receiving a command to lower a power mode of the first physical machine
US8694712B2 (en) * 2006-12-05 2014-04-08 Microsoft Corporation Reduction of operational costs of virtual TLBs
US8694999B2 (en) * 2006-12-07 2014-04-08 Wind River Systems, Inc. Cooperative scheduling of multiple partitions in a single time window
US7900069B2 (en) 2007-03-29 2011-03-01 Intel Corporation Dynamic power reduction
US8281308B1 (en) 2007-07-23 2012-10-02 Oracle America, Inc. Virtual core remapping based on temperature
JPWO2009022371A1 (ja) 2007-08-16 2010-11-04 ネットクリアスシステムズ株式会社 タスク処理装置
US8341626B1 (en) 2007-11-30 2012-12-25 Hewlett-Packard Development Company, L. P. Migration of a virtual machine in response to regional environment effects
US8615647B2 (en) 2008-02-29 2013-12-24 Intel Corporation Migrating execution of thread between cores of different instruction set architecture in multi-core processor and transitioning each core to respective on / off power state
JP5211778B2 (ja) * 2008-03-17 2013-06-12 富士通株式会社 ジョブ割当装置、並列計算機システム、ジョブ割当方法、及び、ジョブ割当プログラム
US8904383B2 (en) * 2008-04-10 2014-12-02 Hewlett-Packard Development Company, L.P. Virtual machine migration according to environmental data
US8910169B2 (en) * 2008-09-30 2014-12-09 Intel Corporation Methods and systems to perform a computer task in a reduced power consumption state
US8209554B2 (en) * 2009-02-23 2012-06-26 International Business Machines Corporation Applying power management on a partition basis in a multipartitioned computer system
JP5359401B2 (ja) * 2009-03-11 2013-12-04 富士通株式会社 プログラム、コンピュータ及び制御方法
US8806501B2 (en) * 2010-03-31 2014-08-12 International Business Machines Corporation Predictive dynamic system scheduling
US8407499B2 (en) * 2010-04-20 2013-03-26 International Business Machines Corporation Optimizing power management in partitioned multicore virtual machine platforms by uniform distribution of a requested power reduction between all of the processor cores
US8381002B2 (en) 2010-06-23 2013-02-19 International Business Machines Corporation Transparently increasing power savings in a power management environment
EP2596432A4 (en) * 2010-07-21 2016-06-15 Hewlett Packard Development Co ACCESSING A LOCAL STORAGE DEVICE USING AN AUXILIARY PROCESSOR
US8448006B2 (en) 2010-10-19 2013-05-21 International Business Machines Corporation Performing virtual and/or physical resource management for power management
KR101510028B1 (ko) * 2010-12-21 2015-04-08 인텔 코포레이션 전력 관리를 위한 시스템 및 방법
JP5786870B2 (ja) * 2011-02-02 2015-09-30 日本電気株式会社 分散システム、装置、方法及びプログラム
JP2012208925A (ja) * 2011-03-16 2012-10-25 Canon Inc 印刷システム、印刷システムの電力制御方法及びプログラム
JP5483465B2 (ja) * 2011-04-14 2014-05-07 エヌイーシーコンピュータテクノ株式会社 コンピュータシステム、及び省電力制御方法
WO2013019185A1 (en) 2011-07-29 2013-02-07 Hewlett-Packard Development Company, L.P. Migrating virtual machines
KR101261354B1 (ko) * 2012-02-29 2013-05-07 국민대학교산학협력단 가상화 기반의 cpu 쿨링 제어 방법 및 이를 수행하는 컴퓨팅 장치

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5396635A (en) * 1990-06-01 1995-03-07 Vadem Corporation Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system
US5765011A (en) * 1990-11-13 1998-06-09 International Business Machines Corporation Parallel processing system having a synchronous SIMD processing with processing elements emulating SIMD operation using individual instruction streams
US5752011A (en) * 1994-06-20 1998-05-12 Thomas; C. Douglas Method and system for controlling a processor's clock frequency in accordance with the processor's temperature
US5630110A (en) * 1996-03-01 1997-05-13 Samsung Electronics Co., Ltd. Method and apparatus for enhancing performance of a processor
BR9713426A (pt) * 1996-11-25 2000-01-25 Metrologic Instr Inc Sistema e método para a execução de transações relacionadas a informações,
US6741978B1 (en) * 2000-04-12 2004-05-25 Intel Corporation Accessing file data stored in non-volatile re-programmable semiconductor memories
US6684343B1 (en) * 2000-04-29 2004-01-27 Hewlett-Packard Development Company, Lp. Managing operations of a computer system having a plurality of partitions
US7137117B2 (en) * 2000-06-02 2006-11-14 Microsoft Corporation Dynamically variable idle time thread scheduling
JP2002041304A (ja) * 2000-07-28 2002-02-08 Hitachi Ltd 論理区画の予備リソース自動付与方法及び論理区画式計算機システム
US6718474B1 (en) * 2000-09-21 2004-04-06 Stratus Technologies Bermuda Ltd. Methods and apparatus for clock management based on environmental conditions
US6957435B2 (en) * 2001-04-19 2005-10-18 International Business Machines Corporation Method and apparatus for allocating processor resources in a logically partitioned computer system
US6912401B2 (en) 2001-05-15 2005-06-28 Qualcomm Incorporated Communication device for providing an efficient dormant mode for a group communication network
US6901522B2 (en) * 2001-06-07 2005-05-31 Intel Corporation System and method for reducing power consumption in multiprocessor system
JP4199444B2 (ja) * 2001-08-30 2008-12-17 日本電気株式会社 パーティション構成変更方式、パーティション構成変更方法およびパーティション構成変更用プログラム
US7111178B2 (en) * 2001-09-28 2006-09-19 Intel Corporation Method and apparatus for adjusting the voltage and frequency to minimize power dissipation in a multiprocessor system
US7318164B2 (en) * 2001-12-13 2008-01-08 International Business Machines Corporation Conserving energy in a data processing system by selectively powering down processors
TW552499B (en) 2002-04-12 2003-09-11 Asustek Comp Inc Instantaneously switching apparatus of power source efficiency mode for computer system
US6996728B2 (en) 2002-04-26 2006-02-07 Hewlett-Packard Development Company, L.P. Managing power consumption based on utilization statistics
JP4119162B2 (ja) * 2002-05-15 2008-07-16 株式会社日立製作所 多重化計算機システム、論理計算機の割当方法および論理計算機の割当プログラム
US7219241B2 (en) * 2002-11-30 2007-05-15 Intel Corporation Method for managing virtual and actual performance states of logical processors in a multithreaded processor using system management mode
US7028218B2 (en) 2002-12-02 2006-04-11 Emc Corporation Redundant multi-processor and logical processor configuration for a file server
US7451332B2 (en) * 2003-08-15 2008-11-11 Apple Inc. Methods and apparatuses for controlling the temperature of a data processing system
US7222203B2 (en) * 2003-12-08 2007-05-22 Intel Corporation Interrupt redirection for virtual partitioning
US7272420B2 (en) * 2004-01-14 2007-09-18 Microsoft Corporation Mobile device interface and adaptation system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101965547B (zh) * 2008-03-03 2013-08-21 惠普开发有限公司 基于软件的功率封顶
CN104346240A (zh) * 2013-08-05 2015-02-11 国际商业机器公司 用于在迁移操作期间利用多个存储器池的方法和装置
CN104346240B (zh) * 2013-08-05 2018-03-30 国际商业机器公司 用于在迁移操作期间利用多个存储器池的方法和装置

Also Published As

Publication number Publication date
JP2005209198A (ja) 2005-08-04
CN100338555C (zh) 2007-09-19
KR20050076747A (ko) 2005-07-27
US20050166074A1 (en) 2005-07-28
US7334142B2 (en) 2008-02-19
US20080091964A1 (en) 2008-04-17
TWI329264B (en) 2010-08-21
TW200538948A (en) 2005-12-01
KR100724507B1 (ko) 2007-06-07
JP4181554B2 (ja) 2008-11-19
US7702936B2 (en) 2010-04-20

Similar Documents

Publication Publication Date Title
CN100338555C (zh) 在逻辑分区的数据处理系统中降低功耗的方法和装置
US7343521B2 (en) Method and apparatus to preserve trace data
US7426657B2 (en) System and method for predictive processor failure recovery
US7480911B2 (en) Method and apparatus for dynamically allocating and deallocating processors in a logical partitioned data processing system
US6920587B2 (en) Handling multiple operating system capabilities in a logical partition data processing system
CN101946235B (zh) 用于在共享处理器分区环境中移动线程的方法及装置
US7467325B2 (en) Processor instruction retry recovery
US7194641B2 (en) Method and apparatus for managing power and thermal alerts transparently to an operating system in a data processing system with increased granularity in reducing power usage and thermal generation
Wang et al. Proactive process-level live migration and back migration in HPC environments
US6865688B2 (en) Logical partition management apparatus and method for handling system reset interrupts
US8307367B2 (en) Smart scheduling of automatic partition migration by the use of timers
US7257734B2 (en) Method and apparatus for managing processors in a multi-processor data processing system
US8949659B2 (en) Scheduling workloads based on detected hardware errors
US20120054466A1 (en) Application run-time memory optimizer
US20080250268A1 (en) Method, system, and product for providing extended error handling capability in host bridges
US20120272016A1 (en) Memory affinitization in multithreaded environments
US20030172322A1 (en) Method and apparatus for analyzing hardware errors in a logical partitioned data processing system
US8024544B2 (en) Free resource error/event log for autonomic data processing system
US20100083269A1 (en) Algorithm for fast list allocation and free
US7370240B2 (en) Method and apparatus for preserving trace data in a logical partitioned data processing system
US7302690B2 (en) Method and apparatus for transparently sharing an exception vector between firmware and an operating system
US7275185B2 (en) Method and apparatus for device error log persistence in a logical partitioned data processing system

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
ASS Succession or assignment of patent right

Owner name: INTEL CORP .

Free format text: FORMER OWNER: INTERNATIONAL BUSINESS MACHINES CORPORATION

Effective date: 20130913

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20130913

Address after: American California

Patentee after: Intel Corporation

Address before: American New York

Patentee before: International Business Machines Corp.

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

Granted publication date: 20070919

Termination date: 20170118

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