Disable kmp_affinity warnings

Disable kmp_affinity warnings


I'm doing a graphic application that also uses OpenMP. This application has que linker flag /SUBSYSTEM:WINDOWS in order to not create an additional command line window. The problem is that in non-Intel cpu, the kmp_affinity warning is opening the command line window to show the message.

How can I manage this? The only thing I can't do is to change general environment variables ( other programs could be using openmp).

Thanks in advance!

10 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.


No, I can't change users (clients) general environment variables.

can't you use kmp_set_defaults() function in your program? it does not affect an environment outside the program.


The warning message is shown before my main function starts, I think when the openmp library does the dynamic loading

Can you update the compiler?  This problem was fixed more than 2 years ago in compiler 12.1 update 9.

- Andrey

I'm using 13.0 version and the KMP_affinity message is shown as well

This was fixed in the 13.0 OMP runtime library in late May of 2012.  Exactly what version of 13.0 are you using?  Can you please 'set KMP_VERSION=1' in your environment, run your application, and let us know what the 'OMP Version' is?


On Linux, I know this is fixed in the last 13.0 update, so you may need to update to the equivalent 13.0 Windows compiler.





The compiler I'm using is "Intel(R) C++ Intel(R) 64 Compiler XE on Intel(R) 64, version 13.1.3 Package ID: w_ccompxe_2013.5.198"

Which is exactly the bug? The KMP_AFFINITY warning dissappears when I do set KMP_AFFINITY=none

With KMP_VERSION=1 ( using the binaries on an Intel processor, not AMD): 

 Intel(R) OMP Copyright (C) 1997-2011, Intel Corporation. All Rights Reserved.

Intel(R) OMP version: 5.0.20110823
Intel(R) OMP library type: performance
Intel(R) OMP link type: dynamic
Intel(R) OMP build time: 2011-08-31 12:43:20 UTC
Intel(R) OMP build compiler: Intel C++ Compiler 12.0
Intel(R) OMP alternative compiler support: yes
Intel(R) OMP API version: 3.0 (200805)
Intel(R) OMP tracefile support: no
Intel(R) OMP dynamic error checking: no
Intel(R) OMP helper thread support: yes
Intel(R) OMP thread affinity support: not used
Intel(R) OMP debugger support version: 1.1

I think I'm using the wrong OMP version. Let me check it...


There's a mismatch between the compiler version you are using and the OMP runtime that is getting loaded by your application. 


icl- (package w_ccompxe_2013.5.198.exe) contains Intel(R) OMP version: 5.0.20130507, but you are picking up Intel(R) OMP version: 5.0.20110823, which doesn't have the fix.  You'll have to correct $Path and $LIB to make sure the runtime for is picked up.




C:\OpenMP\Examples\NT>icl -Qopenmp matmul2_GetProcessTimes.cpp
Intel(R) C++ Intel(R) 64 Compiler XE for applications running on Intel(R) 64, Version Build 20130607
Copyright (C) 1985-2013 Intel Corporation.  All rights reserved.

Microsoft (R) Incremental Linker Version 11.00.50727.1
Copyright (C) Microsoft Corporation.  All rights reserved.



 Using clock() for wall clock time
 Problem size: c(900,3600) = a(900,1800)*b(1800,3600)
 Calculating product 1 time(s)
 GetCurrentProcessId = 3484

Intel(R) OMP Copyright (C) 1997-2013, Intel Corporation. All Rights Reserved.
Intel(R) OMP version: 5.0.20130507

Leave a Comment

Please sign in to add a comment. Not a member? Join today