インテル® Advisor チュートリアル: ルーフラインの使用例

インテル® Advisor

この記事は、インテル® デベロッパー・ゾーンに公開されている「Intel® Advisor Tutorial: Use the Automated Roofline Chart to Make Optimization Decisions」の「Roofline Use Case」の日本語参考訳です。


バージョン: 2021.1 (更新日: 12/04/2020)

このトピックは、自動ルーフライン・グラフを使用して、優先度の高い最適化を決定する方法を紹介するチュートリアルの一部です。

ルーフライン解析は、マシンの達成可能な最大パフォーマンスに対して、アプリケーションの実際のパフォーマンス演算強度を視覚的に示すオプションの解析です。

ルーフライン・グラフは、次の質問に対する答えを提供します。

  • 現在のハードウェア・リソースで達成可能な最大パフォーマンスは?
  • アプリケーションは現在のハードウェア・リソースで最適に動作するか?
  • そうでない場合、最適化の最良の候補は?
  • メモリー帯域幅や計算能力が各最適化候補のパフォーマンスを制限しているか?

ルーフライン解析はキャッシュを意識しており、DDR メモリーのトラフィックだけでなく、すべてのメモリー・サブシステムのトラフィックを計測します。シングルスレッド・コードとマルチスレッド・コードの両方に対応しています。

ベクトル化アドバイザーと C++ サンプル・アプリケーション (roofline_demo_samples) を使用して、以下の操作を行います。

  • ルーフライン解析を実行します。
  • 最も興味のあるルーフライン・グラフのデータに注目します。
  • ルーフライン・グラフのデータを解釈します。
  • ルーフライン・グラフのデータを基に最適化の方針を決定します。
ステップ 説明
ステップ 1: チュートリアルの準備 次のいずれかの操作を行います。
  • インテル® Advisor スタンドアロン GUI を使用する場合:
    • ソフトウェア・ツールを入手して、サンプル・アプリケーションを展開します。
    • サンプル・アプリケーションを準備します。
    • インテル® Advisor を起動します。
    • プロジェクトを準備します。
  • Visual Studio* IDE を使用する場合:
    • ソフトウェア・ツールを入手して、サンプル・アプリケーションを展開します。
    • Visual Studio* ソリューションを開きます。
    • ソリューションを準備します。
ステップ 2: ルーフライン解析の実行
  • ルーフライン解析を実行します。
  • ルーフライン・グラフを表示/非表示にします。
  • ルーフライン・グラフのコントロールを理解します。
  • ルーフライン・グラフのデータを理解します。
ステップ 3: メモリー帯域幅のボトルネックへの対応
  • 結果のスナップショットを開きます。
  • 各種コントロールを使用して、最も興味のあるルーフライン・グラフのデータに注目します。
  • ルーフライン・グラフのデータを解釈します。
ステップ 4: 計算能力のボトルネックへの対応
  • 結果のスナップショットを開きます。
  • 各種コントロールを使用して、最も興味のあるルーフライン・グラフのデータに注目します。
  • ルーフライン・グラフのデータを解釈します。
ステップ 5: 実際のボトルネックの特定
  • 結果のスナップショットを開きます。
  • 各種コントロールを使用して、最も興味のあるルーフライン・グラフのデータに注目します。
  • ルーフライン・グラフのデータを解釈します。

製品および性能に関する情報

1 性能は、使用状況、構成、その他の要因によって異なります。詳細については、www.Intel.com/PerformanceIndex/ (英語) を参照してください。

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