Originally posted by: RoyHu
The IBM XL C/C++ compiler, V12.1 starts to support a new environment variable OMP_PROC_BIND. You can use it to control whether OpenMP threads are allowed to move between processors.
Syntax:
>>-OMP_PROC_BIND=--+-TRUE--+-----------------------------------><
'-FALSE-'
Parameters:
TRUE: Bounds the threads to processors.
FALSE: Supports threads to be moved between processors.
Rules:
If OMP_PROC_BIND is set to true and the suboptions of XLSMPOPTS (i.e. startproc/stride, procs, bind or bindlist) are also set, the threads are bound according to the settings in XLSMPOPTS environment variable.
If OMP_PROC_BIND is set to false, the startproc/stride, procs, bind and bindlist suboptions of XLSMPOPTS environment variable are ignored.
Reference: