3

我的显卡是 EVGA GTX 550 Ti,计算能力是 2.1,我想在 Visual Studio 的配置属性中设置Code Generation设备中的动态全局内存分配。我关注此链接,但更改为后,编译器仍使用以前的参数。输出窗口的消息是:compute_20,sm_21compute_10,sm_10compute_20,sm_21

1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\BuildCustomizations\CUDA 5.0.targets(498,9): error MSB3721: The command ""C:\Program Files\NVIDIA GPU Computing Toolkit \CUDA\v5.0\bin\nvcc.exe" -gencode=arch=compute_10,code=\"sm_10,compute_10\"--use-local-env --cl-version 2010 -ccbin "E:\Programs\Microsoft Visual Studio 10.0\VC\bin" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.0\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v5.0\include" -G --keep-dir "Debug" -maxrregcount= 0 --machine 32 --compile -arch=sm_20 -g -D_MBCS -Xcompiler "/EHsc /W3 /nologo /Od /Zi /RTC1 /MDd " -o "Debug\kernel.cu.obj" "C:\Users\Mahdi\Documents \Visual Studio 2010\Projects\Paralllel SW Algorithm\Paralllel SW Algorithm\kernel.cu"" 以代码 2 退出。

Specifications:
Microsoft Visual Studio 2010
Nsight Visual Studio v3.0
CUDA Toolkit v5.0 64bit

4

1 回答 1

2

如果您-arch=sm_20在“附加选项”区域中添加,那将不起作用。您必须在相关的项目属性区域中更改它。您应该遵循该链接中的第一个(接受的)答案,而不是遵循“问题”

  • 删除您在“其他选项”区域中所做的添加。
  • 打开项目属性对话框,在左侧的“配置属性”下,选择 CUDA C/C++ 下的“设备”
  • 现在在右侧窗格中,有一个“代码生成”的下拉选择框,选择“compute_20,sm_21”。由于您正在构建项目的调试版本,因此请确保在属性中对调试版本进行此更改(在对话框顶部列出)。您可能还想在发布版本中进行此更改。

而不是按照这里的图片, 你应该按照这里的图片

于 2013-05-30T12:46:01.940 回答