"Accelerator region ignored: loops nested too deeply&am

Hi,

Is there any way around the “Accelerator region ignored: loops nested too deeply” error other than expanding the inner loops?

And also, how deep is too deep?

Many thanks,

Karl



And finally, I removed the innermost loop but that results in the following crash:

pgf90 -ta=nvidia -Minfo=accel -c -Mcache_align -O2 intega.f
pgf90-Fatal-/opt/pgi9/linux86-64/9.0-3/bin/pgf902 TERMINATED by signal 11
Arguments to /opt/pgi9/linux86-64/9.0-3/bin/pgf902
/opt/pgi9/linux86-64/9.0-3/bin/pgf902 /tmp/pgf90aJzgaX93PQMS.ilm -fn intega.f -opt 2 -terse 1 -inform warn -x 51 0x20 -x 119 0xa10000 -x 122 0x40 -x 123 0x1000 -x 127 4 -x 127 17 -x 19 0x400000 -x 28 0x40000 -x 70 0x8000 -x 122 1 -quad -x 59 4 -x 59 4 -tp penryn-64 -x 120 0x1000 -x 124 0x1400 -y 15 2 -x 57 0x3b0000 -x 58 0x48000000 -x 49 0x100 -x 120 0x200 -astype 0 -x 124 1 -x 163 1 -accel nvidia -x 163 128 -x 0 0x1000000 -x 2 0x100000 -x 0 0x2000000 -x 161 16384 -x 162 16384 -quad -x 119 0x10000000 -x 129 0x40000000 -cmdline ‘+pgf90 intega.f -ta=nvidia -Minfo=accel -c -Mcache_align -O2’ -asm /tmp/pgf90aJzgajJ_qA3q.s
make: *** [intega.o] Error 127


However, removal of the ‘new’ innermost loops results in a normal compilation.

Hi Karl,

how deep is too deep?

In 9.0 I believe it is 5 levels, while in 10.0 it will be expanded to 8 levels. Unfortunately, there isn’t work around, short of rewriting the code.

As for the compiler crash, can you send me a reproducer?

Thanks,
Mat