インテル® Fortran コンパイラー 14.0 ユーザー・リファレンス・ガイド
The following tables list available compiler directives.
Some directives may perform differently on Intel® microprocessors than on non-Intel microprocessors.
Each general directive name is preceded by the prefix cDIR$ (or cDEC$), where c is one of the following: !, C (or c), or *; for example, !DIR$ ALIAS).
Each OpenMP* Fortran directive name is preceded by the prefix c$OMP, where c is one of the following: !, C (or c), or *; for example, !$OMP ATOMIC.
Each OFFLOAD directive name is preceded by the prefix cDIR$, where c is one of the following: !, C (or c), or *; for example, !DIR$ OFFLOAD_TRANSFER.
Name |
Description |
---|---|
Specifies an alternate external name to be used when referring to an external subprogram. |
|
Provides heuristic information to the compiler optimizer. |
|
Specifies that an entity in memory is aligned. |
|
Applies attributes to variables and procedures. |
|
Generates warning messages for undeclared variables. |
|
Creates a variable whose existence can be tested during conditional compilation. |
|
Suggests a location at which a DO loop may be split. |
|
Marks the beginning of an alternative conditional-compilation block to an IF directive construct. |
|
Marks the beginning of an alternative conditional-compilation block to an IF directive construct. |
|
Marks the end of a conditional-compilation block. |
|
Sets fixed-form line length. This directive has no effect on freeform code. |
|
Tells the compiler to allow generation of fused multiply-add (FMA) instructions, also known as floating-point contractions. |
|
Specifies that a routine should be inlined whenever the compiler can do so. |
|
Uses freeform format for source code. |
|
Specifies an identifier for an object module. |
|
Marks the beginning of a conditional-compilation block. |
|
Marks the beginning of a conditional-compilation block. |
|
Specifies that the routines can be inlined. |
|
Selects default integer size. |
|
Assists the compiler's dependence analysis of iterative DO loops. |
|
Specifies the typical trip loop count for a DO loop; this assists the optimizer. |
|
Sends a character string to the standard output device. |
|
(Default) Turns off warning messages for undeclared variables. |
|
Disables the generation of FMA instructions. |
|
(Default) Uses standard FORTRAN 77 code formatting column rules. |
|
Prevents a loop from fusing with adjacent loops. |
|
Specifies that a routine should not be inlined. |
|
Disables auto-parallelization for an immediately following DO loop. |
|
Disables optimizations for the program unit. |
|
Disables a data prefetch from memory. |
|
(Default) Disables a previous STRICT directive. |
|
Disables the unrolling of a DO loop. |
|
Disables loop unrolling and jamming. |
|
Disables vectorization of a DO loop. |
|
Specifies a library search path in an object file. |
|
Enables optimizations for the program unit. |
|
Controls whether fields in records and data items in common blocks are naturally aligned or packed on arbitrary byte boundaries. |
|
Specifies the memory alignment of derived-type items. |
|
Helps auto-parallelization by assisting the compiler's dependence analysis of an immediately following DO loop. |
|
Hints to the compiler to prefetch data from memory. |
|
Modifies certain characteristics of a common block. |
|
Selects default real size. |
|
Requires and controls SIMD vectorization of loops. |
|
Disables Intel® Fortran features not in the language standard specified on the command line. |
|
Removes a symbolic variable name created with the DEFINE directive. |
|
Tells the compiler's optimizer how many times to unroll a DO loop. |
|
Enables loop unrolling and jamming. |
|
Overrides default heuristics for vectorization of DO loops. |
|
1i64em_mic only |
To use the following directives, you must specify compiler option [Q]openmp. For more information, refer to the option description in the Compiler Options reference.
Name |
Description |
---|---|
Specifies that a specific memory location is to be updated atomically. |
|
Synchronizes all the threads in a team. |
|
Restricts access for a block of code to only one thread at a time. |
|
Generates a SIMD procedure. |
|
Specifies that named variables, common blocks, functions, and subroutines are mapped to a device. |
|
Specifies that the iterations of the immediately following DO loop must be executed in parallel. |
|
Specifies a loop that can be executed concurrently using SIMD instructions. |
|
Specifies synchronization points where the implementation must have a consistent view of memory. |
|
Specifies a block of code to be executed by the master thread of the team. |
|
Specifies a block of code to be executed sequentially. |
|
Defines a parallel region. |
|
Defines a parallel region that contains a single DO directive. |
|
Specifies a loop that can be executed concurrently using SIMD instructions. It provides a shortcut for specifying a PARALLEL construct containing one SIMD loop construct and no other statement. |
|
Defines a parallel region that contains SECTIONS directives. |
|
Defines a parallel region that contains a single WORKSHARE directive. |
|
Appears within a SECTIONS directive construct to indicate a block (section) of code. It is optional for the first block of code within the SECTIONS directive construct. |
|
Specifies a block of code to be divided among threads in a team (a worksharing area). |
|
Requires and controls SIMD vectorization of loops. |
|
Specifies a block of code to be executed by only one thread in a team. |
|
Creates a device data environment and executes the construct on the same device. |
|
Creates a device data environment for the extent of the region. |
|
Makes the list items in the device data environment consistent with their corresponding original list items. |
|
Defines a task region. |
|
Specifies a wait for the completion of all child tasks of the current task and all of their descendant tasks. |
|
Specifies a wait on the completion of child tasks generated since the beginning of the current task. |
|
Specifies that the current task can be suspended in favor of execution of a different task. |
|
Makes named common blocks private to a thread but global within the thread. |
|
Divides the work of executing a block of statements or constructs into separate units. |
Name |
Description |
---|---|
Enables statements to execute on the target. |
|
Enables a group of statements to execute on the target. |
|
Initiates asynchronous data transfer, or initiates and completes synchronous data transfer. |
|
Specifies a wait for a previously initiated asynchronous activity. |
Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice. Notice revision #20110804 |