Hi, I am trying to use the unsequenced policies in Pstl library, and I can't link to the intel Omp library.
I'm using visual studio 2017, the parallel version worked well with openmp 2.0. When I'm trying to go through the unsequenced policy which requires \Qopenmp-simd, I encountered several problems.
I'm following the guide on https://software.intel.com/en-us/cpp-compiler-developer-guide-and-reference-using-the-openmp-librari...
1. 2. If I'm using intel compiler c++ 19, do I still need to check _OPENMP_NOFORCE_MANIFEST?
2. I can't really find the path <Intel_compiler_installation_path>\IA32\LIB and <Intel_compiler_installation_path>\IA32\Bin, the most similar path I find would be C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2019.2.190\windows\compiler\lib\intel64 (I'm using a 64-bit system) and C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2019.2.190\windows\bin\intel64
3. at the additional options, I set " /nodefaultlib libiomp5md.lib" is it correct?
4. The OpenMP support in properties >C++ > language (intel c++) still says "enable openmp2.0 language extensions", and apparently there is no \Qopenmp-simd option.
Any help would be appreciated.
Link Copied
When you have openmp options, then Intel openmp will be used instead of the standard one.
Did you happened to un-elect IA32 during the installation?
\Qopenmp-simd enables processing of #pragma omp simd but not parallel. The plain \Qopenmp enables both. With \Qopenmp-simd no OpenMP 2.0 pragmas will have effect, and there will be no linking to OpenMP library.
It's entirely normal to install ICL with only X64 support even though Visual Studio has both 32- and 64-bit support. Then you won't find any IA32 folders in the ICL installation, only intel64.
For more complete information about compiler optimizations, see our Optimization Notice.