0

VS2010kおよびNsightv3

私はいくつかのcudaモジュールにmodを作成しています。VSでデバッグモードで実行すると、このホストコードは次のようになります。

result = cuLaunchKernel ( cuFunction, dimGrid.x, dimGrid.y, dimGrid.z, dimBlock.x, dimBlock.y, dimBlock.z, shared, stream, argsG, 0);
cudaDeviceSynchronize();
err = cudaGetLastError();

結果の値はゼロですが、コードのこの部分を初めて通過するとき、および毎回、エラーは30[または不明]になります。

そこで私は、問題を解決しようと考えてNSightを起動しました。入力ファイル全体をエラーなしで処理しました。Nsightでメモリチェックをオンにして、再実行しました。再度、苦情なしにファイル全体を処理しました。

したがって、ホストデバッグでは、このコードを起動するたびにエラー30が発生しますが、Nsightの制御下で実行され、エラーは発生しません。

誰か説明がありますか?

ありがとう

4

1 に答える 1

0

プログラムの問題を解決しました:バグが原因で計算されているグローバルメモリアドレスが正しくありませんでした。なぜNsightはエラーをキャッチしなかっのに、すぐに航海しました-メモリチェックがオンになっていても、私にはわかりません。

于 2013-03-09T14:23:19.050 に答える