nAG Fortran コンパイラ 5.3.1 マニュアル

 
ナビゲーション:前へ   上へ   次へ

2.9 OpenMP サポート

最も良く利用されるOpenMP 3.0の機能がサポートされています。 以下のテーブルにリリース5.3.1でサポートされるOpenMPディレクティブのサポート状況が説明されます。

実行指示文 サポート状況
PARALLEL 全てサポート
DO 全てサポート
SECTIONS 全てサポート
SINGLE 全てサポート
MASTER 全てサポート
WORKSHARE 未サポート
PARALLEL DO 全てサポート
PARALLEL SECTIONS 全てサポート
PARALLEL WORKSHARE 未サポート
TASK 未サポート
MASTER 全てサポート
CRITICAL 全てサポート
BARRIER 全てサポート
TASKWAIT 未サポート
ATOMIC 全てサポート
FLUSH 全てサポート
ORDERED 全てサポート
データ指示文/句 サポート状況
THREADPRIVATE 全てサポート
DEFAULT 全てサポート
SHARED 全てサポート
PRIVATE 全てサポート
FIRSTPRIVATE 全てサポート
LASTPRIVATE 全てサポート
REDUCTION 全てサポート
COPYIN 全てサポート
COPYPRIVATE 変数についてサポート

OpenMP標準のセクション3.2の手続き(以下)は全てサポートされています。
omp_set_num_threadsomp_get_num_threadsomp_get_max_threadsomp_get_thread_numomp_get_num_procsomp_in_parallelomp_set_dynamicomp_get_dynamicomp_set_nestedomp_get_nestedomp_set_scheduleomp_get_scheduleomp_get_thread_limitomp_set_max_active_levelsomp_get_max_active_levelsget_levelomp_get_ancestor_thread_numomp_get_team_sizeomp_get_active_level OpenMP標準のセクション3.3のlock手続き(以下)がサポートされています。 omp_destroy_lock, omp_destroy_nest_lock, omp_init_lock, omp_init_nest_lock, omp_set_lock, omp_set_nest_lock, omp_try_set_lock, omp_try_set_nest_lock, omp_unset_lock, omp_unset_nest_lock.

OpenMP標準のセクション3.4の時間計測手続き(以下)はサポートされています。
omp_get_wtimeomp_get_wtick

IEEE算術サポートモジュールを利用する場合、 IEEEモジュール(丸め、停止、アンダーフロー)は PARALLEL構文の最初にOpenMPスレッドにも伝搬されます。 またOpenMPスレッドにより設定されたIEEEフラグは PARALLEL構文の最後で親スレッドに返されます。

以下のテーブルはOpenMP環境変数のデフォルト値と上下限(適用可能な場合のみ)が示されています。

環境変数 デフォルト値 制限
OMP_NUM_THREADS 1 1-32768
OMP_DYNAMIC False true もしくは false
OMP_NESTED False true もしくは false
OMP_STACKSIZE 0 <1GB (32-bit) もしくは 16GB (64-bit)
OMP_WAIT_POLICY None active もしくは passive
OMP_MAX_ACTIVE_LEVELS 1 1-64
OMP_THREAD_LIMIT 32768 1-32768

ノート: nAGは32768スレッドまでサポートしますが、オペレーティングシステムがそこまで多数のスレッドを許さない可能性もあります。

Privacy Policy  /  Trademarks