Intel® Fortran Compiler 17.0 Developer Guide and Reference

qopenmp, Qopenmp

Enables the parallelizer to generate multi-threaded code based on OpenMP* directives. Option -qopenmp is the replacement option for -openmp, which is deprecated.

Syntax

Linux and macOS:

-qopenmp

-qno-openmp

Windows:

/Qopenmp

/Qopenmp-

Arguments

None

Default

-qno-openmp or /Qopenmp-

No OpenMP* multi-threaded code is generated by the compiler.

Description

This option enables the parallelizer to generate multi-threaded code based on OpenMP* directives. The code can be executed in parallel on both uniprocessor and multiprocessor systems.

If you use this option, multithreaded libraries are used, but option fpp is not automatically invoked.

This option sets option automatic.

This option works with any optimization level. Specifying no optimization (-O0 on Linux* or /Od on Windows*) helps to debug OpenMP applications.

To ensure that a threadsafe and/or reentrant run-time library is linked and correctly initialized, option [q or Q]openmp should also be used for the link step and for the compilation of the main routine.

Note

On OS X* systems, when you enable OpenMP* API, you must also set the DYLD_LIBRARY_PATH environment variable within Xcode* or an error will be displayed.

Note

Options that use OpenMP* API are available for both Intel® microprocessors and non-Intel microprocessors, but these options may perform additional optimizations on Intel® microprocessors than they perform on non-Intel microprocessors. The list of major, user-visible OpenMP constructs and features that may perform differently on Intel® microprocessors versus non-Intel microprocessors include: locks (internal and user visible), the SINGLE construct, barriers (explicit and implicit), parallel loop scheduling, reductions, memory allocation, thread affinity, and binding.

Optimization Notice

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

IDE Equivalent

Visual Studio: Language > Process OpenMP Directives

Eclipse: None

Xcode: Language > Process OpenMP Directives

Alternate Options

Linux and OS X: -fopenmp

Windows: /openmp

See Also