- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We built our application using the Intel Fortran and C compilers. It also uses MKL. However when we try and run it on an AMD EPYC 7742 we get the message
Please verify that both the operating system and the processor support Intel(R) X87, CMOV, MMX, FXSAVE, SSE, SSE2, SSE3, SSSE3, SSE4_1, SSE4_2 and POPCNT instructions.
The compiler options we are using are:
FORTRAN_FLAGS.....=-real_size 64 -integer_size 64 -align dcommons,rec16byte,sequence -auto -reentrancy threaded -fpic -c -xSSE4.2 -axCORE-AVX2,CORE-AVX-I,AVX -nologo -threads -static-intel
FORTRAN_OPT.......=-O3
and
C_FLAGS...........=-c -align -fPIC -xSSE4.2 -axCORE-AVX2,CORE-AVX-I,AVX -static
C_OPT.............=-O3
Our app runs great on all the Intel processors. However we need to make it work at some level to support a customer system.
What compiler options should we use?
Will MKL work on this AMD processor?
Thanks
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Replace -xSSE4.2 with "-arch SSE4.2" (no quotes). -x, other than -xHost (which you could also use if you are running on the same system), requires that the application run on an Intel CPU.
MKL will work on AMD CPUs.
If you are using Intel C++, the same advice applies, but I will note that -ax on non-Intel CPUs always takes the "generic" code path. You can change what the generic path (defaults to SSE2) is with -arch.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page