Developer Guide and Reference

Contents

Intel® Compiler Extension Routines to OpenMP*

The Intel compiler implements the following group of routines as extensions to the OpenMP* run-time library:
  • Get and set the execution environment
  • Get and set the stack size for parallel threads
  • Memory allocation
  • Get and set the thread sleep time for the throughput execution mode
The Intel extension routines described in this section can be used for low-level tuning to verify that the library code and application are functioning as intended. These routines are generally not recognized by other OpenMP-compliant compilers, which may cause the link stage to fail in the other compiler. To execute these OpenMP* routines, use the
[Q]openmp-stubs
option.
In most cases, environment variables can be used in place of the extension library routines. For example, the stack size of the parallel threads may be set using the
OMP_STACKSIZE
environment variable rather than the
kmp_set_stacksize_s()
library routine.
A run-time call to an Intel extension routine takes precedence over the corresponding environment variable setting.

Execution Environment

Function
Description
void kmp_set_defaults(char const *)
Sets OpenMP* environment variables defined as a list of variables separated by "
|
" in the argument.
void kmp_set_library_throughput()
Sets execution mode to throughput, which is the default. Allows the application to determine the runtime environment. Use in multi-user environments.
void kmp_set_library_turnaround()
Sets execution mode to turnaround. Use in dedicated parallel (single user) environments.
void kmp_set_library_serial()
Set