ディスクスピード
DiskSpd は、Microsoft の Windows、Windows Server、およびクラウド サーバー インフラストラクチャ エンジニアリング チームが開発したストレージ パフォーマンス ツールです。最新のドキュメントについては、https://github.com/Microsoft/diskspd/wiki にアクセスしてください。
ツール自体に加えて、このリポジトリは DiskSpd を利用する測定フレームワークをホストします。最初の例は、記憶域スペース ダイレクトを備えた Windows Server ハイパーコンバージド環境で使用される VM フリートです。
このプロジェクトはマイクロソフトのオープンソース行動規範を採用しています。詳細については、「行動規範に関するよくある質問」を参照するか、追加の質問やコメントがあれば [email protected] までお問い合わせください。
リリース
[リリース] ページには、DiskSpd ツールの最新リリースのコンパイル済みバイナリ (ZIP) とソース コードが含まれています。 DiskSpd の最新の更新プログラムは、https://github.com/Microsoft/diskspd/releases/latest/download/DiskSpd.zip (別名 https://aka.ms/getdiskspd) からいつでもダウンロードできます。
新着情報?
ディスクPD
DISKSPD 2.2 2024 年 6 月 3 日
注:非同期 IO ループを変更するには、キューの深さが 1 より大きい場合の結果を再ベースラインする必要があります。新しい設計では、完了キューをより積極的に排出し、特により高いキューの深さを対象とする高速ストレージでレイテンシー測定に影響を与える遅延を短縮します。遅延測定は、レートに対する非常に小さなコストで改善され、バッチ デキューにより遅延測定が使用されない場合 ( -D
または-L
) のレートも改善されます。
IO サイズが小さいほど、最も多くの変化が見られます。
- 新規: プロセッサ トポロジ レポート (XML およびテキスト出力) にソケット、NUMA、コア、電力効率クラス (ビッグ/リトル コア) が追加されました。
- > 1 が存在する場合、トポロジ要素はテキスト結果にのみ表示されます (マルチソケット システムなど)
- 新しいコアの番号付けと同様に、CPU の番号付けはグループ相対のままです。
- 最も高い電力効率クラスには
P
接尾辞が付けられます (通常は1P
v. 0
になります)。 - 注: 効率クラスは大きな影響を与える可能性があります。異種システムで作業する場合は、スレッド アフィニティ ルールと組み合わせてコア プロパティを認識する必要があります(
-a
および-n
を参照)
- 新機能: アクティブな電力設定レポート
- 新規: ベース ターゲット オフセット スイッチで範囲指定が可能になりました:
-Bbase[:length]
; -B
と-f
置き換えます - 実行後のレイテンシのヒストグラム処理が大幅に高速化されました
- 詳細な出力はより一貫性があります。実際のウォームアップ、測定された間隔、およびクールダウン間隔と予想される間隔が含まれます。
バイナリ リリースは Windows 8 および Windows Server 2012 までをサポートします。現在はユニバーサル CRT を使用しています。
DISKSPD 2.1 2021/7/1
- IOPS 単位 (指定されたブロックサイズごと) でスループット制限を指定できる新しい
-gi
形式 - 新しい
-rs
、ランダム/シーケンシャルの混合操作 (pct ランダム) を指定します。ランレングスの幾何学的分布 - 新しい
-rd
は、ターゲット全体で不均一な IO 分散を指定します。- 目標パーセンテージによる
pct
- 絶対オフセットによる
abs
- 新しい
-Rp
指定されたプロファイル出力フォームに指定されたパラメーター セットを表示します。 -X XML プロファイルおよび従来のコマンド ラインで動作します - XML の結果/プロファイルがレビューしやすいようにインデントされるようになりました。
- テキスト結果出力の更新
- サイズ単位 (K/M/G、現在は TiB) で値を小数点以下 2 桁まで表示するようになりました。
- 指定しない限り、スレッドのストライドは表示されなくなりました
- -F/-O スレッドプールパラメータが表示される
- XML プロファイルをより汎用的に構築できるようになりました
- XML プロファイルは、テンプレート化されたターゲット名 (*1、*2) で記述でき、コマンドライン呼び出しから順に置き換えられます。
- コマンドラインでは、テンプレートのターゲット仕様とともに、-X のオプション (-v、-z、-R、および -W/-d/-C) を使用できるようになりました。
DISKSPD 2.0.21a 2018 年 9 月 21 日
- メモリ マップド I/O のサポートを追加しました。
- メモリマップド I/O を有効にする新しい
-Sm
オプション - メモリ マップド I/O のフラッシュ オプションを指定する新しい
-N
オプション
- Event Tracing for Windows (ETW) イベントの提供のサポートを追加しました
- ETW トレースを有効にする Windows Performance Recorder (WPR) プロファイルが含まれています
- ResultParser 出力にシステム情報を追加しました。
DISKSPD 2.0.20a 2018 年 2 月 28 日
- 結果の再ベースラインが必要になる可能性のある変更:
- 目に見えるコストの減少を示す可能性のある新しい乱数ジェネレーター
- パフォーマンスを向上させるために、
-Z
オプションを使用して 512 バイトにアライメントされたバッファーに切り替えました。
- スレッドごとの未処理の IO リクエストの数を指定するための新しい
-O
オプション - 書き込みバッファの内容を IO ごとにランダム化するための新しい
-Zr
オプション - XML: ターゲットの重み付けスキームをサポートするために新しい
要素を追加します。 - IOPS データから取得された強化された統計
- 内蔵 XSD を使用した XML プロファイルの検証のサポートが追加されました
- RAW ボリュームの処理のサポートが追加されました
- 64 コアを超えるシステムで動作するように CPU 統計を更新しました
- CPU 統計の計算と精度を更新しました
- ETW 統計のサポートを再度有効にする
DISKSPD 2.0.18a 2016/5/31
- アップデート
/?
-Sh
と非推奨の-h
の使用例 - GPT パーティション メディア上のボリュームの操作を修正 (:)
- IO 優先順位のヒントを適切なスタック アライメントに修正しました (8 バイトでない場合は失敗します)。
- iB 表記を使用して、テキスト結果の出力が 2^n 単位 (KiB/MiB/GiB) であることを明確にします。
DISKSPD 2.0.17a 5/01/2016
-
-S
、OS/ソフトウェア キャッシュに関係なくライトスルーを制御するために拡張されています。これにより、特に、バッファされたライトスルーを指定できるようになります ( -Sbw
)。 - XML: ライトスルーを指定する新しい
要素を追加します。 - XML:
は発行されなくなりました (ただし、解析は行われます)。代わりに、
と
が使用されます。 - テキスト出力: OS/ソフトウェア キャッシュとライトスルー状態が個別に文書化されるようになりました (隣接した行)
- 遅延ヒストグラムは、テキスト出力と XML 出力の両方で 9-9 (10 億分の 1) までレポートするようになりました。
- 書き込みコンテンツ ソース ファイル (
-Z,
) を開くことができなかった場合のエラー メッセージが追加されました
VMフリート
VM フリートは、記憶域スペース ダイレクトを使用して Windows Server ハイパーコンバージド環境のストレージ機能を調査するためのパフォーマンス特性評価および分析フレームワークです。
VM フリート 2.1.0.0 2024 年 4 月 3 日
- Arc VM 管理のサポート (Arc によって管理されるクラスターにのみ適用可能)
-
Set-FleetRunProfileScript
- 定義されたワークロード プロファイルの 1 つに基づいてフリーラン スクリプトを生成します。 -
Watch-FleetCPU
- ゲスト VCPU 使用率を監視するための新しいサポート (-Guest)。データ停止に対処できる - 修正: パフォーマンス カウンターの処理により、断続的なデータ ドロップアウトが管理されるようになりました (従来の relog.exe による)
- 修正: 実行中の VM ヘルスチェックは、多くの VM の検証に意図したランタイムよりも時間がかかる可能性を処理するようになりました。誤った失敗を避けるための早期終了
- 修正: キャッシュの動作を変更するときに、キャッシュ層からの再起動が必要な指示を無視します。誤った失敗を避ける
VM フリート 2.0.2.2 2021 年 12 月 1 日
- 2.0.2.1 の作業によって引き起こされる New-Fleet 中のクラスターのリモート処理の問題を修正
- New-Fleet でタイムスタンプ付きのロギングを使用し、デフォルトの出力を簡素化し、色付けを解除します
VM フリート 2.0.2.1 2021 年 11 月 9 日
- Move-Fleet および Get-FleetDataDiskEstimate でのクラスターのリモート処理の問題を修正
- Start-FleetScratch のタイミングの問題を修正。フリーランのトリガーを避けるために、常にフリート一時停止から開始します。
- 一意性を使用して、繰り返しの場合に Start-FleetSweat 実行プロファイルを保証します
VM フリート 2.0.2 2021 年 11 月 2 日
- Windows Server 2019/RS5ホストの動作確認・サポートを開始
- HDD 容量システムの読み取りキャッシュのウォームアップが高速化されるはずです
Set-FleetPause
、デフォルトで完了する前に VM の応答を待ちます (-Timeout を参照)
以下を含むいくつかのマイナーな修正:
- フリート VM で Windows 回復コンソールを無効にする
- 修正:
Show-Fleet
IOPS ビューがすべての VM ディスク デバイスを集約するようになりました。 - 修正: 漏洩/競合するデータ コレクターと BLG を自動的にクリーンアップする
VM フリート 2.0 2021 年 9 月 22 日
- メジャー リリースとファースト クラス Powershell モジュールとしての書き換え
- 元のスクリプトベースの VM フリートは引き続き Frameworks/VMFleet1.0 で利用可能です
- Wiki のドキュメントを参照してください
ソースコード
DiskSpd のソース コードは、GitHub で次の場所にホストされています。
https://github.com/Microsoft/diskspd
DiskSpd に関する問題は、次のリンクを使用して報告できます。
https://github.com/Microsoft/diskspd/issues