Oracle Solaris Studio 12.2: OpenMP API ユーザーガイド

3.8 環境変数

変数名 

実装 

OMP_SCHEDULE

OMP_SCHEDULE に指定されたスケジュール型が有効な型 (staticdynamic guided、または auto) ではない場合、環境変数が無視され、デフォルトのスケジュール (チャンクサイズの指定されていない static 型) が使用されます。SUNW_MP_WARNTRUE に設定されている場合、またはコールバック関数が sunw_mp_register_warn() の呼び出しにより登録されている場合は、警告メッセージが表示されます。

OMP_SCHEDULE 環境変数に指定されたスケジュール型が staticdynamic、または guided であるが、チャンクに指定されたサイズが負の整数の場合、次のようにチャンクサイズが設定されます。static の場合には、チャンクサイズは設定されません。dynamic または guided の場合は、チャンクサイズは 1 になります。SUNW_MP_WARNTRUE に設定されている場合、またはコールバック関数が sunw_mp_register_warn() の呼び出しにより登録されている場合は、警告メッセージが表示されます。

OMP_NUM_THREADS

変数の値が正の整数ではない場合、環境変数は無視されます。また、SUNW_MP_WARNTRUE に設定されているか、sunw_mp_register_warn() の呼び出しによりコールバック関数が登録されている場合には、警告メッセージが表示されます。

変数の値が、実装でサポートしているスレッド数よりも大きい場合は、次のアクションが実行されます。  

- スレッド数の動的調整が有効になっている場合は、スレッド数が減少します。また、SUNW_MP_WARNTRUE に設定されているか、sunw_mp_register_warn() の呼び出しによりコールバック関数が登録されている場合には、警告メッセージが表示されます。

- 一方、スレッド数の動的調整が無効になっている場合は、エラーメッセージが表示され、プログラムが停止します。 

OMP_DYNAMIC

OMP_DYNAMIC に指定された値が TRUE でも FALSE でもない場合は、その値は無視され、デフォルト値である TRUE が使用されます。SUNW_MP_WARNTRUE に設定されている場合、またはコールバック関数が sunw_mp_register_warn() の呼び出しにより登録されている場合は、警告メッセージが表示されます。

OMP_NESTED

OMP_NESTED に指定された値が TRUE でも FALSE でもない場合は、その値は無視され、デフォルト値である FALSE が使用されます。SUNW_MP_WARNTRUE に設定されている場合、またはコールバック関数が sunw_mp_register_warn() の呼び出しにより登録されている場合は、警告メッセージが表示されます。

OMP_STACKSIZE

OMP_STACKSIZE に指定された値が指定書式に従っていない場合は、その値は無視され、デフォルト値 (32 ビットアプリケーションでは 4M バイト、64 ビットアプリケーションでは 8M バイト) が使用されます。SUNW_MP_WARNTRUE に設定されている場合、またはコールバック関数が sunw_mp_register_warn() の呼び出しにより登録されている場合は、警告メッセージが表示されます。

OMP_WAIT_POLICY

スレッドの ACTIVE の動作は、スピンです。スレッドの PASSIVE の動作は、少しの間スピンした後でのスリープです。

OMP_MAX_ACTIVE_LEVELS

OMP_MAX_ACTIVE_LEVELS に指定された値が負の整数の場合、その値は無視され、デフォルト値 (4) が使用されます。SUNW_MP_WARNTRUE に設定されている場合、またはコールバック関数が sunw_mp_register_warn() の呼び出しにより登録されている場合は、警告メッセージが表示されます。

OMP_THREAD_LIMIT

OMP_THREAD_LIMIT に指定された値が正の整数ではない場合、その値は無視され、デフォルト値 (1024) が使用されます。SUNW_MP_WARNTRUE に設定されている場合、またはコールバック関数が sunw_mp_register_warn() の呼び出しにより登録されている場合は、警告メッセージが表示されます。