繁体   English   中英

性能调控器不会将CPU频率锁定在最大值

[英]Performance governor doesn't locks the CPU frequency at max

我正在专用的X3440服务器上运行实时应用程序,并想知道为什么应用程序性能比我以前的VPS盒差。 然后我下载http://i7z.googlecode.com/svn/trunk/i7z_64bit并执行它以查看在正常使用情况下(在10%左右的CPU中),所有CPU内核仅保持在900Mhz~1200Mhz左右,并且波动很快并且不一致。

然后我尝试将调控器从ondemand设置为performance(echo performance> / sys / devices / system / cpu / cpu * / cpufreq / scaling_governor),我的应用程序运行得更好,因为现在所有的CPU核心都保持在1700~1900Mhz左右(仍在波动) ,但应用程序性能仍然不符合我的标准。

我试图通过输入“service cpuspeed stop”来完全禁用任何缩放,它仍然显示与性能调控器相同的结果。 我想知道为什么性能调控器没有将CPU频率锁定在最大值。

然后我尝试在每个核心中运行4个独立的虚拟低优先级任务:yum install gcc

纳米虚拟

内容:

int main() {
    while(1);
}

gcc dummy.c -o dummy

nice taskset -c 0 ./dummy & nice taskset -c 1 ./dummy & nice taskset -c 2 ./dummy & nice taskset -c 3 ./dummy &

这样,所有4个内核将保持在2533mhz并且不再波动(无论调控器设置如何),现在我的应用程序表现非常出色并且没有任何抱怨。 但是,我不喜欢这些任务浪费资源的方式,即使它不会干扰主应用程序,因为它的优先级较低。

我的问题:在我的家用台式机Windows电脑中,不知怎的,我的CPU速度总是以最大频率稳定。 但为什么在这个CentOS 6 2.6.32 x86_64专用服务器上没有发生这种情况呢? 有没有办法在不使用任何优秀的低优先级任务的情况下将所有cpu内核设置为最大频率?

一个简短的谷歌会议给我带来了这篇文章 ,建议重新启动cpuspeed服务,而不是停止它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM