JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle Solaris Studio 12.2: OpenMP API ユーザーガイド
search filter icon
search icon

ドキュメントの情報

はじめに

1.  OpenMP API について

2.  OpenMP プログラムのコンパイルと実行

3.  実装によって定義される動作

3.1 タスクスケジューリングポイント

3.2 メモリーモデル

3.3 内部制御変数

3.4 スレッドの動的調整

3.5 ループ指令

3.6 コンストラクト

3.6.1 SECTIONS

3.6.2 SINGLE

3.6.3 ATOMIC

3.7 ルーチン

3.7.1 omp_set_schedule()

3.7.2 omp_set_max_active_levels()

3.7.3 omp_get_max_active_levels()

3.8 環境変数

3.9 Fortran の問題

3.9.1 THREADPRIVATE 指令

3.9.2 SHARED

3.9.3 実行時ライブラリの定義

4.  入れ子並列処理

5.  タスク化

6.  変数の自動スコープ宣言

7.  スコープチェック

8.  パフォーマンス上の検討事項

A.  指令での節の記述

B.  OpenMP への変換

索引

3.6 コンストラクト

3.6.1 SECTIONS

コンストラクトの節にある構造化ブロックは、チャンクサイズが指定されていない形式の static 状態のチームに含まれるスレッドに割り当てられます。そのため、各スレッドはほぼ同数の連続する構造化ブロックを取得します。

3.6.2 SINGLE

singleコンストラクトを検出した最初のスレッドが、コンストラクトを実行します。

3.6.3 ATOMIC

critical コンストラクトと名付けられた特別なコンストラクトを持つターゲット文を挿入することにより、実装によってすべての atomic 指令が置き換えられます。これにより、プログラム中のすべての atomic 領域間で排他的なアクセスが行われるようになります。これらの領域が同じストレージロケーションを更新するのか、異なるロケーションを更新するのかは関係ありません。