快速业务通道

低延迟和Linux中的C状态

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-03-24

发布者:Dell-Terry Z 作者:Stuart Ha

最近在设置一个实时、低延迟Linux系统时,我遭遇了,至少作为一名系统管理员会这样的一头雾水.

当前戴尔服务器采用的是可在闲置时保持低电压状态的处理器.闲置状态称为“C状态”.

C0状态是正常运行状态.如果一个处理器置于较高级别的C状态,就可以节省电力,但处理器也得花更长的时间在必要时再次开始执行代码.当调度代码即将在闲置处理器上运行时,这种迟缓导致了延迟时间的略微加长.之这样,是非0的C状态会从内部关闭处理器的某些组件,需要花费时间让处理器重回C0状态.C状态的级别越高,越能节省电力,但产生的延迟也越长.

对于大多数系统,这样相当值得 - 让处理器重回C0状态所需的若干微秒的延迟不会造成问题.然而,某些应用程序要求系统延迟极低,即使耗费较多电力也在所不辞.考虑到这一点,很多戴尔系统允许在BIOS系统设置工具程序中禁用C状态.

然而,最近的Linux核心(例如用于红帽企业级Linux 6 的核心)包含了针对英特尔处理器的C状态驱动程序,称为“intel_idle”.该驱动程序试图将C状态应用于英特尔处理器 - 即使BIOS系统设置中已经禁用C状态.毫不奇怪,这会引起一定的混乱.想看看您的系统是否在使用这个驱动程序?请在您的核心信息中搜索“intel_idle”.

如果您努力最小化系统延迟,想要禁用C状态,请注意:在BIOS设置中关闭C状态可能还不够.如果发现正在使用intel_idle C状态驱动程序,您可以使用核心参数“intel_idle.max_cstate=0”来禁用intel_idle驱动程序,至此,Linux应恢复为采用由BIOS提供的ACPI(高级配置和电源管理接口)表开展C状态控制.

更多精彩文章请关注:

戴尔技术社区

本文出自 “Dell企业级技术社区” 博客,请务必保留此出处http://dellhome.blog.51cto.com/2924567/742025

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号