我使用nvcc命令运行代码并且它提供了正确的输出但是当我在nsight eclipse上运行相同的代码时它输出错误。任何人都知道为什么会出现这种情况。
最后我发现其中一个数组分配存在问题。虽然命令行没有出现任何问题但是nsight会这样做。
答案 0 :(得分:1)
Nsight EE通过基于项目设置生成make文件并通过调用OS make实用程序来构建项目来构建项目。它使用的是PATH中的nvcc编译器,但它依赖于NVCC编译器5.0中引入的一些新选项(这是同一工具包发行版的一部分)。
请在Nsight Eclipse中进行干净的重建 - 它将打印出用于构建应用程序的命令行。然后,您可以将该命令行与您在外部使用的命令行进行比较。可能的区别是:
在任何情况下,您的代码都可能存在一些错误,这些错误会在不同的编译设置下显示出来。我建议您在程序中运行CUDA memcheck以确保没有隐藏的错误。