[发明专利]一种关闭Linux OS下Intel CPU节能模式的方法在审
申请号: | 201510132063.7 | 申请日: | 2015-03-25 |
公开(公告)号: | CN104731616A | 公开(公告)日: | 2015-06-24 |
发明(设计)人: | 刘冰 | 申请(专利权)人: | 浪潮集团有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 张靖 |
地址: | 250100 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 关闭 linux os intel cpu 节能 模式 方法 | ||
技术领域
本发明涉及服务器系统的开发与测试领域,具体涉及一种关闭Linux OS下Intel CPU节能模式的方法, 从而可以降低程序执行延迟,提升系统整体性能。
背景技术
随着X86服务器的快速发展,Intel 至强服务器处理器应用也越来越广泛,其功能及性能也在不断应和着摩尔定律持续提升。然而性能提升必然的结果就是处理器功耗的不断攀升,用户在关注CPU处理性能的同时也在关注CPU的功耗。Intel CPU为了满足不同用户的需求,提供了两种方式可以降低CPU的功耗,一种是当CPU没有太多任务要处理时,通过降低CPU频率来降低功耗,即CPU的P-States;另一种是当CPU空闲时,通过让CPU进入节能模式来降低功耗,即CPU的C-States。
当CPU进入C-States后会明显的降低CPU的功耗,但当OS有任务要执行时,CPU需要花费时间来退出节能状态。CPU进入的C-States越深,节能效果越好,同时CPU退出节能状态进入正常运行状态的时间也就越长。对于普通用户来讲,CPU的这种节能模式是非常好的,即可以在任务少时降低系统功耗,又能在有任务时自动退出节能模式进入正常工作模式。但是对于某些特别关注系统性能、要求最低延迟的业务系统来说,这种CPU节能模式是不利的。这时就会要求可以方便的把CPU的节能模式彻底关掉,让CPU一直处于正常工作状态。
一般情况下服务器系统的BIOS都在其Setup界面里面提供了用来Enable/Disable C-States的选项。但是该选项是用来通知ACPI 代码的(目前几乎所有类型的OS都是支持ACPI规范的),OS一般会根据ACPI的代码来决定是否Enable 或Disable CPU的C-States,即BIOS是通过ACPI 来通知OS当前用户是否要Enable/Disable C-States。对于Windows OS来讲,因为它是完全遵循ACPI规范的,如果BIOS Setup里面的C-States选项是Disabled,则Windows OS就会在OS里面禁止CPU进入C-States节能状态。但是在Linux OS里面并不完全遵循这一规则。在Linux OS里面有一个叫做“intel_idle”的driver,它会忽略BIOS里面对CPU C-States的控制策略,直接控制CPU的C-States开关状态。这样就造成了用户即使在BIOS Setup里面把CPU C-States设置为了Disabled,但是在Linux OS下CPU C-States还是正常工作的。
发明内容
本发明要解决的技术问题是:为了解决在Linux下不方便关闭CPU C-States节能模式的问题,本发明可以通过修改BIOS选项的方法方便的解决这一问题。而且由于BIOS是可以批量刷新的,所以该发明方法不仅适用于数量较少的服务器还可以适用于服务器数量较大的数据中心或服务器集群。
本发明所采用的技术方案为:
一种关闭Linux OS下Intel CPU节能模式的方法,所述方法通过关闭Intel CPU支持MWAIT指令的方式,阻止CPU进入节能模式。
CPU进行C-States的切换(C-States一般包括C0、C1E、C2、C3、C6等状态,C0状态是CPU的正常工作状态),是通过特定的CPU指令Mwait来实现的。当OS监测到一段时间内没有可执行的指令时,就会通过Mwait指令请求CPU进入一个特定的C-State状态,如C6状态。当OS检测到有任务需要执行时,就会请求CPU进入C0 状态,即正常工作状态。
在Intel Xeon CPU的内部的一个叫MSR 0x1A0 (IA32_MISC_ENABLES)的寄存器,将该寄存器的Bit18的值设为0,CPU就不再支持Mwait指令,Linux OS内的“intel_ilde”driver也就不再工作了。
所述方法的操作流程如下:
(1)在服务器BIOS中添加代码用来创建一个Setup选项,当该Setup选项设为Disable时,将CPU寄存器MSR 0x1A0的Bit18设置为0;
(2)把具有该选项的BIOS文件刷入到目标服务器中;
(3)用户在Linux OS下运行高性能、低延迟的业务程序时,进入BIOS Setup内把该选项设置Disable,然后保存重启。
此时在Linux OS下CPU就不会进入节能模式了。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮集团有限公司;,未经浪潮集团有限公司;许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510132063.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种信息处理方法及电子设备
- 下一篇:PLC控制方法、控制装置及PLC