< 目次

インテル® MKL 2017 デベロッパー・ガイド

インターフェイスとスレッドレイヤーの動的選択

シングル・ダイナミック・ライブラリー (SDL) インターフェイスは、インテル® MKL のインターフェイスとスレッドレイヤーを動的に選択します。

インターフェイス・レイヤーの設定

ランタイムにインターフェイス・レイヤーを設定するには、mkl_set_interface_layer 関数または MKL_INTERFACE_LAYER 環境変数を使用します。

利用可能なインターフェイス・レイヤーは、システムのアーキテクチャーに依存します。

以下の表は、インテル® 64 アーキテクチャーで利用可能なインターフェイス・レイヤーと各レイヤーの設定に使用する値を示しています。

インテル® 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 アーキテクチャーで利用可能なインターフェイス・レイヤーと各レイヤーの設定に使用する値を示しています。

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 デベロッパー・リファレンス』を参照してください。

関連情報