@takkinnn

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

LinuxにおけるディスクIOのレイテンシ確認について

LinuxにおけるディスクIOのレイテンシ確認について

iostatやsarでディスクIOレイテンシ取得する場合、どのオプションが該当するのでしょうか?

0 likes

1Answer

iostatであれば、

$ iostat -xk 1
$ iostat -xk 1 -p /dev/sdb   # 特定デバイスについて確認したい場合はこちら

のようにされるのがよさそうです。-xで拡張ログ出力です。
表示された結果のawaitとついている時間がデバイスに発行したリクエストが処理されるまでの平均処理時間となるので、そちらを参考にするといいと思います。

具体例としては、

/dev/sdb/ にmountされている状態で

$ mount | grep /dev/sdb
/dev/sdb on / type ext4 (rw,relatime,discard,errors=remount-ro,data=ordered)

ddコマンドで適当なサイズのファイルをwriteしてやると、

$ dd if=/dev/zero of=test bs=1M count=300 oflag=direct
300+0 records in
300+0 records out
314572800 bytes (315 MB, 300 MiB) copied, 0.18611 s, 1.7 GB/s

その瞬間のiostatの結果は以下のようになります。
w_awaitがデバイスに発行した書き込みリクエストが処理されるまでの平均処理時間(msオーダー)です。

$ iostat -xk 1
・・
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.00    0.00    2.24    0.00    0.00   97.76

Device            r/s     rkB/s   rrqm/s  %rrqm r_await rareq-sz     w/s     wkB/s   wrqm/s  %wrqm w_await wareq-sz     d/s     dkB/s   drqm/s  %drqm d_await dareq-sz  aqu-sz  %util
sda              0.00      0.00     0.00   0.00    0.00     0.00    0.00      0.00     0.00   0.00    0.00     0.00    0.00      0.00     0.00   0.00    0.00     0.00    0.00   0.00
sdb              0.00      0.00     0.00   0.00    0.00     0.00  600.00 307200.00     0.00   0.00    0.45   512.00    0.00      0.00     0.00   0.00    0.00     0.00    0.27  20.00
0Like

Comments

Your answer might help someone💌