problem of "Olimit" to compile

In a device function, adding some lines, I have then some messages with problem:

C:\DOCUME~1\Ghislain\LOCALS~1\Temp/tmpxft_00000d00_00000000-9_main_prog.cpp3.i(0): Warning: Olimit was exceeded on function _Z11GLMM1KerneliiPjS_S_S_iPfS0_ii; will not perform function-scope optimization.
1> To still perform function-scope optimization, use -OPT:Olimit=0 (no limit) or -OPT:Olimit=21186

Assertion failure at line 2412 of …/…/be/cg/NVISA/cgtarget.cxx:

1>### Compiler Error in file C:\DOCUME~1\Ghislain\LOCALS~1\Temp/tmpxft_00000d00_00000000-9_main_prog.cpp3.i during Register Allocation phase:
1>### ran out of registers in float
1>nvopencc ERROR: C:\CUDA\bin/…/open64/lib//be.exe returned non-zero status 1

However I just add calculation and no other declaration of values.
I use Visual Studio 2005,. I tried to modify the -OPT:Olimit, but it was not recognized (In project\properties\c.c++\comand-prompt) I tried"
-OPT:Olimit=0, /-OPT:Olimit=0, etc "

Does someone know what is the Olimit, and how I can solve the problem.


It’s an old post but it may be worth trying…From…mp;#entry358824

The other posts suggest that this is due to too many virtual registers or too large of a kernel, is there any way you can cut your kernel down in size if this does not work?

I was working with the 2.1.

I installed the 2.2 and it seems to work now. :rolleyes:
I have still some lines to write, and I hope it will be ok. :whistling:
If someone knows more about this Olimit, the limitation and the way to change it,
please tell me. :geek: