この記事は、インテル® デベロッパー・ゾーンに公開されている「Intel® Advisor Tutorial: Use the Automated Roofline Chart to Make Optimization Decisions」の「Visual Studio* IDE: Prepare the Sample Application」(https://software.intel.com/content/www/us/en/develop/documentation/advisor-tutorial-roofline/top/visual-studio-ide-prepare-the-sample-application.html) の日本語参考訳です。
バージョン: 2021.1 (更新日: 12/04/2020)
このトピックは、自動ルーフライン・グラフを使用して、優先度の高い最適化を決定する方法を紹介するチュートリアルの一部です。
インテル® Advisor の Visual Studio* IDE プラグインを使用して、roofline_demo_samples サンプル・アプリケーションを試す場合は、以下の手順に従ってください。
ソフトウェア・ツールの入手とサンプル・アプリケーションの展開
次のツールが必要です。
- インテル® Advisor のインストール・パッケージとライセンス
- インテル® C++ コンパイラー・クラシック 15.x 以降、またはサポートされるほかのコンパイラー
インテル® コンパイラーを使用すると、ベクトル化アドバイザーのサーベイレポートからより多くの利点が得られます (最大限に活用するには、バージョン 17.x 以降が必要です)。サポートされるほかのコンパイラーについては、「リリースノート」を参照してください。
- .zip ファイルの展開ユーティリティー
まだインテル® Advisor やインテル® C++ コンパイラー・クラシックをお持ちでない場合は、https://software.intel.com/content/www/us/en/develop/tools.html (英語) からダウンロードしてください。
roofline_demo_samples サンプル・アプリケーションを設定するには、次の操作を行います。
- サンプルコードとサンプル結果の両方を、システムの書き込み可能なディレクトリーまたは共有フォルダーにダウンロード (https://software.intel.com/content/www/us/en/develop/articles/training-sample-intel-advisor-roofline.html) します。
- サンプルコードとサンプル結果の .zip ファイルを展開します。
Visual Studio* ソリューションを開く
- Visual Studio* IDE を起動します。
- 必要に応じて、[View] > [Solution Explorer] を選択します。
- [File] > [Open] > [Project/Solution] を選択します。
- [Open Project] ダイアログボックスで roofline_demo_samples.sln ファイルを開きます。
プロジェクトの準備
このチュートリアルで使用するため、サンプル・アプリケーションを準備します。
- [Solution Explorer] のプロジェクト名が roofline_demo_samples (Intel C++ [version]) であることを確認します。そうでない場合は、[Solution Explorer] で roofline_demo_samples プロジェクトを右クリックして、[Intel Compiler] > [Use Intel C++] を選択します。
- Visual Studio* のツールバーで [Solutions Configuration] ドロップダウンが Debug に設定されている場合は、Release に変更します。
- [Solution Explorer] で roofline_demo_samples を右クリックして、[Properties] を選択します。
- [Configuration Properties] > [C/C++] > [General] を選択します。[Debug Information Format] が [Program Database (/ZI)] に設定されていることを確認します。
- [Configuration Properties] > [C/C++] > [Optimization] を選択します。[Optimization] が [Maximum Optimization (Favor Speed) (/O2)] に設定されていることを確認します。
- [Configuration Properties] > [C/C++] > [Optimization [Intel C++]] を選択します。[Parallelization] が [No] に設定されていることを確認します。
- [Configuration Properties] > [C/C++] > [Code Generation] を選択します。[Enable Enhanced Instruction Set] が [Intel(R) Advanced Vector Extensions 2 (/arch:CORE-AVX2)] に設定されていることを確認します。
- [Apply] ボタンをクリックしてから、[OK] ボタンをクリックします。
- [Build] > [Clean Solution] を選択します。
- [Build] > [Rebuild Solution] を選択します。
注
インテル® Advisor のワークフローと解析結果を表示するには、インテル® Advisor ツールバーの アイコンをクリックするか、[Tools] > [Intel Advisor [version]] > [Vectorization and Threading Advisor Analysis] を選択します。
独自のアプリケーションをビルドして、正確で完全なベクトル化アドバイザーの結果を生成するには、以下の設定でリリースモードの最適化されたバイナリーをビルドします。
操作 | 最適な C/C++ 設定 |
---|---|
完全なデバッグ情報を生成する (コンパイラーとリンカ―) | Linux* コマンドライン: -g Windows* コマンドライン:
Microsoft* Visual Studio* IDE:
|
適度な最適化を有効にする | Linux* コマンドライン: -O2 以上 Windows* コマンドライン: /O2 以上 Visual Studio* IDE: [C/C++] > [Optimization] > [Optimization] > [Maximum Optimization (Favor Speed) (/O2)] 以上 |
コンパイラー診断を生成する (インテル® コンパイラー 15.0 では必要、16.0 以降では不要) | Linux* コマンドライン: -qopt-report=5 Windows* コマンドライン: /Qopt-report:5 Visual Studio* IDE: [C/C++] > [Diagnostics [Intel C++]] > [Optimization Diagnostic Level] > [Level 5 (/Qopt-report:5)] |
ベクトル化を有効にする | Linux* コマンドライン: -vec Windows* コマンドライン: /Qvec |
SIMD ディレクティブを有効にする | Linux* コマンドライン: -simd Windows* コマンドライン: /Qsimd |
OpenMP* ディレクティブに基づくマルチスレッド・コードの生成を有効にする | Linux* コマンドライン: -qopenmp Windows* コマンドライン: /Qopenmp Visual Studio* IDE: [C/C++] > [Language [Intel C++]] > [OpenMP Support] > [Generate Parallel Code (/Qopenmp)] |
製品および性能に関する情報
1 性能は、使用状況、構成、その他の要因によって異なります。詳細については、www.Intel.com/PerformanceIndex/ (英語) を参照してください。