CN101965547B - 基于软件的功率封顶 - Google Patents

基于软件的功率封顶 Download PDF

Info

Publication number
CN101965547B
CN101965547B CN2008801278360A CN200880127836A CN101965547B CN 101965547 B CN101965547 B CN 101965547B CN 2008801278360 A CN2008801278360 A CN 2008801278360A CN 200880127836 A CN200880127836 A CN 200880127836A CN 101965547 B CN101965547 B CN 101965547B
Authority
CN
China
Prior art keywords
power
thread
low
threshold value
software
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.)
Active
Application number
CN2008801278360A
Other languages
English (en)
Other versions
CN101965547A (zh
Inventor
D·J·切普利斯
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.)
Hewlett Packard Enterprise Development LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN101965547A publication Critical patent/CN101965547A/zh
Application granted granted Critical
Publication of CN101965547B publication Critical patent/CN101965547B/zh
Active 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4893Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues taking into account power or heat criteria
    • 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
    • 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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • 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
    • 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
    • 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
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Power Sources (AREA)

Abstract

本发明涉及功率消耗,并且具体来说涉及管理和控制计算机系统中的功率消耗的装置、方法和计算机可读介质。具体来说,本发明通过控制由处理器执行的线程的类型来管理功率消耗。本发明监控系统的资源来确定该系统的功率消耗。如果功率消耗大高,则本发明发出更多的低功率线程来由处理器执行。

Description

基于软件的功率封顶
技术领域
本发明涉及功率消耗,并且具体来说涉及管理和控制计算机系统中的功率消耗的装置、方法和计算机可读介质。
背景技术
期望有效地管理计算机系统和数据中心中的功率消耗和热量生成。
发明内容
本发明的第一实施例涉及一种用于控制功率使用(power usage)的装置,所述装置包括一个或多个计算机,所述一个或多个计算机中(therein)包括以下部件或者如果多于一个计算机的话在它们当中(among them)包括以下部件:软件监控部件,其在操作中监控与该装置中的功率使用有关的一个或多个变量;以及起动部件,其在与功率使用有关的一个或多个变量的值超过该变量的阈值的情况下基于从软件监控部件发出的指令来起动至少一个低功率线程。
本发明的第二实施例涉及一种用于控制计算机系统中的功率使用的方法,其包括下述步骤:电子地监控与该系统中的功率使用有关的一个或多个变量;以及在与功率使用有关的一个或多个变量的值超过该变量的阈值的情况下基于从该计算机系统上的软件发出的指令来电子地起动至少一个低功率线程。
本发明的第三实施例涉及一种计算机可读介质,其上安装有计算机可读代码,当被执行时,所述计算机可读代码执行一种用于控制计算机系统中的功率使用的方法,该方法包括下述步骤:监控与该系统中的功率使用有关的一个或多个变量,以及在与功率使用有关的一个或多个变量的值超过该变量的阈值的情况下基于从该系统上的软件发出的指令来起动至少一个低功率线程。
本发明的第四实施例涉及一种用于控制功率使用的装置,其包括用于监控与该系统中的功率使用有关的一个或多个变量的组件,以及用于在与功率使用有关的一个或多个变量的值超过该变量的阈值的情况下基于从该系统上的软件发出的指令来起动至少一个低功率线程的组件。
本发明的第五实施例涉及一种用于控制功率使用的装置,其包括:软件监控部件,其在操作中基于标准来动态确定功率利用(powerutilization)阈值;以及起动部件,其在该功率利用阈值被超过的情况下基于从该软件监控部件发出的指令来起动至少一个低功率线程。
本发明的第六实施例涉及一种用于控制功率使用的装置,其包括:用户输入部件,其中用户发出至少一个指令来起动至少一个低功率线程;以及起动部件,其基于从该用户输入部件发出的指令来起动至少一个低功率线程。
附图说明
根据下文给出的详细描述以及本发明优选实施例的附图将会更完全地理解本发明,但是本发明的优选实施例不应该看作是限制本发明,而是仅用于解释和理解。
图1是计算机系统的示意图。
图2是描绘由CPU执行的工作负载线程和低功率线程之间的关系的示意图。
图3是描绘PID回路的流程图。
图4是描绘本发明的一个实施例的示意图。
图5是描绘本发明的一个实施例的流程图。
具体实施方式
图1描绘了计算机系统。该系统控制其通过中央处理单元(CPU)对程序的处理和执行。CPU由其时钟速度限制,所述时钟速度确定处理器每秒可以执行多少指令。由此,CPU具有其能执行的线程或指令的特定容量。在计算机上运行的每个进程包含至少一个线程,并且可以包含多个线程。当在该CPU上运行多个线程时,CPU容量被填充,并且该系统中的功率消耗增加。如果没有运行来自操作系统的进程的线程,则低功率线程在剩余的时钟时间运行。下面将讨论低功率线程以及它们的影响的示例。
图2描绘由CPU执行的工作负载线程和低功率线程之间的关系。CPU的部分2a表示由CPU执行的工作负载线程2a的示例性量。工作负载线程2a被执行以运行操作系统的进程或应用。CPU的部分2b表示由CPU在没有用来执行工作负载线程的时钟时间上执行的低功率线程的示例性量。箭头2c表明由CPU执行的工作负载线程的量与由处理器执行的低功率线程的量反相关。当执行较多的工作负载线程时,执行较少的低功率线程。相反,如果执行较多的低功率线程,则执行较少的工作负载线程。
执行工作负载线程通常比执行较低功率线程(例如HALT(停止)指令)需要更多的系统资源。本发明通过控制由处理器执行的线程的类型来管理功率消耗。具体来说,本发明监控系统的资源以确定该系统的功率消耗。下面将描述功率消耗监控的示例。如果功率消耗太高,则本发明发出更多的低功率线程来由处理器执行。
在一个实施例中,所执行的低功率线程是C1E HALT指令。处理器具有各种状态。处于状态C0的处理器是处于活动状态。处于状态C1的处理器是处于休眠状态。C1E表示具有比C1状态更低的功率消耗的增强的休眠状态。因此,发出C1E HALT指令使得处理器处于低功率休眠模式长达时钟周期或时钟周期的一部分。然而,应该注意,每个处理器可以潜在地利用不同的指令集架构,并且因此每个处理器具有被利用的不同低功率指令。本发明将利用C1E HALT指令作为示例性低功率线程的部分;然而,这决不是限制,并且可以利用任何低功率线程。例如,可以利用常规HALT线程。此外,本发明可以利用多于一种类型的低功率线程。决不应该将本发明所利用的低功率线程的类型和组合看作是限制本发明。
在一个实施例中,在系统的功率消耗超过功率利用阈值的情况下,本发明将发出更多的低功率线程。功率利用阈值可以表示在采取管理功率消耗的行动之前系统可以消耗的功率量的上限。还可以以许多不同的形式来表示功率利用阈值。例如,阈值可以以瓦特、所发出的低功率线程的数目、执行低功率线程的CPU的百分比(仅列举几个例子)来指定。功率利用阈值的形式不限制本发明。
在一个实施例中,功率利用阈值是预先设置的。在另一个实施例中,功率利用阈值可以由本发明的用户来设置。在另一个实施例中,功率利用阈值可以通过从系统资源获得数据来动态确定。例如,如果系统开始过热,则在那时由处理器正执行的工作负载线程的数目可以被设置成功率利用阈值。在另一个实施例中,如果功率消耗超过功率利用阈值,则将通知系统的用户、系统管理员或其他被授权的人。该通知可以通过记录事件、通过向管理员或用户发送电子邮件、通过使系统发出特定警报或噪声、或者通过任何其他通知方法来发生。通知的方法不限制本发明。
在一个实施例中,本发明被实施为在系统处理器上运行的软件。该软件从系统资源获得测量以确定该系统是否正消耗太多的功率。优选地,该软件读取系统中的功率计以获得功率消耗信息。在一个实施例中,如果系统的功率消耗超过功率利用阈值,则软件将启动更多的低功率线程。在另一个实施例中,如果系统的功率消耗低于功率利用阈值,则软件将取消(kill)更多的低功率线程。在一个实施例中,如果系统没有包含测量功率消耗的资源(例如功率计),则本发明最初可以发出特定或标准数目的低功率线程,并且监控其对系统的影响(例如,当发出数目X的线程时是否出现了热事件)。本发明可以连续监控系统并且在必要时改变所发出的低功率线程的数目。所发出的线程的初始数目可以是预先设置的量(例如CPU容量的10%、10个低功率线程等等),或者可以由系统的用户、系统管理员或另一个被授权的用户来设置。最初选择的线程量不限制本发明;相反,可以利用任何量。
在一个实施例中,将在PID控制回路算法上建模该软件。因此,在一定时间段内系统消耗的平均功率将被维持在所规定的等级或低于所规定的等级。图3描绘了示出使用比例-积分-微分(PID)回路的本发明的一个实施例的流程图。PID回路是连续获得输入测量并且通过相应地计算并输出调整进程的结果来试图校正所测量的变量和期望阈值之间的误差的控制回路反馈机制。PID回路输入系统的功率消耗测量,和功率利用阈值(步骤301)。PID通过使用三个参数(比例、积分和微分值)来计算要运行的低功率线程的量。比例值确定系统对该系统的实际功率消耗和功率利用阈值之间的当前差值的反应(步骤302)。积分值基于实际功率消耗和功率利用阈值之间的最近差值之和确定系统的反应(步骤303)。微分值确定对低功率线程数目已改变的速率的反应(步骤304)。这三个值的加权和被用来调整所执行的低功率线程的数目(步骤305)。
在另一个实施例中,软件部件将针对当前系统硬件配置(因为它与功率有关)估计线程容量和最佳最大线程数目,并且将相应地设置功率利用阈值。通过利用系统资源来确定功率利用阈值,由处理器执行的工作负载线程的数目将不会超过功率容量。在该实施例中,可以通过分析由处理器执行的工作负载线程的数目和其对系统资源的影响之间的关系来动态设置功率利用阈值。在该实施例中,功率利用阈值还可以被约束成仅由系统管理员或其他被授权的人来设置或改变。
在另一个实施例中,软件可以提供用户可以通过其来查看并管理功率消耗的实用程序(utility)。在该实施例中,用户可以设置或改变功率利用阈值。例如,用户可以指定系统不应该消耗多于300瓦特的功率。用户还可以指定,例如处理器执行的25%的线程应该是低功率线程。在该实施例中,可以利用各种各样的利用阈值,从而允许系统性能方面的更大灵活性。例如,用户可以临时设置利用阈值使得系统接近容量运行,因为用户想要在短的时间段内运行功率密集程序,并且然后随后在功率密集程序已完成之后降低阈值。在另一个实施例中,用户还可以指定是否改变处理器当前执行的低功率线程的数目。在一个实施例中,用户可以在通过实用程序监控系统的功率消耗之后增加由处理器执行的低功率线程的数目。
在另一个实施例中,如果系统检测到即将发生将导致系统的意外停机的热事件,则功率利用阈值可以被自动降低以防止热事件。功率利用阈值可以被减小设置的量,可以被减小特定的百分比(例如25%),或者可以以许多不同方式来改变。确定使功率利用阈值降低多少决不是限制本发明。此外,在该实施例中,本发明可以维持功率利用阈值,但是软件可以改为发出更多的低功率线程以立即影响正由处理器用来执行工作负载线程的系统资源。
在一个实施例中,本发明的软件在系统上运行,并且仅管理该特定系统的功率消耗。在另一个实施例中,本发明的软件在数据中心中的系统上运行,其中数据中心的每个系统运行该软件以管理它们自己的功率消耗。
在另一个实施例中,本发明的软件在服务器上运行,并且管理多个计算机系统的功率消耗。例如,服务器可以位于数据中心中,并且软件可以管理该数据中心中所有系统的功率消耗。在该实施例中,对于该数据中心中的所有系统该软件可以利用相同的功率利用阈值。在该实施例中,对于该数据中心中的每个特定系统或者对于该数据中心中的特定系统组,该软件可以利用不同的功率利用阈值。功率利用阈值可以仍通过上述所有方法来设置。此外,软件的用户或系统管理员或任何其他被授权的人可以描述对于什么范围的系统要使用什么样的功率利用。软件的用户例如可以描述一个特定功率利用阈值被用于数据中心中执行特定功能或者处于特定IP范围内的所有系统。每个系统具有与其相关联的IP地址。仅那些具有落入所选择的IP范围内的IP地址的系统将利用特定功率利用阈值。所述范围可以是窄的,或者可以包括大量系统,或者甚至所有系统。用于确定为系统或系统组设置的功率利用阈值的不同特性不限制本发明;相反,潜在地可以利用各种各样的特性或方法。
图4描绘本发明的另一个实施例,其中计算机系统400包含本发明的功率管理软件。具体来说,该系统包括用于监控与功率使用有关的变量(例如但不限于功率和温度)的软件监控部件401。根据变量的值与这些变量的阈值的比较,软件监控部件可以潜在地发出指令来起动由处理器执行的低功率线程。该系统还将包括起动部件402,其将在从该软件部件接收到指令后起动低功率线程。因此,系统将根据本发明来管理其功率消耗。在一个实施例中,所监控的变量是功率,并且可以潜在地以上述方式之一来设置功率利用阈值。在另一个实施例中,PID回路可以是软件部件的一部分以确定是否起动低功率线程。在另一个实施例中,系统的用户可以起动低功率线程,如上所述。
图5描绘根据本发明的另一个实施例,其中一种方法用于控制系统中的功率使用。具体来说,可以监控与系统中的功率使用有关的变量(步骤501)。这些变量可以包括但不限于功率和温度。如果变量中的一个或多个的值超过该变量的阈值,则可以基于从该系统上的软件发出的指令来起动低功率线程(步骤502)。在一个实施例中,所监控的变量是功率,并且可以潜在地以上述方式之一来设置功率利用阈值。在另一个实施例中,PID回路可以用来确定要起动的低功率线程的数目。在另一个实施例中,系统的用户可以起动低功率线程,如上所述。
本发明的软件可以以若干不同方式来实施。软件的实施方式不限制本发明。
在一个实施例中,将该软件作为计算机可读代码安装在计算机可读介质上,当被执行时,所述计算机可读代码实行本文所述的本发明的功能。
在一个实施例中,该软件由用户、系统管理员或另一个被授权的人安装在系统上。该软件通过驱动器与系统进行通信,并且通过该驱动器获得功率消耗读数。然后该软件基于功率消耗读数以及一般而言基于系统的状态来如上所述地运行。
在另一个实施例中,作为操作系统内核的一部分预先加载并安装软件。该软件利用ACPI描述表来通过功率计访问功率消耗读数。ACPI是用来降低系统中的功率消耗的高级配置和电源接口规范。它通常与系统中的硬件一起使用。ACPI表提供可以被本发明用来如本文详述的那样管理系统中的功率消耗的关于功率消耗的硬件信息。
在另一个实施例中,该软件被安装或预先加载在操作系统上,所述操作系统加载于管理程序(hypervisor)之上。管理程序是允许在一个处理器上运行多于一个操作系统的虚拟机。具体来说,管理程序管理系统资源(例如处理器和存储器)以分配每个虚拟操作系统运行所需的系统资源。管理程序可以被引导,其然后引导一个或多个操作系统内核。管理程序可以根据该软件是否被预先加载到操作系统中来利用驱动器或ACPI表来获得功率消耗信息。在该实施例中,对于管理程序支持的每个操作系统,该管理程序可以利用不同的功率利用阈值。在该实施例中,管理程序可以支持仅运行低功率线程的一个操作系统。通过支持仅运行低功率线程的操作系统,管理程序将保证由CPU执行特定量或百分比的低功率线程。为该低功率线程操作系统虚拟化的系统资源可以不被其他操作系统应用或内核应用所影响。因此,通过仅运行低功率线程,低功率操作系统保证一定比例的全体系统资源仅用于运行低功率线程。
在一个实施例中,该软件被用户、系统管理员或另一个被授权的人安装在系统上。该软件包括用户输入部件,用户可以通过该用户输入部件发出指令来起动低功率线程。在一个实施例中,用户输入部件可以潜在地利用软件实用程序来查看功率消耗(如上所述)以使得用户能够确定要起动多少低功率线程。在另一个实施例中,用户可以利用不同手段来监控功率消耗,或者可以任意设置要起动的低功率线程的数目。系统中的起动部件将基于由用户输入部件从用户接收的指令来起动低功率线程。
用于实施本发明的整个系统或方法或部分的示例性系统可能包括传统计算机形式的通用计算设备,包括处理单元、系统存储器和将包括系统存储器的各种系统部件耦合到处理单元的系统总线。该系统存储器可以包括只读存储器(ROM)和随机存取存储器(RAM)。该计算机还可以包括用于从磁性硬盘读取并写入到该磁性硬盘的磁性硬盘驱动器,用于从可移动磁盘读取或写入到该可移动磁盘的磁盘驱动器,以及用于从可移动光盘(例如CD-ROM或其他光学介质)读取或写入到该可移动光盘的光盘驱动器。驱动器以及它们相关联的计算机可读介质为该计算机提供计算机可执行指令、数据结构、程序模块和其他数据的非易失性存储。
可以利用各种编程技术来实现本发明的软件和web实施方式,其中基于规则的逻辑和其他逻辑用来实现各种数据库搜索步骤、相关步骤、比较步骤和判决步骤。还应该指出,本文以及权利要求中所使用的词语“部件”意图包括使用一行或多行软件代码的实施方式、和/或硬件实施方式、和/或接收手动输入的设备。
为了说明和描述目的已给出本发明实施例的前述描述。它不打算是穷举的或将本发明限制成所公开的精确形式,并且鉴于上述教导修改和变化是可能的,或者可以从本发明的实践中获得。为了解释本发明的原理以及其实际应用而选择并描述实施例,以使得本领域技术人员能够利用各种实施例中的以及具有适合于所预期的特定使用的各种修改的本发明。

Claims (12)

1.一种用于控制功率使用的装置,包括:
软件监控部件,用于监控与该装置中的功率使用有关的一个或多个变量;
起动部件,用于在与功率使用有关的一个或多个变量的值超过该变量的阈值的情况下基于从软件监控部件发出的指令来起动至少一个低功率线程,其中所起动的低功率线程的数目与功率利用阈值有关以及其中,针对当前系统硬件配置估计线程容量和最佳最大线程数目并且相应地设置所述功率利用阈值。
2.根据权利要求1所述的装置,其中在管理程序之上运行软件监控部件。
3.根据权利要求1所述的装置,其中所述功率利用阈值由软件的用户设置。
4.根据权利要求1所述的装置,其中所起动的低功率线程的数目由PID回路确定。
5.根据权利要求1所述的装置,其中软件监控部件的用户激活起动部件以起动一个或多个低功率线程。
6.一种用于控制计算机系统中的功率使用的方法,包括:
电子地监控与该系统中的功率使用有关的一个或多个变量;
在与功率使用有关的一个或多个变量的值超过该变量的阈值的情况下基于从该计算机系统上的软件发出的指令来电子地起动至少一个低功率线程,其中所起动的低功率线程的数目与功率利用阈值有关以及其中,针对当前系统硬件配置估计线程容量和最佳最大线程数目并且相应地设置所述功率利用阈值。
7.根据权利要求6所述的方法,其中在管理程序之上运行所述软件。
8.根据权利要求6所述的方法,其中所述功率利用阈值由该软件的用户设置。
9.根据权利要求6所述的方法,其中所起动的低功率线程的数目由PID回路确定。
10.根据权利要求6所述的方法,其中所述软件的用户起动一个或多个低功率线程。
11.一种用于控制功率使用的装置,其包括:
用于监控与系统中的功率使用有关的一个或多个变量的组件;以及
用于在与功率使用有关的一个或多个变量的值超过该变量的阈值的情况下基于从该系统上的软件发出的指令来起动至少一个低功率线程的组件,其中所起动的低功率线程的数目与功率利用阈值有关以及其中,针对当前系统硬件配置估计线程容量和最佳最大线程数目并且相应地设置所述功率利用阈值。
12.一种用于控制功率使用的方法,包括:
由用户通过用户输入部件发出至少一个指令来起动至少一个低功率线程;以及
基于从该用户输入部件发出的指令来起动至少一个低功率线程,其中所起动的低功率线程的数目与功率利用阈值有关以及其中,针对当前系统硬件配置估计线程容量和最佳最大线程数目并且相应地设置所述功率利用阈值。
CN2008801278360A 2008-03-03 2008-03-03 基于软件的功率封顶 Active CN101965547B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2008/055664 WO2009110884A1 (en) 2008-03-03 2008-03-03 Software-based power-capping

Publications (2)

Publication Number Publication Date
CN101965547A CN101965547A (zh) 2011-02-02
CN101965547B true CN101965547B (zh) 2013-08-21

Family

ID=41056284

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008801278360A Active CN101965547B (zh) 2008-03-03 2008-03-03 基于软件的功率封顶

Country Status (4)

Country Link
US (1) US8464086B2 (zh)
EP (1) EP2263136A4 (zh)
CN (1) CN101965547B (zh)
WO (1) WO2009110884A1 (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9436969B2 (en) * 2009-10-05 2016-09-06 Nvidia Corporation Time slice processing of tessellation and geometry shaders
US8862914B2 (en) 2010-02-26 2014-10-14 Microsoft Corporation Virtual machine power consumption measurement and management
US8595525B2 (en) * 2011-09-22 2013-11-26 Qualcomm Incorporated On-chip thermal management techniques using inter-processor time dependent power density data for indentification of thermal aggressors
US8755943B2 (en) 2011-09-30 2014-06-17 Johnson Controls Technology Company Systems and methods for controlling energy use in a building management system using energy budgets
US8843238B2 (en) * 2011-09-30 2014-09-23 Johnson Controls Technology Company Systems and methods for controlling energy use in a building management system using energy budgets
US8904209B2 (en) * 2011-11-14 2014-12-02 Microsoft Corporation Estimating and managing power consumption of computing devices using power models
JP6313217B2 (ja) * 2011-12-12 2018-04-18 ヴィジレント コーポレイションVigilent Corporation Hvacユニットの気温制御
CN102523618A (zh) * 2011-12-26 2012-06-27 华为技术有限公司 远端射频单元及其功耗限制方法、以及基站控制器
US8930736B2 (en) 2012-03-01 2015-01-06 Microsoft Corporation Inferred electrical power consumption of computing devices
JP2014010655A (ja) * 2012-06-29 2014-01-20 Fujitsu Ltd 制御装置、制御方法、および制御プログラム
US9618996B2 (en) 2013-09-11 2017-04-11 Electronics And Telecommunications Research Institute Power capping apparatus and method
US9921865B2 (en) 2014-01-30 2018-03-20 Red Hat Israel, Ltd. Population of system tables by hypervisor
US9886326B2 (en) * 2014-02-13 2018-02-06 Advanced Micro Devices, Inc. Thermally-aware process scheduling
KR102468286B1 (ko) 2016-01-04 2022-11-21 한국전자통신연구원 대칭형 다중 처리 시스템에서의 전력 제한 장치 및 방법
US10719107B2 (en) 2016-03-29 2020-07-21 Intel Corporation Method and apparatus to maintain node power budget for systems that share a power supply
US11533272B1 (en) * 2018-02-06 2022-12-20 Amesite Inc. Computer based education methods and apparatus

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1645294A (zh) * 2004-01-22 2005-07-27 国际商业机器公司 在逻辑分区的数据处理系统中降低功耗的方法和装置
CN101040241A (zh) * 2004-09-03 2007-09-19 英特尔公司 基于情境的功率管理
US7318164B2 (en) * 2001-12-13 2008-01-08 International Business Machines Corporation Conserving energy in a data processing system by selectively powering down processors

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6848054B1 (en) * 1989-10-30 2005-01-25 Texas Instruments Incorporated Real-time computer thermal management and power conservation
US7822996B2 (en) * 1995-12-07 2010-10-26 Texas Instruments Incorporated Method for implementing thermal management in a processor and/or apparatus and/or system employing the same
JPH09305569A (ja) * 1996-01-17 1997-11-28 Texas Instr Inc <Ti> Cpuの動作特性に応じてコンピュータの動作を制御する方法と装置
US6785826B1 (en) 1996-07-17 2004-08-31 International Business Machines Corporation Self power audit and control circuitry for microprocessor functional units
US6535798B1 (en) * 1998-12-03 2003-03-18 Intel Corporation Thermal management in a system
US6564332B1 (en) * 1998-12-23 2003-05-13 Intel Corporation Method and apparatus for managing power consumption in a computer system responsive to the power delivery specifications of a power outlet
US7975156B2 (en) * 2008-10-21 2011-07-05 Dell Products, Lp System and method for adapting a power usage of a server during a data center cooling failure
US6901522B2 (en) * 2001-06-07 2005-05-31 Intel Corporation System and method for reducing power consumption in multiprocessor system
US6931559B2 (en) * 2001-12-28 2005-08-16 Intel Corporation Multiple mode power throttle mechanism
US7085945B2 (en) * 2003-01-24 2006-08-01 Intel Corporation Using multiple thermal points to enable component level power and thermal management
US7051221B2 (en) * 2003-04-28 2006-05-23 International Business Machines Corporation Performance throttling for temperature reduction in a microprocessor
US7451332B2 (en) * 2003-08-15 2008-11-11 Apple Inc. Methods and apparatuses for controlling the temperature of a data processing system
US7194641B2 (en) * 2004-01-22 2007-03-20 International Business Machines Corporation 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
US7330988B2 (en) * 2004-06-30 2008-02-12 Sun Microsystems, Inc. Method and apparatus for power throttling in a multi-thread processor
US7788670B2 (en) * 2004-10-26 2010-08-31 Intel Corporation Performance-based workload scheduling in multi-core architectures
JP4553307B2 (ja) 2004-11-19 2010-09-29 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報処理装置、制御方法、及びプログラム
US7600135B2 (en) * 2005-04-14 2009-10-06 Mips Technologies, Inc. Apparatus and method for software specified power management performance using low power virtual threads
WO2009055368A2 (en) * 2007-10-21 2009-04-30 Citrix Systems, Inc. Systems and methods to adaptively load balance user sessions to reduce energy consumption
US7949889B2 (en) * 2008-01-07 2011-05-24 Apple Inc. Forced idle of a data processing system
US7949888B2 (en) * 2008-01-07 2011-05-24 Apple Inc. Forced idle of a data processing system
US7756652B2 (en) * 2008-04-24 2010-07-13 Oracle America, Inc. Estimating a power utilization of a computer system
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

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7318164B2 (en) * 2001-12-13 2008-01-08 International Business Machines Corporation Conserving energy in a data processing system by selectively powering down processors
CN1645294A (zh) * 2004-01-22 2005-07-27 国际商业机器公司 在逻辑分区的数据处理系统中降低功耗的方法和装置
CN101040241A (zh) * 2004-09-03 2007-09-19 英特尔公司 基于情境的功率管理

Also Published As

Publication number Publication date
EP2263136A1 (en) 2010-12-22
US20110016337A1 (en) 2011-01-20
WO2009110884A1 (en) 2009-09-11
CN101965547A (zh) 2011-02-02
US8464086B2 (en) 2013-06-11
EP2263136A4 (en) 2015-10-07

Similar Documents

Publication Publication Date Title
CN101965547B (zh) 基于软件的功率封顶
Lo et al. Dynamic management of TurboMode in modern multi-core chips
KR101233434B1 (ko) 데이터 처리 시스템의 강제 정지
US7308591B2 (en) Power management of multi-processor servers
CN106170742B (zh) 多处理器片上系统中的能效感知热管理的方法和系统
KR101148642B1 (ko) 데이터 처리 시스템의 강제 정지
US8006108B2 (en) Dynamic selection of group and device power limits
US8001407B2 (en) Server configured for managing power and performance
US8190939B2 (en) Reducing power consumption of computing devices by forecasting computing performance needs
TWI475369B (zh) 用於處理器中功率及性能權衡的設備、方法及系統
US9251027B2 (en) Information handling system performance optimization system
Femal et al. Boosting data center performance through non-uniform power allocation
US9098274B2 (en) Methods and apparatuses to improve turbo performance for events handling
US8201000B2 (en) Computing load management method and system
KR101155202B1 (ko) 멀티 코어 프로세서의 전력 관리 방법, 멀티 코어 프로세서의 전력 관리 방법이 기록된 기록매체 및 이를 실행하는 멀티 코어 프로세서 시스템
JP2009181571A (ja) 大規模データセンターまたはitインフラにおけるエネルギー消費の確定および動的制御方法
Jaiantilal et al. Modeling CPU energy consumption for energy efficient scheduling
US20190004585A1 (en) Core Frequency Management using Effective Utilization for Power-Efficient Performance
Koutsovasilis et al. The impact of cpu voltage margins on power-constrained execution
Feller et al. State of the art of power saving in clusters and results from the EDF case study
JP2016012344A (ja) アプリケーションを実行する方法及びリソースマネジャ
Wang et al. An energy-efficient power management for heterogeneous servers in data centers
Brochard et al. Power and energy-aware processor scheduling
John et al. Impact of operating system behavior on battery life
AlLee Green Microprocessor and Server Design

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
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20170120

Address after: American Texas

Patentee after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP

Address before: American Texas

Patentee before: Hewlett Packard Development Co.