NAG Fortran Compiler, Release 7.2: OpenMP Support

Navigation: Previous Up Next

## 2.9 OpenMP Support

OpenMP 3.1 is fully supported. Some features from more recent OpenMP specifications are also supported; check the Release Notes for details.

When using the IEEE arithmetic support modules, the IEEE modes (rounding, halting and underflow) are propagated into spawned OpenMP threads at the beginning of a `PARALLEL` construct, and any IEEE flag that are set by an OpenMP thread is passed back to the parent thread at the end of the `PARALLEL` construct.

The following table lists the OpenMP environment variables with their default values and, if applicable, their limits.

Environment Variable | Default | Limits
`OMP_NUM_THREADS` | number of cores | 1-32768
`OMP_DYNAMIC` | False | true or false
`OMP_NESTED` | False | true or false
`OMP_STACKSIZE` | 0 | <1GB (32-bit) or 16GB (64-bit)
`OMP_WAIT_POLICY` | None | active or passive
`OMP_MAX_ACTIVE_LEVELS` | 1 | 1-64
`OMP_THREAD_LIMIT` | 32768 | 1-32768
`OMP_CANCELLATION` | False | true or false

Note that although the NAG runtime supports up to 32768 threads, operating system limits may prevent usage of so many.

OpenMP is not compatible with the -coarray=cosmp option.