Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
29252 Diskussionen

Unresolved symbol kmp_set_warnings_off

lou-muccioli
Einsteiger
1.377Aufrufe
kmp_set_warnings_off and possibly other kmp_set... entry points are missing from libiomp5md.lib in Intel Fortran 12.1 (Update 9) and is causing an unresolved symbol since my application references it. kmp_set_warnings_off was in libiomp5md.lib in the previous 12.1 version. I did a "dumpbin" of libiomp5md.lib to verify that it is missing.
0 Kudos
7 Antworten
Steven_L_Intel1
Mitarbeiter
1.377Aufrufe
Yes, there seem to be a great many entry points removed. I will find out what happened.
lou-muccioli
Einsteiger
1.377Aufrufe
OK, thanks Steve, perhaps we no longer need it. The original reason we added it was of this:

http://software.intel.com/en-us/articles/omp-warning-cannot-open-message-catalog-libiomp5uidll/
AndrewC
Neuer Beitragender III
1.377Aufrufe
The problem is that now that kmp_set_warnings_off has been removed, running OMP code on AMD processors results in the message to stderr unlenss KMP_AFFINITY=disabled. I am not calling the kmp_affinity API.
    OMP: Warning #72: KMP_AFFINITY: affinity only supported for Intel processors.
    OMP: Warning #71: KMP_AFFINITY: affinity not supported, using "disabled".

This is really annoying as messages to stderr trigger a QA failure and annoy users.

Steven_L_Intel1
Mitarbeiter
1.377Aufrufe
Are you running the current Fortran version? I thought that had been fixed for a couple of updates.
AndrewC
Neuer Beitragender III
1.377Aufrufe
We have the latest compilers C++/FORTRAN installed ( Composer XE Update 9)
Our code is a mixture of C++ and FORTRAN, but I am assuming that this warning is coming from libiomp5.dll which common to both compilers and is at version 5.0.2011.1219
We used to work around it with kmp_set_warnings_off but of course that is not present in that OMP library anymore.
I noticed, also, that setting KMP_AFFINITY=none used to 'disable' this message, but now it has to be KMP_AFFINITY=disabled
Steven_L_Intel1
Mitarbeiter
1.377Aufrufe
Use KMP_AFFINITY=noverbose,none (or noverbose,disabled). It's a bug that the message is put out if you just have disabled or none. The developers are also looking into why the routines got removed.
AndrewC
Neuer Beitragender III
1.377Aufrufe
As a replacement for kmp_set_warnings_off one can use, apparently....

kmp_set_defaults("KMP_WARNINGS=0");

This is an acceptable workaround.
Antworten