インテル® マス・カーネル・ライブラリー 11.2 ユーザーズガイド
以下に、インテル® コンパイラーを使用してリンクする例を示します。
多くの例では、.f Fortran ソースファイルを使用しています。 C/C++ ユーザーは、ソースファイルを .cpp (C++) または .c (C) ファイルに、ifort リンカーを icc に変更してください。
これらの例では
MKLPATH=$MKLROOT/lib/ia32、
MKLINCLUDE=$MKLROOT/include です。
環境変数を設定するスクリプトの実行が完了している場合、すべての例の -I$MKLINCLUDE およびダイナミック・リンクの -L$MKLPATH は省略できます。
myprog.f とインテル® MKL の並列バージョンのスタティック・リンク。
ifort myprog.f
-L$MKLPATH -I$MKLINCLUDE
-Wl,--start-group $MKLPATH/libmkl_intel.a $MKLPATH/libmkl_intel_thread.a $MKLPATH/libmkl_core.a
-Wl,--end-group -liomp5 -lpthread -lm
myprog.f とインテル® MKL の並列バージョンのダイナミック・リンク。
ifort myprog.f
-L$MKLPATH -I$MKLINCLUDE
-lmkl_intel -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm
myprog.f とインテル® MKL のシーケンシャル・バージョンのスタティック・リンク。
ifort myprog.f
-L$MKLPATH -I$MKLINCLUDE
-Wl,--start-group $MKLPATH/libmkl_intel.a $MKLPATH/libmkl_sequential.a $MKLPATH/libmkl_core.a
-Wl,--end-group -lpthread -lm
myprog.f とインテル® MKL のシーケンシャル・バージョンのダイナミック・リンク。
ifort myprog.f
-L$MKLPATH -I$MKLINCLUDE
-lmkl_intel -lmkl_sequential -lmkl_core -lpthread -lm
myprog.f とインテル® MKL の並列またはシーケンシャル・バージョンのダイナミック・リンク。mkl_set_threading_layer 関数を呼び出すか MKL_THREADING_LAYER 環境変数の値を設定して、モード (マルチスレッド・モードまたはシーケンシャル・モード) を選択します。
ifort myprog.f -lmkl_rt
myprog.f、Fortran 95 LAPACK インターフェイス、インテル® MKL の並列バージョンのスタティック・リンク。
ifort myprog.f
-L$MKLPATH -I$MKLINCLUDE -I$MKLINCLUDE/ia32
-lmkl_lapack95
-Wl,--start-group $MKLPATH/libmkl_intel.a $MKLPATH/libmkl_intel_thread.a $MKLPATH/libmkl_core.a
-Wl,--end-group
-liomp5 -lpthread -lm
myprog.f、Fortran 95 BLAS インターフェイス、インテル® MKL の並列バージョンのスタティック・リンク。
ifort myprog.f
-L$MKLPATH -I$MKLINCLUDE -I$MKLINCLUDE/ia32
-lmkl_blas95
-Wl,--start-group $MKLPATH/libmkl_intel.a $MKLPATH/libmkl_intel_thread.a $MKLPATH/libmkl_core.a
-Wl,--end-group -liomp5 -lpthread -lm