メモリーアクセスのパフォーマンス・ボトルネックの検出

インテル® VTune™ プロファイラー

この記事は、インテルの The Parallel Universe Magazine 24 号に収録されている、メモリーアクセスのパフォーマンス・ボトルネックの検出に関する章を抜粋翻訳したものです。

アプリケーションのメモリーアクセスは、パフォーマンスに大きく影響します。スレッド化とベクトル化によりアプリケーションを並列化するだけでは十分ではありません。メモリー帯域幅も重要ですが、多くの場合、ソフトウェア開発者はそのことをよく理解していません。メモリー・レイテンシーを最小限に抑え、帯域幅の向上を支援するツールを利用することで、パフォーマンス・ボトルネックをピンポイントで特定し、その原因を診断することができます。

最近のプロセッサーは、多様なメモリーアクセスを行います。例えば、L1 キャッシュヒットのレイテンシーは、すべてのキャッシュをミスして DRAM にアクセスしなければならない場合のレイテンシーとは大きく異なります。不均等メモリーアクセス (NUMA) アーキテクチャーではさらに複雑さが増します。

インテル® VTune™ Amplifier XE は、メモリーアクセスの解析を支援するさまざまな機能を備えたパフォーマンス・プロファイラーです。新しいメモリーアクセス解析タイプに含まれる各種機能を利用して、次のことが可能です。

  • メモリー階層でパフォーマンスの問題を検出 (L1-、L2-、LLC-、DRAM-バウンドなど)。
  • メモリー・オブジェクトを追跡し、そのレイテンシーを適切なコードとデータ構造に関連付けます。
  • 帯域幅により制限されたアクセスを解析し (DRAM とインテル® QuickPath インターコネクト [インテル® QPI] の帯域幅を含む)、帯域幅をプログラムのタイムラインで表示した DRAM およびインテル® QPI のグラフとヒストグラムを素早く確認できます。
  • パフォーマンスに影響する NUMA 関連の問題を特定できます。

この記事では、新しいメモリーアクセス機能の概要と、この機能によりいくつかの困難なメモリーの問題を解決し、アプリケーションのパフォーマンスを大幅に向上する方法を説明します。

はじめに

インテル® VTune™ Amplifier XE のメモリーアクセス機能を使用するには、新しい [Memory Access (メモリーアクセス)] 解析タイプをクリックして、[Start (開始)] をクリックします (図 1)。

続きはこちら (PDF) からご覧いただけます。

タイトルとURLをコピーしました