スレッド数の決定

OpenMP* ソフトウェアは、OMP_NUM_THREADS 環境変数を使用します。 インテル® マス・カーネル・ライブラリー (インテル® MKL) には、MKL_NUM_THREADSMKL_DOMAIN_NUM_THREADS 環境変数のような、スレッド数を設定するほかの方法も用意されています (新しいスレッド化コントロールの使用を参照)。

関連する環境変数がすべてのノードにおいて同じで正しい値になっていることを確認してください。また、インテル® MKL バージョン 10.0 以降、デフォルトのスレッド数は 1 に設定されません。コンパイラーと一緒に使用している OpenMP ライブラリーに応じて、デフォルトのスレッド数が設定されます。インテル® コンパイラー・ベースのスレッド化レイヤー (mkl_intel_thread.lib) では、この値は OS の CPU の数です。

Caution icon警告

例えば、ノードあたりの MPI ランクの数とノードあたりのスレッド数の両方が 1 よりも大きい場合、スレッド数が過剰に指定されないようにします。ノードあたりの MPI ランクとノードあたりのスレッド数の積がノードあたりの物理コアの数を超えないようにしてください。

OMP_NUM_THREADS 環境変数については、下記の説明を参照してください。

ノードあたりの MPI ランクとノードあたりのスレッド数の積がノードあたりの物理コアの数と同じになるように OMP_NUM_THREADS を設定します。 ノードでハイパースレッディング・テクノロジーが有効な場合、Windows で表示されるプロセッサー数の半分のみを使用します。

関連情報


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

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