とっておきの手土産を教えて

マルチコアCPUの負荷偏り
CPUの負荷をsar -P ALLで見ると1つのコアのみ負荷が高い場合が多いと思うのですが、これはなぜでしょうか?
また、解決する方法(すべてのコアに均等に負荷をかける)はあるのでしょうか?

A 回答 (2件)

「1つのコアのみ負荷が高い場合が多いと思うのですが、これはなぜでしょうか?」


 ソフトがマルチCPUやマルチスレッドに対応していないからです。


「また、解決する方法(すべてのコアに均等に負荷をかける)はあるのでしょうか? 」
 ありません。なのでCore-iシリーズでは、複数のCPUに負荷が分散されていないときは、負荷の掛かっているCPUのクロックを上げる仕掛けになっています。
    • good
    • 3

単純な例を挙げます。



シングルスレッドのプログラムがコアを一つ占有したら、もちろんそこに負荷が片寄ります。
スケジューラがそういう高負荷なコアを避けるように他のアプリケーションを配置し直したとしても、そのプログラムがコアを占有し続ける限りはそのコアに負荷が片寄ったままです。

つまり、何かしらのコア占有率が高いシングルスレッドのプログラムが動いているのが原因と考えられます。
これはプログラム側の問題なので、OS設定でどうにかなる話ではありません。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報