Next: Pragma Acc_Loop, Previous: Pragma Abstract_State, Up: Implementation Defined Pragmas [Contents][Index]
Syntax:
pragma Acc_Parallel [( ACC_PARALLEL_CLAUSE [, ACC_PARALLEL_CLAUSE... ])]; ACC_PARALLEL_CLAUSE ::= Acc_If => boolean_EXPRESSION | Acc_Private => IDENTIFIERS | Async => integer_EXPRESSION | Copy => IDENTIFIERS | Copy_In => IDENTIFIERS | Copy_Out => IDENTIFIERS | Create => IDENTIFIERS | Default => None | Device_Ptr => IDENTIFIERS | First_Private => IDENTIFIERS | Num_Gangs => integer_EXPRESSION | Num_Workers => integer_EXPRESSION | Present => IDENTIFIERS | Reduction => (REDUCTION_RECORD) | Vector_Length => integer_EXPRESSION | Wait => INTEGERS REDUCTION_RECORD ::= "+" => IDENTIFIERS | "*" => IDENTIFIERS | "min" => IDENTIFIERS | "max" => IDENTIFIERS | "or" => IDENTIFIERS | "and" => IDENTIFIERS IDENTIFIERS ::= | IDENTIFIER | (IDENTIFIER, IDENTIFIERS) INTEGERS ::= | integer_EXPRESSION | (integer_EXPRESSION, INTEGERS)
Requires the -fopenacc
flag.
Equivalent to the parallel
directive of the OpenAcc standard. This pragma
should be placed in loops. It offloads the content of the loop to an
accelerator device.
For more information about the effect of the clauses, see the OpenAcc specification.