シングル・ダイナミック・ライブラリー (SDL) インターフェイスは、インテル® マス・カーネル・ライブラリー (インテル® MKL) のインターフェイスとスレッドレイヤーを動的に選択します。
インターフェイス・レイヤーの設定
利用可能なインターフェイスは、システムのアーキテクチャーに依存します。
インテル® 64 アーキテクチャー・ベースのシステムでは、LP64 および ILP64 インターフェイスを利用できます。ランタイムにこれらのインターフェイスの 1 つを設定するには、mkl_set_interface_layer 関数または MKL_INTERFACE_LAYER 環境変数を使用します。
以下の表は、各インターフェイスの設定に使用する値を示しています。
インターフェイス・レイヤー
|
MKL_INTERFACE_LAYER の値
|
mkl_set_interface_layer のパラメーターの値
|
LP64
|
LP64
|
MKL_INTERFACE_LP64
|
ILP64
|
ILP64
|
MKL_INTERFACE_ILP64
|
mkl_set_interface_layer 関数が呼び出されると、環境変数 MKL_INTERFACE_LAYER は無視されます。
デフォルトでは、LP64 インターフェイスが使用されます。
mkl_set_interface_layer 関数の詳細は、『インテル® MKL リファレンス・マニュアル』を参照してください。
スレッドレイヤーの設定
ランタイムにスレッドレイヤーを設定するには、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
|
mkl_set_threading_layer 関数が呼び出されると、環境変数 MKL_THREADING_LAYER は無視されます。
デフォルトでは、インテル® スレッドが使用されます。
mkl_set_threading_layer 関数の詳細は、『インテル® MKL リファレンス・マニュアル』を参照してください。