インテル® マス・カーネル・ライブラリー 11.2 ユーザーズガイド

スレッドレイヤーの選択

インテル® MKL は、シーケンシャル実行および並列実行をサポートしています。並列実行用に、インテル® MKL のスレッドレイヤーは次のライブラリーを提供します。

並列モードは OpenMP* スレッド化テクノロジーをベースにしているため、適切な OpenMP* ランタイム・ライブラリーが必要です。インテル® コンパイラーは libiomp5md.lib ライブラリーで OpenMP* のランタイム機能を提供しています。 アプリケーションをビルドしたコンパイラー (インテル® コンパイラー、Microsoft* コンパイラー、または PGI* コンパイラー) に関係なく、このライブラリーを実行時に使用できます。 インテル® MKL を呼び出すアプリケーションは、PGI* コンパイラーで提供される OpenMP* ランタイム・ライブラリーを使用することもできます。 このライブラリーを使用するには、アプリケーションと libmkl_pgi_thread.lib または libmkl_pgi_thread_dll.lib ライブラリーをリンクします。

以下の表は、選択するインテル® MKL ライブラリーと OpenMP* ランタイム・ライブラリーの説明です (スタティックの場合のみ)。

スレッドレイヤーで mkl_sequential.lib ライブラリーを選択すると、インテル® MKL 呼び出しからスレッド化が削除されます。

コンパイラー

マルチスレッド?

スレッドレイヤー

RTL を推奨

内容

インテル

問題になりません

mkl_intel_thread.lib

libiomp5md.lib

 

PGI*

mkl_pgi_thread.lib または mkl_sequential.lib

PGI* が提供

 

PGI*

X

mkl_intel_thread.lib

libiomp5md.lib

 

PGI*

X

mkl_pgi_thread.lib

PGI* が提供

 

PGI*

X

mkl_sequential.lib

なし

 

Microsoft*

mkl_intel_thread.lib

libiomp5md.lib

Microsoft* Visual Studio* IDE の OpenMP* ライブラリーの場合。

Microsoft*

mkl_sequential.lib

なし

Win32 スレッド。

Microsoft*

X

mkl_intel_thread.lib

libiomp5md.lib

 

最適化に関する注意事項

インテル® コンパイラーは、互換マイクロプロセッサー向けには、インテル製マイクロプロセッサー向けと同等レベルの最適化が行われない可能性があります。これには、インテル® ストリーミング SIMD 拡張命令 2 (インテル® SSE2)、インテル® ストリーミング SIMD 拡張命令 3 (インテル® SSE3)、ストリーミング SIMD 拡張命令 3 補足命令 (SSSE3) 命令セットに関連する最適化およびその他の最適化が含まれます。インテルでは、インテル製ではないマイクロプロセッサーに対して、最適化の提供、機能、効果を保証していません。本製品のマイクロプロセッサー固有の最適化は、インテル製マイクロプロセッサーでの使用を目的としています。インテル® マイクロアーキテクチャーに非固有の特定の最適化は、インテル製マイクロプロセッサー向けに予約されています。この注意事項の適用対象である特定の命令セットの詳細は、該当する製品のユーザー・リファレンス・ガイドを参照してください。

改訂 #20110804


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