Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.
7957 Discussions

What is the icx equivalent for -axSSE2?

djungl
New Contributor I
766 Views

Hello,

I am trying to port a project from using ICC to using ICX. I am having trouble to translate option -axSSE2:

 

$ /apps/l_dpcpp-cpp-compiler_p_2023.0.0.25393/compiler/2023.0.0/linux/bin/icx -c -o function.o -axSSE2 function.c
error: unknown target CPU 'SSE2'
note: valid target CPU values are: nocona, core2, penryn, bonnell, atom, silvermont, slm, goldmont, goldmont-plus, tremont, gracemont, nehalem, corei7, westmere, sandybridge, corei7-avx, ivybridge, core-avx-i, haswell, core-avx2, broadwell, common-avx512, skylake, skylake-avx512, skx, cascadelake, cooperlake, cannonlake, icelake-client, rocketlake, icelake-server, tigerlake, sapphirerapids, alderlake, knl, knm, k8, athlon64, athlon-fx, opteron, k8-sse3, athlon64-sse3, opteron-sse3, amdfam10, barcelona, btver1, btver2, bdver1, bdver2, bdver3, bdver4, znver1, znver2, znver3, x86-64, x86-64-v2, x86-64-v3, x86-64-v4
1 error generated.

 

According to the  documentation this option is implemented in ICX and SSE2 is a valid value.

I found this related question but it seems outdated since back then the -ax did not seem to be implemented at all.

So what should I use instead of -axSSE2 to get the same behavior for ICX? I am having the same problem with -xSSE. What should I use here?

 

Thank you,

 

Daniel

0 Kudos
1 Solution
NoorjahanSk_Intel
Moderator
643 Views

Hi,

 

Thanks for providing the details.

 

Could you please try the latest version (2023.1.0) of the ICX compiler with SSE3 as SSE2 support is not supported?

 

We have tried with the latest version(2023.1.0) using the SSE3 flag and did not observe any issues.

Please refer to the below link for more details:

https://www.intel.com/content/www/us/en/docs/dpcpp-cpp-compiler/developer-guide-reference/2023-1/ax-qax.html

Please refer to the below screenshot for more details:

NoorjahanSk_Intel_0-1680843939058.png

 

You can get the latest version of the compiler by downloading oneAPI Base/HPC Toolkit.

Please refer to the below link to download the oneAPI Base/HPC Toolkit:

https://www.intel.com/content/www/us/en/developer/tools/oneapi/base-toolkit-download.html

https://www.intel.com/content/www/us/en/developer/tools/oneapi/hpc-toolkit-download.html

 

 

Thanks & Regards,

Noorjahan.

 

View solution in original post

0 Kudos
5 Replies
NoorjahanSk_Intel
Moderator
727 Views

Hi,

 

Thanks for posting in Intel Communities.

 

Could you please try with the "-axSSE3" flag as it may generate Intel® SSE3, SSE2, and SSE instructions for Intel® processors?

 

We also tried with -axSSE3 at our end and did not observe any errors.

Please refer to the below screenshot for more details:

NoorjahanSk_Intel_0-1680610632636.png

 

Hope this helps to resolve your issue if not please provide us with a sample reproducer.

 

Thanks & Regards,

Noorjahan.

 

0 Kudos
djungl
New Contributor I
691 Views

Using SSE3 does work but it is not an option: we only want to target SSE2. Additionally, SSE3 is not even in the list of valid options provided in the error message, so I guess this is going to cease working soon.

Anyway, we can only allow SSE2. Here is how you can reproduce the error:

$ echo 'void function(void) {}' | /apps/l_dpcpp-cpp-compiler_p_2023.0.0.25393/compiler/2023.0.0/linux/bin/icx -c -o function.o -axSSE2 -x c -
error: unknown target CPU 'SSE2'
note: valid target CPU values are: nocona, core2, penryn, bonnell, atom, silvermont, slm, goldmont, goldmont-plus, tremont, gracemont, nehalem, corei7, westmere, sandybridge, corei7-avx, ivybridge, core-avx-i, haswell, core-avx2, broadwell, common-avx512, skylake, skylake-avx512, skx, cascadelake, cooperlake, cannonlake, icelake-client, rocketlake, icelake-server, tigerlake, sapphirerapids, alderlake, knl, knm, k8, athlon64, athlon-fx, opteron, k8-sse3, athlon64-sse3, opteron-sse3, amdfam10, barcelona, btver1, btver2, bdver1, bdver2, bdver3, bdver4, znver1, znver2, znver3, x86-64, x86-64-v2, x86-64-v3, x86-64-v4
1 error generated.
0 Kudos
NoorjahanSk_Intel
Moderator
644 Views

Hi,

 

Thanks for providing the details.

 

Could you please try the latest version (2023.1.0) of the ICX compiler with SSE3 as SSE2 support is not supported?

 

We have tried with the latest version(2023.1.0) using the SSE3 flag and did not observe any issues.

Please refer to the below link for more details:

https://www.intel.com/content/www/us/en/docs/dpcpp-cpp-compiler/developer-guide-reference/2023-1/ax-qax.html

Please refer to the below screenshot for more details:

NoorjahanSk_Intel_0-1680843939058.png

 

You can get the latest version of the compiler by downloading oneAPI Base/HPC Toolkit.

Please refer to the below link to download the oneAPI Base/HPC Toolkit:

https://www.intel.com/content/www/us/en/developer/tools/oneapi/base-toolkit-download.html

https://www.intel.com/content/www/us/en/developer/tools/oneapi/hpc-toolkit-download.html

 

 

Thanks & Regards,

Noorjahan.

 

0 Kudos
djungl
New Contributor I
592 Views

Enabling SSE3 is not an option for us. If the SSE2 option is no longer supported, we will just drop that. Thank you.

0 Kudos
NoorjahanSk_Intel
Moderator
577 Views

Hi,


Thanks for accepting our solution.


As this issue has been resolved, we will no longer respond to this thread. If you need any additional information, please submit a new question


Thanks & Regards,

Noorjahan.


0 Kudos
Reply