MKL_DOMAIN_NUM_THREADS

MKL_DOMAIN_NUM_THREADS 環境変数は、特定の関数ドメイン用のスレッド数を示します。

MKL_DOMAIN_NUM_THREADS には、文字列値 <MKL 環境文字列> を以下の形式で指定します。

<MKL 環境文字列> ::= <MKL ドメイン環境文字列> { <区切り文字> <MKL ドメイン環境文字列> }

<区切り文字> ::= [ <スペース記号>* ] ( <スペース記号> | <カンマ記号> | <セミコロン記号> | <コロン記号>) [ <スペース記号>* ]

<MKL ドメイン環境文字列> ::= <MKL ドメイン環境名> <使用法> <スレッド数>

<MKL ドメイン環境名> ::= MKL_ALL | MKL_BLAS | MKL_FFT | MKL_VML

<使用法> ::= [ <スペース記号>* ] ( <スペース記号> | <等号記号> | <カンマ記号>) [ <スペース記号>* ]

<スレッド数> ::= <正の整数>

<正の整数> ::= <10 進数> | <8 進数> | <16 進数>

上記の構文で、MKL_BLAS は BLAS 関数ドメイン、MKL_FFT非クラスター FFT、MKL_VML はベクトル・マス・ライブラリーを示します。

例:

MKL_ALL 2 : MKL_BLAS 1 : MKL_FFT 4

MKL_ALL=2 : MKL_BLAS=1 : MKL_FFT=4

MKL_ALL=2,  MKL_BLAS=1,  MKL_FFT=4

MKL_ALL=2;  MKL_BLAS=1;  MKL_FFT=4

MKL_ALL  = 2  MKL_BLAS 1 ,  MKL_FFT  4

MKL_ALL,2: MKL_BLAS 1, MKL_FFT,4 .

グローバル変数 MKL_ALL、MKL_BLAS、MKL_FFTMKL_VML、およびインテル® マス・カーネル・ライブラリー (インテル® MKL) スレッド化コントロール用のインターフェイスは、mkl.h ヘッダーファイルに記述されています。

以下の表は、MKL_DOMAIN_NUM_THREADS の値がどのように解釈されるかを示しています。

MKL_DOMAIN_NUM_THREADS の値

解釈

MKL_ALL=4

インテル® MKL のすべての部分で 4 つのスレッドを使用しようとします。実際のスレッド数は、MKL_DYNAMIC の設定やシステムリソースの状況に応じて異なります。 この設定は、MKL_NUM_THREADS = 4 と等価です。

MKL_ALL=1, MKL_BLAS=4

BLAS で 4 つのスレッドを使用することを除いて、インテル® MKL のすべての部分で 1 つのスレッドを使用しようとします。

MKL_VML=2

VML で 2 つのスレッドを使用しようとします。設定は、インテル® MKL のほかの部分には影響しません。

ドメイン固有の設定は、ほかの設定よりも優先されることに注意してください。例えば、MKL_DOMAIN_NUM_THREADS が "MKL_BLAS=4" に設定された場合、MKL_NUM_THREADS の設定に関係なく、BLAS で 4 つのスレッドを使用するように推奨します。関数呼び出し "mkl_domain_set_num_threads ( 4, MKL_BLAS );" も、mkl_set_num_threads() への呼び出しに関係なく、BLAS で 4 つのスレッドを使用するように推奨します。
しかし、"mkl_domain_set_num_threads (4, MKL_ALL);" のように、"MKL_ALL" が入力の関数呼び出しは、"mkl_set_num_threads(4)" と等価であるため、後の mkl_set_num_threads 呼び出しよりも優先されることに注意してください。 同様に、MKL_DOMAIN_NUM_THREADS が "MKL_ALL=4" に設定された場合、MKL_NUM_THREADS = 2 よりも優先されます。

例えば、MKL_DOMAIN_NUM_THREADS 環境変数では、"MKL_BLAS=4,MKL_FFT=2" のように複数の変数を一度に設定することができますが、対応する関数で文字列構文は使用できません。 このため、関数呼び出しで同じことを行うには、以下のように複数の呼び出しを行う必要があります。

mkl_domain_set_num_threads ( 4, MKL_BLAS );

mkl_domain_set_num_threads ( 2, MKL_FFT );


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

© 2007 - 2010 Intel Corporation. 無断での引用、転載を禁じます。