nvcc コマンドを使用してコードを実行すると、正しい出力が得られましたが、nsight Eclipse で同じコードを実行すると、間違った出力が得られました。なぜこの動作なのか、誰もが知っています。
最後に、配列の割り当ての 1 つに問題があることがわかりました。コマンド ラインでは問題が発生しませんが、nsight では問題が発生します。
nvcc コマンドを使用してコードを実行すると、正しい出力が得られましたが、nsight Eclipse で同じコードを実行すると、間違った出力が得られました。なぜこの動作なのか、誰もが知っています。
最後に、配列の割り当ての 1 つに問題があることがわかりました。コマンド ラインでは問題が発生しませんが、nsight では問題が発生します。
Nsight EE は、プロジェクト設定に基づいて make ファイルを生成し、OS の make ユーティリティを呼び出してプロジェクトをビルドすることにより、プロジェクトをビルドします。PATH にある nvcc コンパイラを使用していますが、NVCC コンパイラ 5.0 (同じツールキット配布の一部) で導入されたいくつかの新しいオプションに依存しています。
Nsight Eclipse でクリーン リビルドを実行してください。アプリケーションのビルドに使用されたコマンド ラインが出力されます。次に、そのコマンド ラインを外部で使用するコマンド ラインと比較できます。考えられる違いは次のとおりです。
いずれにせよ、コードに何らかのバグがあり、さまざまなコンパイル設定で現れる可能性があります。プログラムでCUDA memcheckを実行して、隠れたバグがないことを確認することをお勧めします。