インテル® VTune™ Amplifier 2018 ヘルプ
プラットフォーム全体のディスク I/O 解析を使用して、ディスク・サブシステム、CPU、およびプロセッサー・バスの使用率を監視します。
これは、Windows* ではプレビュー機能です。プレビュー機能は、将来のリリースに含まれるかどうかは未定です。皆さんが有用性に対するフィードバックを送ることで、将来の採用決定の判断に役立ちます。プレビュー機能で収集されたデータは、将来のリリースで下位互換が提供される保証はありません。parallel.studio.support@intel.com または intelsystemstudio@intel.com へフィードバックをお送りください。
この解析タイプは、ストレージ・サブシステムとハードウェア・イベントを組み合わせた一貫性のあるビューと、ハードウェアによって実行される I/O パケットとユーザーレベルのソースコードを容易に一致させる方法を提供するため、ハードウェア・イベントベース・サンプリング収集とシステム全体の Ftrace* 収集 (Linux* と Android* ターゲット)/ETW 収集 (Windows* ターゲット) を使用します。
解析は、カーネル・ブロック・ドライバー・システムよって生成されるデータに依存します。プラットフォームで非標準のブロック・ドライバー・サブシステムを使用している場合 (ユーザー空間ストレージドライバーなど)、解析タイプでディスクメトリックは利用できません。
ディスク I/O 解析は次のことを特定するのに有用です。
I/O と計算操作のインバランス (HPC アプリケーション)
長いレイテンシーの I/O 要求 (トランザクション・ワークロード)
ハードウェア利用効率 (ストリーミング)
ディスク I/O 解析を実行して以下を調査します。
インテル® VTune™ Amplifier は、ディスク I/O 解析のため次のシステム全体のメトリックを使用します。
システム全体の I/O 待機メトリック (Linux* ターゲットのみ) は、システムのコアがアイドル状態ですが、I/O アクセスによってコンテキスト・スイッチが発生したスレッドがあることを示します。
ストレージデバイスに送出されている I/O 要求の数を見るには、I/O キューの深さメトリックを調査します。キューの要求がゼロである場合、スケジュールされている要求がなく、ディスクがまったく使用されていないことを意味します。
I/O データ転送メトリックは、ストレージで読み書きされたバイト数を示します。
ページ・フォールト・メトリックは、システムで発生したページフォールトの回数を示します。この解析は、メモリーマップされたファイルのアクセスを解析するのに役立ちます。
CPU アクティビティー・メトリックは、次のステージに費やされたシステム時間を示します。
アイドル状態 - CPU コアがアイドル状態。
アクティブ状態 - CPU コアはスレッドを実行している。
I/O 待機 (Linux* ターゲットのみ) - CPU コアはアイドル状態ですが、ディスクへのアクセスでブロックされたスレッド (このコアで実行される可能性がある) があります。
PCIe* 帯域幅メトリックは、PCIe* バスを経由して転送されたデータ量 (秒間) を表します。このメトリックは、インテル® マイクロアーキテクチャー開発コード名 Sandy Bridge EP 以降をベースとするサーバー・プラットフォームでのみ収集されます。
必要条件:
管理者権限 (Windows*) または root 権限 (Linux*) でインテル® VTune™ Amplifier を実行します。Linux* ターゲット上でのディスク I/O 解析では、インテル® VTune™ Amplifier は自動的に、perf_event_paranoid を 0 に設定します。
インテル® VTune™ Amplifier のプロジェクトを作成し、解析ターゲットを指定します (アプリケーション、プロセス、またはシステム)。選択したターゲットのタイプにかかわらず、インテル® VTune™ Amplifier は自動的に [Analyze system-wide (システム全体を解析)] ターゲットオプションを有効にし、ディスク I/O 解析向けにシステム全体のメトリックを収集します。
ディスク I/O 解析を実行して以下を調査するには:
インテル® VTune™ Amplifier の [New Analysis (新規解析)] ボタン (スタンドアロン GUI)/ (Visual Studio* IDE) をクリックします。
[Analysis Type (解析タイプ)] ウィンドウがアクティブな状態で [New Amplifier Result (新規 Amplifier 結果)] タブが開きます。
左ペインの解析ツリーから、[Platform Analysis (プラットフォーム解析]) > [Disk Input and Output (ディスク I/O)] を選択します。
右側に [Analysis Configuration (解析オプション)] ペインが開きます。
この事前定義された解析タイプでは、設定の追加オプションは利用できません。
[Start (開始)] をクリックして解析を実行します。
コマンドラインからディスク I/O 解析を実行するには、以下を入力します。
$ amplxe-cl -collect disk-io -- <target> [target_options]
インテル® VTune™ Amplifier はデータを収集し、rxxxdiskio という結果を生成し、デフォルトで [Disk Input and Output] ビューポイントを開きます。このビューポイントは、時間経過で分散されアプリケーションの実行と関連する I/O 待機 (Linux* ターゲットのみ)、I/O 操作および I/O データ転送の特性を表示します。[Summary (サマリー)] ウィンドウの [Disk Input and Output Histogram (ディスク I/O ヒストグラム)] セクションから開始します。低速な I/O 操作を特定し、以降の解析のためグリッド表示に切り替えます。
I/O と計算操作のインバランスを特定した場合、I/O 操作を非同期にすることを検討してください。
長いレイテンシーを伴う I/O 要求では、データを事前にロードしたり、段階的に書き込みを行う、またはストレージデバイスを (SSD などに) アップグレードすることを検討してください。