自動ベクトル化について

インテル® C++ コンパイラーでは、ベクトル化はパックド SIMD 命令を生成してループをアンロールします。パックド命令は一度に複数のデータ要素で演算するため、ループをより効率良く実行できます。コンパイラーが適したループを自動で識別し、最適化するため、自動ベクトル化と呼ばれることもあります。

ベクトル化はインテル® C++ コンパイラーの最適化レベル /O2 以上で有効になります。多くのループは自動でベクトル化されますが、自動でベクトル化されないループについては、簡単なコード変更でベクトル化できることがあります。このチュートリアルで行う作業は次のとおりです。

サンプルの場所

このチュートリアルを開始するには、製品の Samples ディレクトリーにある vec_samples.zip ファイルを開きます。
<install-dir>\Samples\<locale>\C++\vec_samples.zip

チュートリアルで使用するファイル:

Microsoft* Visual Studio* でソリューション・ファイル、matrix_vector_multiplication_c.sln を開きます。

次の手順に従って、ベクトル化のための準備を行います。

  1. matrix_vector_multiplication_c プロジェクトで右クリックし、[Intel C++ Composer XE (インテル(R) C++ Composer XE)] > [Use Intel C++... (インテル(R) C++ を使用)] を選択してインテル・プロジェクトに変換します。[Confirmation (確認)] ダイアログボックスで、[OK] をクリックします。

  2. [ビルド] > [構成マネージャ] を使用して [アクティブ ソリューション構成] を [Release] に変更します。

  3. [ビルド] > [ソリューションのクリーン] を選択してソリューションを消去します。

次へ: パフォーマンスのベースラインを確定する


このヘルプについてのフィードバックを送信

© 2010 Intel Corporation. 無断での引用、転載を禁じます。