インテル® Optane™ パーシステント・メモリーのパフォーマンスとその機能をテストするベンチマーク・ツール。
インテル® Memory Latency Checker (MLC) が最大読み込み帯域幅を最大 1.9TB/秒と示している理由は不明です。これは、1 つの fsdax 名前空間にマッピングされた 6 DIMMS (1 リージョン) のシステムにおける 12 チャネルの理論上の最大帯域幅は最大 240 GB/秒であるため、不可能です。
以下のツールを使用して、インテル® Optane™パーシステント・メモリー (PMem) のパフォーマンスをテストできます。
インテル® Memory Latency Checker (インテル® MLC)
アプリケーションのパフォーマンスを決定する重要な要因は、アプリケーションがプロセッサーのキャッシュ階層とメモリー・サブシステムからデータを取り込むのに必要な時間です。インテル® MLCツールは、メモリーのレイテンシーと帯域幅を測定し、システム負荷を増加したときにどのように変化するかを示すために使用されます。また、インテル® MLCには、特定のコアセットからキャッシュまたはメモリーまでの帯域幅とレイテンシーを測定できる、より詳細な調査のためのオプションも用意されています。
インテル® MLCを追加引数なしで実行すると、レイテンシーと帯域幅マトリクス、ピーク帯域幅、ロードされたレイテンシーのすべてのモードが呼び出されます。それぞれを以下のように個別に実行します。
- $mlc –latency_matrix
- $mlc –bandwidth_matrix
- $mlc –peak_injection_bandwidth
- $mlc –loaded_latency
インテル® MLCのデフォルトの動作は、メモリーモードで構成されている場合、DRAM またはパーシステント・メモリー・モジュールインテル® Optane™のみをテストすることです。インテル® MLCを使用して App Direct モードでパーシステント・メモリー・モジュールインテル® Optane™テストするには、devdax モードを使用して名前空間を作成する必要があります。インテル® MLCテストは 、/dev/daxN.M デバイスを使用するように構成できます。ダウンロード・バンドルに含まれるインテル® MLCドキュメントには、devdax デバイスを使用するための例がいくつかあります。fsdax、セクター、ローをテストするには、Flexible I/O テスター (FIO) などの高レベルのベンチマーク・ユーティリティーを使用する必要があります。
フレキシブル IO テスター (FIO)
FIO は、特定のセットアップを記述するジョブファイルを使用して、希望する I/O ワークロードをシミュレートするツールです。最もシンプルなジョブ・ファイルには、共有パラメーターを定義するグローバル・セクションと、関連するジョブを記述する 1 つ以上のジョブ・セクションがあります。FIO は、ジョブファイルのセットアップとランタイム・パラメーターに関する詳細なドキュメントを提供します。
FIO は、パーシステント・メモリー対応ファイルシステムに関する I/O を理解するために適応した。ioengine を指定する場合、DAX 対応ファイルシステムに次のいずれかのオプションを選択します。
- Mmap
- libpmem
- dev-dax
- pmemblk
FIO は、Linux*、Solaris*、AIX*、HP-UX*、OSX*、NetBSD*、OpenBSD*、Windows*、FreeBSD*、DragonFly* で動作するようにテストされています。また、他のシステムでも動作する可能性があります。パーシステント・メモリー・エンジンは、パーシステント・メモリーをサポートするオペレーティング・システムでのみ動作します。