OMP_PROC_BIND – Whether theads may be moved between CPUs#

Description:

Specifies whether threads may be moved between processors. If set to TRUE, OpenMP theads should not be moved; if set to FALSE they may be moved. Alternatively, a comma separated list with the values PRIMARY, MASTER, CLOSE and SPREAD can be used to specify the thread affinity policy for the corresponding nesting level. With PRIMARY and MASTER the worker threads are in the same place partition as the primary thread. With CLOSE those are kept close to the primary thread in contiguous place partitions. And with SPREAD a sparse distribution across the place partitions is used. Specifying more than one item in the list will automatically enable nesting by default.

When undefined, OMP_PROC_BIND defaults to TRUE when OMP_PLACES or GOMP_CPU_AFFINITY is set and FALSE otherwise.

See also:

omp_get_proc_bind – Whether theads may be moved between CPUs, GOMP_CPU_AFFINITY – Bind threads to specific CPUs, OMP_NESTED – Nested parallel regions, OMP_PLACES – Specifies on which CPUs the theads should be placed

Reference:

OpenMP specification v4.5, Section 4.4