Each general directive name is preceded by the prefix cDEC$; for example, cDEC$ ALIAS. Each OpenMP* Fortran directive name is preceded by the prefix c$OMP; for example, c$OMP ATOMIC. The c in either can be a c, C, *, or ! in fixed-form source code; only ! in free-form source code.
General Directives | ||
---|---|---|
Name | Description | |
ALIAS | Specifies an alternate external name to be used when referring to external subprograms. | |
ASSUME_ALIGNED | Specifies that an entity in memory is aligned. | |
ATTRIBUTES | Applies attributes to variables and procedures. | |
DECLARE | Generates warning messages for undeclared variables. | |
DEFINE | Creates a variable whose existence can be tested during conditional compilation. | |
DISTRIBUTE POINT | Specifies distribution for a DO loop. | |
ELSE | Marks the beginning of an alternative conditional-compilation block to an IF directive construct. | |
ELSEIF | Marks the beginning of an alternative conditional-compilation block to an IF directive construct. | |
ENDIF | Marks the end of a conditional-compilation block. | |
FIXEDFORMLINESIZE | Sets fixed-form line length. This directive has no effect on freeform code. | |
FREEFORM | Uses freeform format for source code. | |
IDENT | Specifies an identifier for an object module. | |
IF | Marks the beginning of a conditional-compilation block. | |
IF DEFINED | Marks the beginning of a conditional-compilation block. | |
INTEGER | Selects default integer size. | |
IVDEP | Assists the compiler's dependence analysis of iterative DO loops. | |
LOOP COUNT | Specifies the loop count for a DO loop; this assists the optimizer. | |
MEMREF_CONTROL1 | Lets you provide cache hints on prefetches, loads, and stores. | |
MESSAGE | Sends a character string to the standard output device. | |
NODECLARE | (Default) Turns off warning messages for undeclared variables. | |
NOFREEFORM | (Default) Uses standard FORTRAN 77 code formatting column rules. | |
NOPARALLEL | Disables auto-parallelization for an immediately following DO loop. | |
NOOPTIMIZE | Disables optimizations. | |
NOPREFETCH | Disables a data prefetch from memory. | |
NOSTRICT | (Default) Disables a previous STRICT directive. | |
NOSWP1 | Disables software pipelining for a DO loop. | |
NOUNROLL | Disables the unrolling of a DO loop. | |
NOVECTOR2 | Disables vectorization of a DO loop. | |
OBJCOMMENT | Specifies a library search path in an object file. | |
OPTIMIZE | Enables optimizations. | |
OPTIONS | Controls whether fields in records and data items in common blocks are naturally aligned or packed on arbitrary byte boundaries. | |
PACK | Specifies the memory starting addresses of derived-type items. | |
PARALLEL | Enables auto-parallelization for an immediately following DO loop. | |
PREFETCH | Enables a data prefetch from memory. | |
PSECT | Modifies certain characteristics of a common block. | |
REAL | Selects default real size. | |
STRICT | Disables Intel® Visual Fortran features not in the language standard specified on the command line (Fortran 95 or Fortran 90). | |
SWP1 | Enables software pipelining for a DO loop. | |
UNDEFINE | Removes a symbolic variable name created with the DEFINE directive. | |
UNROLL | Tells the compiler's optimizer how many times to unroll a DO loop. | |
VECTOR ALIGNED2 | Specifies that all data is aligned in a DO loop. | |
VECTOR ALWAYS2 | Enables vectorization of a DO loop. | |
VECTOR NONTEMPORAL2 | Enables streaming storage. | |
VECTOR UNALIGNED2 | Specifies that no data is aligned in a DO loop. | |
OpenMP Fortran Directives3 | ||
Name | Description | |
ATOMIC | Specifies that a specific memory location is to be updated dynamically. | |
BARRIER | Synchronizes all the threads in a team. | |
CRITICAL | Restricts access for a block of code to only one thread at a time. | |
DO | Specifies that the iterations of the immediately following DO loop must be executed in parallel. | |
FLUSH | Specifies synchronization points where the implementation must have a consistent view of memory. | |
MASTER | Specifies a block of code to be executed by the master thread of the team. | |
ORDERED | Specifies a block of code to be executed sequentially. | |
PARALLEL | Defines a parallel region. | |
PARALLEL DO | Defines a parallel region that contains a single DO directive. | |
PARALLEL SECTIONS | Defines a parallel region that contains SECTIONS directives. | |
PARALLEL WORKSHARE | Defines a parallel region that contains a single WORKSHARE directive. | |
SECTIONS | Specifies a block of code to be divided among threads in a team (a worksharing area). | |
SINGLE | Specifies a block of code to be executed by only one thread in a team. | |
THREADPRIVATE | Makes named common blocks private to a thread but global within the thread. | |
WORKSHARE | Divides the work of executing a block of statements or constructs into separate units. | |
1 i64 only 2 i32, i64em 3 To use these directives, you must specify compiler option -openmp (Linux and Mac OS) or /Qopenmp (Windows). |