Cray-style Fortran parallelization directives are identical to Sun-style except that the sentinel that identifies these directives is !MIC$. Also, the set of qualifier clauses on the !MIC$ DOALL is different.
Table B–4 OpenMP Equivalents for Cray-Style DOALL Qualifier Clauses
Cray DOALL Clause |
OpenMP PARALLEL DO Equivalent Clauses |
---|---|
SHARED(v1,v2,...) |
SHARED(v1,v2,...) |
PRIVATE(v1,v2,...) |
PRIVATE(v1,v2,...) |
AUTOSCOPE |
No equivalent. Scoping must be explicit, or with the DEFAULT clause, or with the __AUTO clause |
SAVELAST |
No exact equivalent. You can achieve the same effect by using lastprivate. |
MAXCPUS(n) |
num_threads(n). No exact equivalent. |
GUIDED |
schedule(guided, m) Default m is 1. |
SINGLE |
schedule(dynamic,1) |
CHUNKSIZE(n) |
schedule(dynamic,n) |
NUMCHUNKS(m) |
schedule(dynamic,n/m) where n is the number of iterations |
The differences are the same as for Sun-style directives, except that there is no equivalent for the Cray AUTOSCOPE.