How can I control the unlock time of Microsoft OpenMP?

OpenMP, used by the Intel compiler, supports the KMP_BLOCKTIME environment KMP_BLOCKTIME ( docs ), which, I believe, controls the wait time (spin-lock) that threads will spend waiting for new work (the linked document claims that this default value is 200 ms )

OpenMP, used by the Gnu compiler, supports the GOMP_SPINCOUNT ( docs ) environment variable, which I believe also controls this equivalent library implementation (although it seems to be expressed as an iteration counter, not time).

My question is: what control (if any) does Microsoft provide to control this setting in OpenMP used by the Microsoft compiler? (this interests me in VS2010).

(I well know that if my parallelism program was entirely based on OpenMP, there would be little cause for concern about this, but my interest is caused by some vtune traces from a large complex system that also uses T.

+6
source share
1 answer

Microsoft Visual Studio 2010 Service Pack 1 (SP1) and later seems to support OMP_WAIT_POLICY, as shown in the Knowledge Base Article

setting OMP_WAIT_POLICY to PASSIVE fixes the problem for me when compiling with Visual Studio 2013.

+5
source

All Articles