専用の X3440 サーバーでリアルタイム アプリケーションを実行していますが、なぜアプリケーションのパフォーマンスが以前の VPS ボックスよりも悪いのか疑問に思っています。次に、 http://i7z.googlecode.com/svn/trunk/i7z_64bitをダウンロードして実行し、通常の使用状況 (CPU の約 10% あたり) で、すべての CPU コアが 900Mhz ~ 1200Mhz 程度にとどまり、急速に変動することを確認します。そして一貫性がありません。
次に、ガバナーをオンデマンドからパフォーマンス (エコー パフォーマンス > /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor) に設定しようとしましたが、すべての CPU コアが 1700 ~ 1900Mhz 付近にとどまっているため (まだ変動しています)、アプリケーションのパフォーマンスが向上します。 、しかし、アプリケーションのパフォーマンスはまだ私の基準を満たしていません。
「service cpuspeed stop」と入力してスケーリングを完全に無効にしようとしましたが、それでもパフォーマンス ガバナーと同じ結果が表示されます。パフォーマンスガバナーがCPU周波数を最大にロックしなかったのはなぜだろうと思っていました。
次に、各コアで 4 つの個別のダミーのナイス優先度の低いタスクを実行しようとします: yum install gcc
ナノダミー.c
コンテンツ:
int main() {
while(1);
}
gcc ダミー.c -o ダミー
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 コアを最大周波数に設定する方法はありますか?