Solaris での CPU I/O レイテンシの計算

Solaris での CPU I/O レイテンシの計算

Solaris VMからCPU I / Oレイテンシメトリックを取得するコマンドを探しています。

私が見つけた結果vmstat -sは次のとおりです。

2627 user   cpu
62008 system cpu
285180 idle   cpu
**0 wait   cpu**

マニュアルページを見ましたが、vmstat待ち時間に関するテキストは表示されません。

上記の出力の最後の行がI / O待ち時間であると仮定できますか?

ベストアンサー1

いいえ、最後の行はI / Oレイテンシを報告しませんが、実際のロードに関係なくSolarisでゼロを表示するようにハードコードされています。

マルチコアおよびマルチスレッドCPUの普及により、I/O wait時間はもはや実際の意味を持たず、誤解を招く可能性があります。 I / Oは通常単一のCPUユニットにバインドされていないため、1つ以上のI / Oが保留中にI / Oを待つ特定のCPUはありません。いずれの場合も、プロセスだけがI / Oが完了するのを待っています。この待機はCPUサイクルを使用しないため、技術的にCPUはこの間アイドル状態であり、他のタスクに使用できます。 Solaris 10 以降、アイドル時間と区別されない I/O がゼロとして報告され、以前のI/O wait値が CPU アイドル時間に含まれることが事実です。

I / Oが心配な場合は、ディスクの統計を調べてくださいiostat(例iostat -xntc 5:サービス時間svc_t、キューで待機しているI / Oの数wait、キューが空でない時間の割合%wなど)。vmstat、、などを介してCPU統計を報告しましたsartopiostat

この資料はI / Oパフォーマンスの問題を調査するのにも役立ちます。http://dtrace.org/blogs/brendan/2011/05/11/file-system-latency-part-1/

これこの問題はLinuxと同じように解釈されます。

おすすめ記事