The following table lists 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 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.
Name |
Description |
---|---|
Specifies an alternate external name to be used when referring to external subprograms. |
|
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. |
|
Specifies distribution for a DO loop. |
|
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. |
|
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 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. |
|
(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. |
|
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. |
|
Controls whether fields in records and data items in common blocks are naturally aligned or packed on arbitrary byte boundaries. |
|
Specifies the memory starting addresses of derived-type items. |
|
Enables auto-parallelization for an immediately following DO loop. |
|
Enables a data prefetch from memory. |
|
Modifies certain characteristics of a common block. |
|
Selects default real size. |
|
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. |
|
Controls vectorization of DO loops. |
|
To use the following directives, you must specify compiler option -openmp (Linux* and Mac OS* X) or /Qopenmp (Windows*).
For more information on compiler option -openmp (Linux* and Mac OS* X) and /Qopenmp (Windows*), refer to the option description in the Compiler Options reference.
Name |
Description |
---|---|
Specifies that a specific memory location is to be updated dynamically. |
|
Synchronizes all the threads in a team. |
|
Restricts access for a block of code to only one thread at a time. |
|
Specifies that the iterations of the immediately following DO loop must be executed in parallel. |
|
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. |
|
Defines a parallel region that contains SECTIONS directives. |
|
Defines a parallel region that contains a single WORKSHARE directive. |
|
Specifies a block of code to be divided among threads in a team (a worksharing area). |
|
Specifies a block of code to be executed by only one thread in a team. |
|
Defines a task region. |
|
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. |
最適化に関する注意事項 |
---|
インテル® コンパイラー、関連ライブラリーおよび関連開発ツールには、インテル製マイクロプロセッサーおよび互換マイクロプロセッサーで利用可能な命令セット (SIMD 命令セットなど) 向けの最適化オプションが含まれているか、あるいはオプションを利用している可能性がありますが、両者では結果が異なります。また、インテル® コンパイラー用の特定のコンパイラー・オプション (インテル® マイクロアーキテクチャーに非固有のオプションを含む) は、インテル製マイクロプロセッサー向けに予約されています。これらのコンパイラー・オプションと関連する命令セットおよび特定のマイクロプロセッサーの詳細は、『インテル® コンパイラー・ユーザー・リファレンス・ガイド』の「コンパイラー・オプション」を参照してください。インテル® コンパイラー製品のライブラリー・ルーチンの多くは、互換マイクロプロセッサーよりもインテル製マイクロプロセッサーでより高度に最適化されます。インテル® コンパイラー製品のコンパイラーとライブラリーは、選択されたオプション、コード、およびその他の要因に基づいてインテル製マイクロプロセッサーおよび互換マイクロプロセッサー向けに最適化されますが、インテル製マイクロプロセッサーにおいてより優れたパフォーマンスが得られる傾向にあります。 インテル® コンパイラー、関連ライブラリーおよび関連開発ツールは、互換マイクロプロセッサー向けには、インテル製マイクロプロセッサー向けと同等レベルの最適化が行われない可能性があります。これには、インテル® ストリーミング SIMD 拡張命令 2 (インテル® SSE2)、インテル® ストリーミング SIMD 拡張命令 3 (インテル® SSE3)、ストリーミング SIMD 拡張命令 3 補足命令 (SSSE3) 命令セットに関連する最適化およびその他の最適化が含まれます。インテルでは、インテル製ではないマイクロプロセッサーに対して、最適化の提供、機能、効果を保証していません。本製品のマイクロプロセッサー固有の最適化は、インテル製マイクロプロセッサーでの使用を目的としています。 インテルでは、インテル® コンパイラーおよびライブラリーがインテル製マイクロプロセッサーおよび互換マイクロプロセッサーにおいて、優れたパフォーマンスを引き出すのに役立つ選択肢であると信じておりますが、お客様の要件に最適なコンパイラーを選択いただくよう、他のコンパイラーの評価を行うことを推奨しています。インテルでは、あらゆるコンパイラーやライブラリーで優れたパフォーマンスが引き出され、お客様のビジネスの成功のお役に立ちたいと願っております。お気づきの点がございましたら、お知らせください。 改訂 #20110307 |
© 1996-2011 Intel Corporation. 無断での引用、転載を禁じます。