HP aC++/HP C A.06.25 Programmer's Guide
See “OpenMP Clauses” (page 150) for more information.
OMP FLUSH Pragma
#pragma omp flush [(list)]
where (list) names the variables that will be synchronized.
The flush pragma, whether explicit or implied, specifies a cross-thread sequence point
at which the implementation is required to ensure that all the threads in a team have
a consistent view of certain objects in the memory. A flush directive without a list is
implied for the following directives:
• barrier
• an entry to and exit from critical
• at entry to and exit from ordered
• at entry to and exit from parallel
• at entry to and exit from parallel for
• at entry to and exit from parallel sections
• at exit from single
• at exit from for
• at exit from sections
NOTE: The directive is not implied if a nowait clause is present.
OMP MASTER Pragma
#pragma omp master
structured-block
The master pragma directs that the structured-block following it should be
executed by the master thread (thread 0) of the team. Other threads in the team do not
execute the associated block.
OMP ORDERED Pragma
#pragma omp ordered
structured-block
The ordered pragma indicates that the following structured block should be executed
in the same order in which iterations will be executed in a sequential loop.
An ordered directive must be within the dynamic extent of a for or a parallel
for construct that has an ordered clause. When the ordered clause is used with
schedule which has a chunksize, then the chunksize is ignored by the compiler.
OMP PARALLEL Pragma
#pragma omp parallel [clause1, clause2,...]
structured-block
Other Pragmas 147