alga1
1
How can I instruct the compiler to unroll a loop instead of generating vector instructions?
I’m compiling with -acc=noautopar -ta=multicore -Munroll=c:10
#pragma unroll
for(i=0; i<10; i++)
do_stuff;
Despite this the compiler “generates sse code for the loop”…
Hi Alga,
Try using “#pragma novector” stop the loop from being vecotrized.
Let us know if that works for you.
alga1
3
Hi Mat,
Yes the loop is not vectorized anymore.
On the other hand it does not get unrolled, not even with
#pragma novector unroll
nor with
#pragma novector unroll(10)
Do you have a reproducing example you can post?
Thanks,
Mat