Visible to Intel only — GUID: GUID-23D0DF16-E867-4251-A7A7-CCA9ACBC0B89
Visible to Intel only — GUID: GUID-23D0DF16-E867-4251-A7A7-CCA9ACBC0B89
TARGET PARALLEL LOOP
OpenMP* Fortran Compiler Directive: Specifies a shortcut for specifying a parallel loop inside a TARGET construct that contains no other statements than the parallel loop. This feature is only available for ifx.
Syntax
!$OMP TARGET PARALLEL LOOP [clause[[,] clause]... ]
do-loop
[!$OMP END TARGET PARALLEL LOOP]
clause |
Can be any of the clauses accepted by the TARGET or PARALLEL LOOP constructs with identical meanings and restrictions. |
do-loop |
Is a DO loop that may contain other nested DO loops. The DO loops must all be in canonical form. The DO loop iteration variable must be of type integer. The loop can be a DO CONCURRENT loop, subject to the rules specified for variables referenced in a DO CONCURRENT loop associated with LOOP and PARALLEL constructs. |
This combined directive is semantically equivalent to a TARGET directive followed immediately by a PARALLEL LOOP construct. The restrictions for TARGET and PARALLEL LOOP constructs apply to this combined construct.
If used, the END TARGET PARALLEL LOOP directive must appear immediately after the end of the loop. If you do not specify an END TARGET PARALLEL LOOP directive, an END TARGET PARALLEL LOOP directive is assumed at the end of the do-loop.
If do-loop is a DO CONCURRENT loop, a variable that has SHARED locality in the DO CONCURRENT loop is treated as if it appears in a MAP clause with map-type TOFROM.