CUDA --ptxas-options =“ - v”没有显示任何输出

时间:2013-02-06 13:15:55

标签: visual-studio-2008 cuda nvcc

我在64位Windows上安装了Visual Studio 2008。尝试通过在CUDA->命令行 - >其他选项中添加--ptxas-options="-v"来构建CUDA程序。我仍然没有在this回答中看到ptxas信息。

以下是"所有选项"中的数据。 CUDA部分 - >命令行部分:

"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v4.2\bin\nvcc.exe" -ccbin "c:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v4.2\include" -I"C:\Documents and Settings\All Users\Application Data\NVIDIA Corporation\NVIDIA GPU Computing SDK 4.2\C\common\inc" -O0 -arch compute_10 -code compute_10 --host-compilation C++ -c -m 64 -o "x64\Release\CUDA_Dissertation.obj" -odir "x64\Release" -ext none -int real --ptxas-options="-v" "c:\Documents and Settings\shubham\My Documents\Visual Studio 2008\Projects\MTP\CUDA_Dissertation\CUDA_Dissertation.vcproj"

是否有可能某些其他标志正在抑制ptxas标志?或者我的构建配置(Release x64)有什么用呢?或者启用/禁用其他一些选项。我尝试用命令提示符编译它,使用几乎相同的命令:

"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v4.2\bin\nvcc.exe" -ccbin "c:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v4.2\include" -I"C:\Documents and Settings\All Users\Application Data\NVIDIA Corporation\NVIDIA GPU Computing SDK 4.2\C\common\inc" -O0 -arch compute_10 -code compute_10 --host-compilation C++ -c -m 64 -o "x64\Release\CUDA_Dissertation.obj" -odir "x64\Release" -ext none -int real --ptxas-options="-v" main.cu

使用与Visual Studios相同的输出(警告和内容)编译,但没有ptxas信息。

由于

2 个答案:

答案 0 :(得分:1)

我刚刚看到这样的错误,使用toolkit 4.0它提供了正确的输出,而5.0则没有。我将该命令行选项从全局项目设置移动到.cu文件的属性,它开始工作。 Visual Studio 2005。

答案 1 :(得分:0)

您没有看到--ptxas-options=-v的任何详细输出的原因是ptxas没有编译任何内容。

在您的nvcc调用中:

"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v4.2\bin\nvcc.exe"

...

-arch compute_10 -code compute_10

...

您将-code选项指定为-code compute_10,其中只包含PTX架构,而不是真正的 sm_*架构。这意味着ptxas没有将PTX代码编译成二进制代码; PTX代码仅包含在输出中,以便稍后进行JIT编译。

要查看ptxas信息,请尝试将-code选项更改为-code compute_10,sm_10

因此,在您的情况下,您的nvcc调用将是:

"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v4.2\bin\nvcc.exe" -ccbin      "c:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v4.2\include" -I"C:\Documents and Settings\All Users\Application Data\NVIDIA Corporation\NVIDIA GPU Computing SDK 4.2\C\common\inc" -O0 -arch compute_10 -code compute_10,sm_10 --host-compilation C++ -c -m 64 -o "x64\Release\CUDA_Dissertation.obj" -odir "x64\Release" -ext none -int real --ptxas-options="-v" "c:\Documents and Settings\shubham\My Documents\Visual Studio 2008\Projects\MTP\CUDA_Dissertation\CUDA_Dissertation.vcproj"

这有帮助吗?