インテル® C++ コンパイラー 19.0 デベロッパー・ガイドおよびリファレンス
このトピックは、インテル® メニー・インテグレーテッド・コア (インテル® MIC) アーキテクチャーをターゲットとする場合にのみ適用されます。
コプロセッサーのコアあたりのデフォルトのスレッド数を変更する方法はいくつかあります。
OpenMP* API 仕様で提供されている以下の標準的な方法を使用して、コプロセッサーのスレッド数を変更することができます。
omp parallel 領域の前に関数 omp_set_num_threads(n) を呼び出す
num_threads 節と #pragma omp parallel の使用
環境変数 OMP_NUM_THREADS=n を設定する
詳細は、OpenMP* API 仕様 (http://www.openmp.org) を参照してください。
上記の OpenMP* API 仕様を使用する標準的な方法に加えて、環境変数 MIC_ENV_PREFIX を使用しカスタム・プリフィクスの環境変数を定義して、ホスト CPU とは別にコプロセッサーの OpenMP* スレッド数を制御することもできます。例えば、次の環境変数定義は、CPU とコプロセッサーの両方に、異なる値の OMP_NUM_THREADS を設定します。
OMP_NUM_THREADS=8 MIC_ENV_PREFIX=ABC ABC_OMP_NUM_THREADS=124
コプロセッサーから特定のランタイム設定を確立する libiomp5.so の API を直接呼び出すと、コプロセッサーに複製された、CPU 環境変数で設定された以前の設定は上書きされます。