I’m compiling a relatively complex ported program in CUDA and running into various compiler bugs.
The first bug I was able to fix myself and I’ll explain the procedure. The problem was in be.exe, which crashed and caused the generic Windows exception dialog. Clicking “debug” and opening up VS showed there was a stack overflow. (I swear to god, this is the first time that pointless dialog ever helped me.) Researching the problem, it turned out that the editbin utility that comes with VS can be used to change an executable’s stack size using a command such as ‘editbin /STACK:20000000 be.exe’. To use this executable, open the VS Command Prompt and navigate to the CUDA bin directory. I had to set a 20MB stack to compile my application.
The second bug, this time in an even more complex program, I cannot fix. (It compiles and runs fine in emulation mode however.) The output is:
Signal: caught in VHO Processing phase.
(0): Error: Signal caught in phase VHO Processing – processing aborted
nvopencc ERROR: C:\CUDA\bin/…/open64/lib//be.exe returned non-zero status 3
If I cut out most of the code from that second application, it still doesn’t compile but reports a rather different error:
nvcc error : ‘ptxas’ died with status 0xC0000005 (ACCESS_VIOLATION)
Please let me know to whom I can send a bug report.