0

[更新]から警告メッセージを出力するにはどうすればよいcompiler.SourceModule(kernel_code)ですか? @flipchart の助けを借りて、PyCUDA を介して適切なパラメーターを NVCC に渡すことができましたが、コンパイラの警告にアクセスする場所はまだわかりません。

[元の質問]

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です。

* CUDA 3.0 以降、「--compiler-options -Wall」を使用したシステム ヘッダーからの警告

4

1 に答える 1

5

この-Wallオプションはコンパイラオプションではなく、サポートするコンパイラ(または)nvccに渡されるオプションです。オプションがサポートコンパイラ用であることを示すために、オプションを渡す必要があります。あなたのPythonコード:g++cl.exe--compiler-options -Wallnvcc

mod = compiler.SourceModule(kernel_code,options=['--compiler-options','-Wall'])

PyCuda各オプションをリストアイテムとして指定する必要があるようです。そうでない場合は、全体を引用符で囲みますnvcc

于 2012-01-10T03:21:23.160 に答える