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

How to stop auto Simdization

dinwal
Beginner
335 Views
I am trying to avoid auto SIMDization by icpc 11.0 compiler so that I can visualize the speedup due to use of SSE instructions. For my version with SSE I compile my application with -O3 and -xSSE2. For the version without SSE I tried -mia32 flag but the results are still the same. I am using -O2 optimization flag here.
Am I missing something here? Thank in advance for your help.
0 Kudos
3 Replies
TimP
Honored Contributor III
335 Views
In 32-bit -mia32 there is no SIMD, so there's no way to turn it on (or off).
In SSE compilation with icpc, -no-vec (-no-simd with current compilers) would turn off generation of SIMD in the generated code, as would setting -O1. If you want to stop the use of fast_memcpy and fast_memset and such library functions, there may be another option for that.
0 Kudos
Om_S_Intel
Employee
335 Views
Intel compiler generates SSE2 vector code by default if you use -O2 compiler option. As suggested by Tim, you may use -no-vec to inhibit vectorization.
0 Kudos
dinwal
Beginner
335 Views
Thank you Tim and Om. I will report back if I need further help. Thank you.
0 Kudos
Reply