Windows 用のディスクIO負荷ツール(DiskSpd.exe)を使ってみる

Pocket

システム開発していると、負荷試験の1つとして、ディスクIOに高負荷を与えた状態でテストすることがあります。また、運用時に何らかの原因で、プログラムがタイムアウトし、動作しなくなり、その再現テストのために、ディスクIOに高負荷を掛けたいこともあります。
開発者としては、テストや障害原因の調査等に役立つので、使用方法を知っておいた方が良いでしょう。

(1) DiskSpd ツールのダウンロード

DiskSpd は、SQLIO に代わる Windows 用のストレージテストツールである。以下に「DiskSpd」のサイトがあるのでダウンロードする。
本書では、Windows 10 Home, Diskspd v 2.0.17 で動作確認した。

(2) DiskSpd ツールの実行

  1. ダウンロードした Diskspd-v2.0.17.zip を解凍する。
  2. 解凍先に3つのディレクトリ「amd64fre」「armfre」「x86fre」があるので、CPU にあったディレクトリ内の diskspd.exe を使用する。一般家庭のPCなら大抵 Intel だと思うので、x86fre の diskspd.exe を使用すれば大丈夫だろう。armはARMプロセッサを意味し、amd64 が 64bit、x86が 32bitを指す。(追記)
  3. 管理者権限でコマンドプロンプトを立ち上げる。管理者権限でないと、「WARNING: Could not set privileges for setting valid file size; will use a slower method of preparing the file」というエラーが出る。

例えば、「10GBのファイルを作成し、20秒間の読み込みテストを実行する」場合は、「diskspd.exe -c10G -d20 test.txt」と入力する。実行中は、ディスクIOが100%になっている。

diskspd-running

実行が完了すると、詳細なレポートが表示される。

diskspd-after

これ以外にも、以下のような細かな処理ができるので、かなりの高機能だ。

以上

2件のコメント

  1. >「amd64fre」「armfre」「x86fre」があるので、CPU にあったディレクトリ内の diskspd.exe を使用する。

    amd64 が 64bit、x86が 32bit、armはARMプロセッサという意味ですよ

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です