CN104516470A - 服务器功耗控制方法及系统 - Google Patents
服务器功耗控制方法及系统 Download PDFInfo
- Publication number
- CN104516470A CN104516470A CN201310444364.4A CN201310444364A CN104516470A CN 104516470 A CN104516470 A CN 104516470A CN 201310444364 A CN201310444364 A CN 201310444364A CN 104516470 A CN104516470 A CN 104516470A
- Authority
- CN
- China
- Prior art keywords
- power consumption
- server
- current
- cpu
- load
- 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.)
- Pending
Links
Landscapes
- Power Sources (AREA)
Abstract
一种服务器功耗控制系统,该系统用于:在CPU的不同功耗等级P-state和负载设置下记录服务器的功耗数据,统计CPU的P-state、负载及服务器的功耗之间的关系,建立关系列表;当服务器工作时,读取CPU当前的P-state值和负载,从关系列表中查询对应的功耗数据,得到服务器当前的总功耗;当服务器当前的总功耗超过预设功耗时,从关系列表中查询预设功耗和预设负载所对应的P-state值;控制CPU将当前的P-state设置为上述查询得到的P-state值。本发明还提供一种服务器功耗控制方法。本发明可以读取服务器的功耗,并将该功耗限定在一定范围内。
Description
技术领域
本发明涉及一种控制方法及系统,尤其是涉及一种服务器功耗控制方法及系统。
背景技术
目前服务器的电源管理方案有很多,像Intel的Node Manager、AMD APML方案,都可以用来控制服务器的功耗。但是,这些都是基于硬件的管理方案,需要专门的硬件和固件的支持。
CPU是决定服务器功耗的最大因素,而评估CPU的功耗的参数就是TDP(Thermal Design Power,散热设计功耗),CPU TDP值对应系列CPU的最终版本在满负荷(CPU负载为100%的理论值)时可能会达到的最高散热热量。而CPU的电力功耗又可以划分为不同的等级,就是P-state,通过调整CPU的工作电压和频率的方式从而调整整个平台的系统功耗。因此,可以提出一种软件的解决方案,利用P-state进行服务器的功耗控制。
发明内容
鉴于以上内容,有必要提供一种服务器功耗控制方法,可以读取服务器的功耗,并将该功耗限定在一定范围内。
鉴于以上内容,还有必要提供一种服务器功耗控制系统,可以读取服务器的功耗,并将该功耗限定在一定范围内。
所述服务器功耗控制方法包括:统计步骤:在CPU的不同功耗等级P-state和负载设置下记录服务器的功耗数据,统计CPU的P-state、负载及服务器的功耗之间的关系,建立关系列表;读取步骤:当服务器工作时,读取CPU当前的P-state值和负载;第一查询步骤:从所述关系列表中查询所读取的P-state值和负载对应的功耗数据,得到服务器当前的总功耗;第二查询步骤:当服务器当前的总功耗超过预设功耗时,从所述关系列表中查询所述预设功耗和预设负载所对应的P-state值;及控制步骤:控制所述CPU将当前的P-state设置为上述查询得到的P-state值。
所述服务器功耗控制系统包括:统计模块,用于在CPU的不同功耗等级P-state和负载设置下记录服务器的功耗数据,统计CPU的P-state、负载及服务器的功耗之间的关系,建立关系列表;读取模块,用于当服务器工作时,读取CPU当前的P-state值和负载;查询模块,用于从所述关系列表中查询所读取的P-state值和负载对应的功耗数据,得到服务器当前的总功耗;所述查询模块还用于当服务器当前的总功耗超过预设功耗时,从所述关系列表中查询所述预设功耗和预设负载所对应的P-state值;及控制模块,用于控制所述CPU将当前的P-state设置为上述查询得到的P-state值。
相较于现有技术,所述的服务器功耗控制方法及系统,可以不需要特殊的硬件和固件支持,采用软件的解决方案计算出服务器的功耗,并将服务器的功耗控制在预设功耗的范围内。
附图说明
图1是本发明服务器功耗控制系统较佳实施例的应用环境图。
图2是本发明服务器功耗控制系统较佳实施例的功能模块图。
图3是本发明服务器功耗控制方法较佳实施例的流程图。
主要元件符号说明
服务器 | 1 |
服务器功耗控制系统 | 10 |
CPU | 20 |
硬盘 | 30 |
网卡 | 40 |
统计模块 | 100 |
读取模块 | 200 |
查询模块 | 300 |
判断模块 | 400 |
控制模块 | 500 |
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
参阅图1所示,是本发明服务器功耗控制系统较佳实施例的应用环境图。所述服务器功耗控制系统10运行于服务器1中,所述服务器1中还包括通过数据总线相连的CPU 20、硬盘30和网卡40等。
所述服务器功耗控制系统10用于当服务器1当前的功耗超过预设功耗时,根据统计出的CPU 20的P-state(功耗等级)、负载、服务器1的功耗之间的关系列表,评估CPU 20在预设功耗下对应的P-state值,控制CPU 20将P-state设置为该对应P-state值,从而降低服务器1的功耗,将该功耗限定在预设功耗的范围之内。
可以理解,所述服务器1中还应该包括其他必要的硬件系统与软件系统,如存储器、主板、操作系统等,由于这些设备都是本领域技术人员的习知常识,本实施例中不再一一描述。
参阅图2所示,是本发明服务器功耗控制系统较佳实施例的功能模块图。
所述服务器功耗控制系统10包括统计模块100、读取模块200、查询模块300、判断模块400及控制模块500。
所述统计模块100用于在CPU 20的不同P-state和负载设置下记录服务器1的功耗数据,统计CPU 20的P-state、负载及服务器1的功耗之间的关系,建立关系列表。
具体而言,所述统计模块100通过CPU 20的专用MSR指令获取所述CPU 20支持的P-state列表,依次将CPU 20当前的P-state设置为该P-state列表中的某个值。然后在每种P-state值下运行CPU测试程序,将CPU 20的负载设为按照预定幅度(例如5%)增长。所述CPU测试程序主要是占用CPU 20的资源,而没有大量的网络和磁盘访问,并且可以使CPU 20运行指定的负载。在每种P-state值和负载下运行所述CPU测试程序预定时间(例如20秒)后,所述统计模块100读取服务器1的电源端的功率记录仪表(图中未示出)上记录的一个较稳定的功耗数据,即为该P-state值和负载所对应的功耗值。所述统计模块100将该P-state值、负载和对应的功耗数据记录到关系列表中,所述关系列表可以保存在数据库(图中未示出)中。在本实施例中,该统计可以在服务器1出厂前完成。
所述统计模块100还用于统计硬盘30及网卡40的功耗。当服务器1存在网络和磁盘访问时,硬盘30和网卡40的功耗也会影响服务器1的总功耗,所以统计服务器1的总功耗时,还要考虑这两个设备。在非图形工作站的服务器中,其他设备如显卡、系统芯片的功耗在工作时变化不大。
在本实施例中,所述统计模块100在服务器1的空闲状态下,硬盘30没有读写时,读取电源端的功率记录仪表上记录的第一功耗数据。然后运行硬盘测试程序读写硬盘30,再次读取功率记录仪表上记录的第二功耗数据。计算第一功耗数据和第二功耗数据的差,就接近硬盘30的功耗。利用同样的原理,所述统计模块100还可以计算出网卡40的功耗。
所述读取模块200用于当服务器1工作时,读取CPU 20当前的P-state值和负载。
所述查询模块300用于从所述关系列表中查询所读取的P-state值和负载对应的功耗数据,得到服务器1当前的总功耗。在本实施例中,若服务器1当前没有网络和磁盘访问,则所查询到的功耗数据即为服务器1当前的总功耗。若服务器1当前存在网络和/或磁盘访问,则所查询到的功耗数据还要加上网卡40和/或硬盘30的功耗(上述统计模块100所统计的功耗),得到服务器1当前的总功耗。
值得注意的是,由于本实施例的关系列表中保存的负载为按照预定幅度(5%)增长的值,若查询时关系列表中不存在与CPU 20当前的负载完全相同的值,则以关系列表中最接近所述CPU 20当前的负载的值为依据进行查询。例如,所述关系列表中保存的P-state值为1、2、3,每种P-state值均对应负载0%、5%、10%、15%、…100%,而读取到的所述CPU 20当前的P-state值为2,负载为11.3%(在所述关系列表中最接近的值为10%)。所述查询模块300先从所述关系列表中查询到P-state值为2所对应的栏位,然后在P-state值为2的栏位中按照负载为10%查询对应的功耗数据。
所述判断模块400用于判断服务器1当前的总功耗是否已超过预设功耗。所述预设功耗是为了将服务器1的功耗控制在一定范围之内而预先设置的阈值。若服务器1当前的总功耗超过所述预设功耗,则需要通过控制CPU 20的P-state值来达到降低功耗的目的。若服务器1当前的总功耗未超过所述预设功耗,则不需要降耗处理。
所述查询模块300还用于当服务器1当前的总功耗超过所述预设功耗时,从所述关系列表中查询所述预设功耗(或者一个稍小于预设功耗的预设值)和预设负载(本实施例为100%负载)所对应的P-state值。若服务器1当前存在网络和/或磁盘访问,则应该先用所述预设功耗减去网卡40和/或硬盘30的功耗,得到一个新功耗值,然后从所述关系列表中查询该新功耗值和预设负载(100%负载)所对应的P-state值。
所述控制模块500用于控制所述CPU 20将当前的P-state设置为上述查询得到的P-state值。在每种P-state值下,CPU 20的最大工作频率是固定的,只要CPU 20的负载不超过100%,这种P-state值下CPU 20的最大功耗也相对固定。因此,将CPU 20当前的P-state设置为上述查询得到的P-state值,则服务器1的总功耗便可以控制在所述预设功耗的范围内。
参阅图3所示,是本发明服务器功耗控制方法较佳实施例的流程图。
步骤S10,所述统计模块100在CPU 20的不同P-state和负载设置下记录服务器1的功耗数据,统计CPU 20的P-state、负载及服务器1的功耗之间的关系,建立关系列表。
步骤S12,所述统计模块100统计硬盘30及网卡40的功耗。
步骤S14,当服务器1工作时,所述读取模块200读取CPU 20当前的P-state值和负载。
步骤S16,所述查询模块300从所述关系列表中查询所读取的P-state值和负载对应的功耗数据,得到服务器1当前的总功耗。在本实施例中,若服务器1当前没有网络和磁盘访问,则所查询到的功耗数据即为服务器1当前的总功耗。若服务器1当前存在网络和/或磁盘访问,则所查询到的功耗数据还要加上网卡40和/或硬盘30的功耗,得到服务器1当前的总功耗。
步骤S18,所述判断模块400判断服务器1当前的总功耗是否已超过预设功耗。若服务器1当前的总功耗超过所述预设功耗,则执行步骤S20。若服务器1当前的总功耗未超过所述预设功耗,则流程结束。
步骤S20,所述查询模块300从所述关系列表中查询所述预设功耗(或者一个稍小于预设功耗的预设值)和预设负载所对应的P-state值。若服务器1当前存在网络和/或磁盘访问,则应该先用所述预设功耗减去网卡40和/或硬盘30的功耗,得到一个新功耗值,然后从所述关系列表中查询该新功耗值和预设负载所对应的P-state值。
步骤S22,所述控制模块500控制所述CPU 20将当前的P-state设置为上述查询得到的P-state值。
值得注意的是,在使用上述方法控制服务器1的功耗时,首先需要将服务器1的电源管理模式改为手动模式,否则该方法会和操作系统的电源管理冲突。在其他实施例中,上述功耗控制方法还可以应用于个人计算机中。
以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (10)
1.一种服务器功耗控制方法,其特征在于,该方法包括:
统计步骤:在CPU的不同功耗等级P-state和负载设置下记录服务器的功耗数据,统计CPU的P-state、负载及服务器的功耗之间的关系,建立关系列表;
读取步骤:当服务器工作时,读取CPU当前的P-state值和负载;
第一查询步骤:从所述关系列表中查询所读取的P-state值和负载对应的功耗数据,得到服务器当前的总功耗;
第二查询步骤:当服务器当前的总功耗超过预设功耗时,从所述关系列表中查询所述预设功耗和预设负载所对应的P-state值;及
控制步骤:控制所述CPU将当前的P-state设置为上述查询得到的P-state值。
2.如权利要求1所述的服务器功耗控制方法,其特征在于,所述统计步骤具体包括:
获取所述CPU支持的P-state列表,依次将CPU当前的P-state设置为该P-state列表中的值;
在每种P-state值下运行CPU测试程序,将CPU的负载设为按照预定幅度增长;
在每种P-state值和负载下运行所述CPU测试程序预定时间后,读取服务器的电源端的功率记录仪表上记录的功耗数据;及
将该P-state值、负载和对应的功耗数据记录到关系列表中。
3.如权利要求1所述的服务器功耗控制方法,其特征在于,该方法在所述统计步骤和读取步骤之间还包括步骤:
统计所述服务器的硬盘及网卡的功耗。
4.如权利要求3所述的服务器功耗控制方法,其特征在于,在所述第一查询步骤中:
若服务器当前没有网络和磁盘访问,则所查询到的功耗数据即为服务器当前的总功耗;
若服务器当前存在网络和/或磁盘访问,则所查询到的功耗数据加上网卡和/或硬盘的功耗,得到服务器当前的总功耗。
5.如权利要求3所述的服务器功耗控制方法,其特征在于,在所述第二查询步骤中:
若服务器当前存在网络和/或磁盘访问,则先用所述预设功耗减去网卡和/或硬盘的功耗,得到一个新功耗值,然后从所述关系列表中查询该新功耗值和预设负载所对应的P-state值。
6.一种服务器功耗控制系统,其特征在于,该系统包括:
统计模块,用于在CPU的不同功耗等级P-state和负载设置下记录服务器的功耗数据,统计CPU的P-state、负载及服务器的功耗之间的关系,建立关系列表;
读取模块,用于当服务器工作时,读取CPU当前的P-state值和负载;
查询模块,用于从所述关系列表中查询所读取的P-state值和负载对应的功耗数据,得到服务器当前的总功耗;
所述查询模块还用于当服务器当前的总功耗超过预设功耗时,从所述关系列表中查询所述预设功耗和预设负载所对应的P-state值;及
控制模块,用于控制所述CPU将当前的P-state设置为上述查询得到的P-state值。
7.如权利要求6所述的服务器功耗控制系统,其特征在于,所述统计模块进行统计的具体过程包括:
获取所述CPU支持的P-state列表,依次将CPU当前的P-state设置为该P-state列表中的值;
在每种P-state值下运行CPU测试程序,将CPU的负载设为按照预定幅度增长;
在每种P-state值和负载下运行所述CPU测试程序预定时间后,读取服务器的电源端的功率记录仪表上记录的功耗数据;及
将该P-state值、负载和对应的功耗数据记录到关系列表中。
8.如权利要求6所述的服务器功耗控制系统,其特征在于:
所述统计模块还用于统计所述服务器的硬盘及网卡的功耗。
9.如权利要求8所述的服务器功耗控制系统,其特征在于:
若服务器当前没有网络和磁盘访问,则所述查询模块所查询到的功耗数据即为服务器当前的总功耗;
若服务器当前存在网络和/或磁盘访问,则所述查询模块所查询到的功耗数据加上网卡和/或硬盘的功耗,得到服务器当前的总功耗。
10.如权利要求8所述的服务器功耗控制系统,其特征在于,若服务器当前存在网络和/或磁盘访问,则所述查询模块先用所述预设功耗减去网卡和/或硬盘的功耗,得到一个新功耗值,然后从所述关系列表中查询该新功耗值和预设负载所对应的P-state值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310444364.4A CN104516470A (zh) | 2013-09-26 | 2013-09-26 | 服务器功耗控制方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310444364.4A CN104516470A (zh) | 2013-09-26 | 2013-09-26 | 服务器功耗控制方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104516470A true CN104516470A (zh) | 2015-04-15 |
Family
ID=52791928
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310444364.4A Pending CN104516470A (zh) | 2013-09-26 | 2013-09-26 | 服务器功耗控制方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104516470A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105577796A (zh) * | 2015-12-25 | 2016-05-11 | 曙光信息产业(北京)有限公司 | 集群的功耗控制方法及装置 |
CN105676996A (zh) * | 2015-12-31 | 2016-06-15 | 曙光信息产业(北京)有限公司 | 一种龙芯服务器的功耗控制方法和装置 |
CN106708239A (zh) * | 2015-11-12 | 2017-05-24 | 中国长城计算机深圳股份有限公司 | 一种功耗调整方法及装置 |
CN107239133A (zh) * | 2017-06-01 | 2017-10-10 | 合肥联宝信息技术有限公司 | 一种智能设备的控制方法及装置 |
CN107861602A (zh) * | 2017-10-20 | 2018-03-30 | 努比亚技术有限公司 | 终端cpu性能控制方法、终端及计算机可读存储介质 |
CN111478824A (zh) * | 2020-03-20 | 2020-07-31 | 苏州浪潮智能科技有限公司 | 一种网卡功耗测试方法、装置、系统 |
CN112350845A (zh) * | 2019-08-09 | 2021-02-09 | 华为技术有限公司 | 广域网口配置方法、网络设备及计算机可读存储介质 |
CN112395153A (zh) * | 2020-10-13 | 2021-02-23 | 广州市高科通信技术股份有限公司 | 基于业务功能的元器件功耗估算方法 |
-
2013
- 2013-09-26 CN CN201310444364.4A patent/CN104516470A/zh active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106708239A (zh) * | 2015-11-12 | 2017-05-24 | 中国长城计算机深圳股份有限公司 | 一种功耗调整方法及装置 |
CN105577796A (zh) * | 2015-12-25 | 2016-05-11 | 曙光信息产业(北京)有限公司 | 集群的功耗控制方法及装置 |
CN105676996A (zh) * | 2015-12-31 | 2016-06-15 | 曙光信息产业(北京)有限公司 | 一种龙芯服务器的功耗控制方法和装置 |
CN107239133A (zh) * | 2017-06-01 | 2017-10-10 | 合肥联宝信息技术有限公司 | 一种智能设备的控制方法及装置 |
CN107861602A (zh) * | 2017-10-20 | 2018-03-30 | 努比亚技术有限公司 | 终端cpu性能控制方法、终端及计算机可读存储介质 |
CN107861602B (zh) * | 2017-10-20 | 2021-03-30 | 努比亚技术有限公司 | 终端cpu性能控制方法、终端及计算机可读存储介质 |
CN112350845A (zh) * | 2019-08-09 | 2021-02-09 | 华为技术有限公司 | 广域网口配置方法、网络设备及计算机可读存储介质 |
CN112350845B (zh) * | 2019-08-09 | 2022-05-17 | 华为技术有限公司 | 广域网口配置方法、网络设备及计算机可读存储介质 |
CN111478824A (zh) * | 2020-03-20 | 2020-07-31 | 苏州浪潮智能科技有限公司 | 一种网卡功耗测试方法、装置、系统 |
CN112395153A (zh) * | 2020-10-13 | 2021-02-23 | 广州市高科通信技术股份有限公司 | 基于业务功能的元器件功耗估算方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104516470A (zh) | 服务器功耗控制方法及系统 | |
US10552761B2 (en) | Non-intrusive fine-grained power monitoring of datacenters | |
US10877533B2 (en) | Energy efficient workload placement management using predetermined server efficiency data | |
US8001403B2 (en) | Data center power management utilizing a power policy and a load factor | |
US9098282B2 (en) | Methods, systems and apparatus to manage power consumption of a graphics engine | |
KR20190104867A (ko) | 스토리지 시스템의 전력 분석을 수행하는 방법 및 장치 | |
US20200150733A1 (en) | Mass storage device electrical power consumption monitoring | |
US20150143142A1 (en) | System and method for dynamic dcvs adjustment and workload scheduling in a system on a chip | |
CN113325998B (zh) | 读写速度控制方法、装置 | |
CN105577796A (zh) | 集群的功耗控制方法及装置 | |
US10216212B1 (en) | Operating temperature-based mass storage device management | |
US20230229216A1 (en) | System and methods for server power management | |
CN109324679A (zh) | 一种服务器能耗控制方法及装置 | |
CN111694653A (zh) | 计算系统中调整计算算子类型分布的方法、装置及系统 | |
CN110347546B (zh) | 监控任务动态调整方法、装置、介质及电子设备 | |
Khan et al. | Advanced data analytics modeling for evidence-based data center energy management | |
CN109489190B (zh) | 一种机房冷量的调控方法及系统 | |
CN117972367A (zh) | 一种数据存储预测方法、数据存储子系统及智能计算平台 | |
Huang et al. | Data center IT efficiency measures | |
JP2005115940A (ja) | ラック機器管理情報調整システムおよび方法 | |
US20230068471A1 (en) | Proxy-based instruction throttling control | |
CN110601195B (zh) | 配电网用户电源接入方法、系统、服务器及存储介质 | |
Basmadjian et al. | Hidden storage in data centers: Gaining flexibility through cooling systems | |
CN118277223B (zh) | 服务器性能评估方法、电子设备、存储介质及产品 | |
KR101581192B1 (ko) | 소비전력 관리 시스템 및 소비전력 관리 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150415 |
|
WD01 | Invention patent application deemed withdrawn after publication |