ロード実行中に、IO待機は常に約60〜70%の高い値に達します。

ロード実行中に、IO待機は常に約60〜70%の高い値に達します。

IOwait関連の問題が発生しました。監視中のサーバーから実行をロードしている間、非常に高いIOwait値が表示されます。(50%-70%)。私はSAR報告コマンドを使用してこのデータを生成しました。理想的には、値は次の値より低くなければなりません。8%-9%サーバーがあるので12コア(1/12~0.08)。私はこれをどこかで読み、それに応じて仮定しました。

このような高いIOwait問題を解決するために何ができるのか、そしてパフォーマンスを向上させるために確認できるサーバーの他の要素とこの問題はどのように関連していますか?

ベストアンサー1

少しLinuxの秘密を公開します。Linuxには信頼できるiowait統計がありません。。これはただの事実です。 ~から工程(5)私達は読みます:

iowait(Linux 2.5.41以降)

(5) I/O が完了するのを待つ時間です。この値は、次の理由で信頼できません。

  1. CPU は I/O が完了するまで待機しません。 iowaitは、ジョブがI / Oが完了するのを待つ時間です。完了していないジョブI / OによってCPUがアイドル状態になると、そのCPUに他のジョブがスケジュールされます。

  2. マルチコアCPUでは、I / Oが完了するのを待つタスクはどのCPUでも実行されないため、CPUあたりのiowaitを計算するのは困難です。

  3. 場合によっては、このフィールドの値が小さくなることがあります。

したがって、私のアドバイスは、Linuxでiowait測定を忘れてしまうことです。

おすすめ記事