インテル® MKL 2017 デベロッパー・ガイド
シングル・ダイナミック・ライブラリー (SDL) インターフェイスは、インテル® MKL のインターフェイスとスレッドレイヤーを動的に選択します。
ランタイムにインターフェイス・レイヤーを設定するには、mkl_set_interface_layer 関数または MKL_INTERFACE_LAYER 環境変数を使用します。
利用可能なインターフェイス・レイヤーは、システムのアーキテクチャーに依存します。
以下の表は、インテル® 64 アーキテクチャーで利用可能なインターフェイス・レイヤーと各レイヤーの設定に使用する値を示しています。
インターフェイス・レイヤー |
MKL_INTERFACE_LAYER の値 |
mkl_set_interface_layer のパラメーターの値 |
---|---|---|
インテルの LP64 (デフォルト) |
LP64 |
MKL_INTERFACE_LP64 |
インテルの ILP64 |
ILP64 |
MKL_INTERFACE_ILP64 |
GNU* LP64 |
GNU,LP64 |
MKL_INTERFACE_LP64+MKL_INTERFACE_GNU |
GNU* ILP64 |
GNU,ILP64 |
MKL_INTERFACE_ILP64+MKL_INTERFACE_GNU |
mkl_set_interface_layer 関数が呼び出されると、環境変数 MKL_INTERFACE_LAYER は無視されます。
mkl_set_interface_layer 関数の詳細は、『インテル® MKL デベロッパー・リファレンス』を参照してください。
以下の表は、IA-32 アーキテクチャーで利用可能なインターフェイス・レイヤーと各レイヤーの設定に使用する値を示しています。
インターフェイス・レイヤー |
MKL_INTERFACE_LAYER の値 |
mkl_set_interface_layer のパラメーターの値 |
---|---|---|
インテル (デフォルト) |
LP64 |
MKL_INTERFACE_LP64 |
GNU* |
GNU,LP64 または GNU |
MKL_INTERFACE_LP64+MKL_INTERFACE_GNU または MKL_INTERFACE_GNU |
ランタイムにスレッドレイヤーを設定するには、mkl_set_threading_layer 関数または MKL_THREADING_LAYER 環境変数を使用します。以下の表は、利用可能なスレッドレイヤーと各レイヤーの設定に使用する値を示しています。
スレッドレイヤー |
MKL_THREADING_LAYER の値 |
mkl_set_threading_layer のパラメーターの値 |
---|---|---|
インテルのスレッドレイヤー (デフォルト) |
INTEL |
MKL_THREADING_INTEL |
インテル® MKL のシーケンシャル・モード |
SEQUENTIAL |
MKL_THREADING_SEQUENTIAL |
GNU* スレッドレイヤー† |
GNU |
MKL_THREADING_GNU |
PGI* スレッドレイヤー† |
PGI |
MKL_THREADING_PGI |
インテル® TBB スレッドレイヤー |
TBB |
MKL_THREADING_TBB |
† インテル® メニー・インテグレーテッド・コア (インテル® MIC) アーキテクチャー用の SDL ではサポートされていません。
mkl_set_threading_layer 関数が呼び出されると、環境変数 MKL_THREADING_LAYER は無視されます。
mkl_set_threading_layer 関数の詳細は、『インテル® MKL デベロッパー・リファレンス』を参照してください。