[обновление] Как вывести предупреждающие сообщения от compiler.SourceModule(kernel_code)
? С помощью @flipchart я смог передать нужные параметры в NVCC через PyCUDA, но я до сих пор не знаю, где получить доступ к предупреждениям компилятора.
[исходный вопрос]
Используя NVCC напрямую, можно использовать переключатель компилятора -Wall
*. Как бы это заархивировать в pycuda?
Я пробовал mod = compiler.SourceModule(kernel_code,options=['-Wall'])
, но в сообщении об ошибке говорится:
pytools.prefork.ExecError: error invoking 'nvcc --cubin -Wall -arch sm_11 -I/usr/local/lib/python2.6/dist-packages/pycuda-0.94.2-py2.6-linux-x86_64.egg/pycuda/../include/pycuda kernel.cu': status 255 invoking 'nvcc --cubin -Wall -arch sm_11 -I/usr/local/lib/python2.6/dist-packages/pycuda-0.94.2-py2.6-linux-x86_64.egg/pycuda/../include/pycuda kernel.cu': nvcc fatal : Unknown option 'Wall'
Проблема источника в том, что я потратил целый день на отладку, потому что проглядел неявное преобразование из float
в int
.
*Предупреждения из системного заголовка с "--compiler-options -Wall", начиная с CUDA 3.0 а>