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.2 メモリーモデル

複数スレッドから同じ変数への非同期のメモリーアクセスが、互いのそれぞれのアクセスに対して不可分なものになる保証はありません。アクセスが不可分にものなるかどうかは、実装依存、およびアプリケーション依存の要因による影響を受けます。変数によっては、対象プラットフォームでの最大の不可分なメモリー動作よりも大きい場合があります。変数によっては、不正な境界整列が行われていたり境界が不明である場合があります。その場合、コンパイラまたは実行時システムがその変数にアクセスするためには、複数回の読み込みおよび格納が必要になることがあります。より多くの読み込みと格納を使用する、高速なコードシーケンスもあります。