Intel® C++ Compiler

/Qipo seems disabling automatic vectorization


I depend a lot on SSE/AVX auto-vectorization and it seems that /Qipo disables it. These are relevant parameters I'm using:

/arch:SSE2 /QxSSE2 /Qvec-report /QaxAVX /Qftz

Tye compiler reports lots of loops being vectorized. But if I add /Qipo, it states that the messages will be generated by linker (makes sense), but the linker reports nothing... (I'm not adding /Qvec-report to it though, doesn't seem logical anymore)


How to use the auto-dispatching for AVX (plus some more questions)


1) I spent more than a day playing with AVX intrinsics just to find out, that despite I made almost as fast as my assembler code (with ICC actually slightly faster), ICC itself produced even better code! So it seems I'm going for ICC after all, but :

- I need the software to be working on everything from SSE2 upwards, hence /arch:SSE2

- I want auto-dispatcher for AVX, since I found out the AVX code is faster on Sandy bridge and very much faster on Haswell

Subscribe to Intel® C++ Compiler