初めてのアプリケーションのビルド

インテル® IPP を初めて使用される方のために、以下に簡単なアプリケーションのサンプルコードを示します。このサンプルコードには、重要な概念が含まれています。

#include "ipp.h"
#include <stdio.h>

int main(int argc, char* argv[])
{
	const IppLibraryVersion *lib;
	Ipp64u fm;

	ippInit();                      // 自動で最適なものをスタティック・ディスパッチ
	//ippInitCpu(ippCpuSSSE3);      // 特定のスタティック・ライブラリー・レベルを選択
	                                // デバッグ/プロファイルに役立つ
	// バージョン情報を取得
	lib = ippiGetLibVersion();
	printf("%s %s\n", lib->Name, lib->Version);

	// 選択されたライブラリー・レベルで有効な CPU 機能を取得
	fm=ippGetEnabledCpuFeatures();
	printf("SSE2  %c\n",(fm>>2)&1?'Y':'N');
	printf("SSE3  %c\n",(fm>>3)&1?'Y':'N');
	printf("SSSE3 %c\n",(fm>>4)&1?'Y':'N');
	printf("SSE41 %c\n",(fm>>6)&1?'Y':'N');
	printf("SSE42 %c\n",(fm>>7)&1?'Y':'N');
	printf("AVX   %c OS Enabled %c\n", (fm>>8)&1 ?'Y':'N', (fm>>9)&1 ?'Y':'N');
	printf("AES   %c CLMUL      %c\n", (fm>>10)&1?'Y':'N', (fm>>11)&1?'Y':'N');

	return 0;
}

このアプリケーションは、次の 3 つのセクションで構成されています。

  1. IPP を初期化します。このセクションは、IPP による最適化を最大限に利用するために必要です。ippInit() がなくても IPP プログラムは実行できますが、デフォルトで最小の最適化が実装されます。 ippInit() があると、ランタイムに最高の最適化レイヤーがディスパッチされます。 特定のデバッグシナリオなど、必要に応じて、ディスパッチャーにより選択される最適なレイヤーではなく、特定の実装レイヤーを指定することもできます。この例では、ippInitCpu が使用されています。

  2. ライブラリーのレイヤー名とバージョンを取得します。\include ディレクトリーの ippversion.h ファイルを使用してバージョン情報を取得することもできます。

  3. ライブラリー・レイヤーで使用されるハードウェアの最適化を示します。

Microsoft* Visual Studio* 2010 でのサンプルコードのビルド

  1. Microsoft* Visual Studio* を起動して、空の C++ プロジェクトを作成します。

  2. 新しい c ファイルを追加し、上記のサンプルコードをペーストします。

  3. プロジェクトの [プロパティー] ダイアログボックスを開きます。 IPP が正しくインストールされている場合、[Intel Performance Libraries (インテル® パフォーマンス・ライブラリー)] セクションが表示されます。 以下のスクリーンショットに示すように、ドロップダウン・リストからオプションを 1 つ選択します。

    このステップは、インクルード・ディレクトリーとリンクモデルを設定します。リンクモデルに関する詳細は、「インテル® IPP とアプリケーションのリンク」を参照してください。

サンプルコードの実行結果に関する詳細は、「ディスパッチ」を参照してください。


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