2012-10-19 12 views
5

私は専用のX3440サーバーでリアルタイムアプリケーションを実行していて、なぜアプリケーションのパフォーマンスが以前のVPSボックスより悪いのだろうと思っています。次に、私はhttp://i7z.googlecode.com/svn/trunk/i7z_64bitをダウンロードし、それを実行して通常の使用状況(約10%のCPUの上)で、すべてのCPUコアが900MHz〜1200MHzのままであり、それが急速に変動し、不一致であることを確認します。パフォーマンスガバナがCPU周波数を最大でロックしない

次に、ガバナーをオンデマンドからパフォーマンス(エコーパフォーマンス>/sys/devices/system/cpu/cpu */cpufreq/scaling_governor)に設定しようとすると、すべてのCPUコアが1700〜1900Mhz (まだ変動していますが)アプリケーションのパフォーマンスはまだ私の基準を満たしていません。

"service cpuspeed stop"と入力してスケーリングを完全に無効にしようとしていますが、それでもパフォーマンスガバナーと同じ結果が表示されています。パフォーマンスガバナーがCPU周波数を最大でロックしていないのはなぜかと思いました。

その後、私はコアのそれぞれに4つの別々のダミー素敵な優先度の低いタスクを実行しよう: yumの

コンテンツdummy.c gccの

nanoをインストールします。

int main() { 
    while(1); 
} 

gccのダミー.c -oダミー

このようにして、4つのコアはすべて2533mhzと(ガバナの設定にかかわらず)もはや変動することはありません。そして今、私のアプリケーションは非常に恒星を演出し、何の不満もありません。しかし、私はこれらのタスクがリソースを無駄にする方法が嫌いです。優先度の低いメインアプリケーションを妨害していないにもかかわらずです。

私の質問: 私の家庭のデスクトップのWindowsコンピュータでは、何とか私のCPU速度は常に最高周波数で安定しています。しかし、なぜこのCentOS 6 2.6.32 x86_64専用サーバでは起こらないのですか?最高の低優先度タスクを使用せずに、すべてのCPUコアを最大周波数に設定する方法はありますか?

答えて

0

短いGoogleセッションで私にこのarticleが届きました。これは、cpuspeedサービスの再起動が停止するよりもむしろ必要であることを示唆しています。

関連する問題