要素をコピーすることを指示するものである。配列の内容をホスト側に戻すことは行わない。配列は、ループ内で参照のみ行われる配列であるため、ホスト側にその値を戻す必要がない。配列の全要素の内容をホスト側にコピーせよと言う意味となる。言う言葉は、アクセラレータから見ての方向性を意味している。両方向でコピーを行うと言う意味となる。ブロック範囲の終了時点で行われる。これらは、二つのメモリ間のデータコピーの転送方向を表すものである。前者の意味は、「すでにデバイスメモリ上にデータは存在しているので、データのコピーは必要ない」と言うことをコンパイラに指示するものである。節は、「デバイス側で一時的に使用する配列データであるため、デバイスの上だけで配列をアロケートして使用するものである」と言うことを指示するものである。構文はこうした節を指定して、明示的にデータの転送のコントロールや明示的なデータ割付、デバイス上に当該データが存置されているかどうかの確認等の処理を指示するために使用される。開始する場所となるため必須となる。この構文は、ループのベクトル長や並列分割の方法等をユーザが明示的に指示するために使用される。言う言葉を初めて聞く人もいるかと思う。プログラミングモデルでも良く使う概念である。これは、「分割した処理を複数の実行主体(スレッド等)が各々分担して、真に並列処理を行う」ことを意味する。リージョンが開始されてから、全ての実行主体が同じプログラムを冗長に実行し始める。ループに到達した時点で、初めて並列実行のモードとなる。構文を使用した場合、コンパイラは自動的に並列実行単位をハードウェアの並列演算コアにマッピングするが、プログラムの特性によっては、コンパイラが決めた並列分割の方法やベクトル長の指定が最善ではない場合がある。した場合を想定して、ユーザは明示的に並列性能に関わるパラメータを各種「節」を指定して指示できる。言う単位で実行する並列分割を行えと言う意味となる。値を変えながら、性能変化があるかどうかを確認することをお勧めする。詳細に関しては、後章で説明する。clause(節)を以下に示す。