在 Windows 中编译 CUDA 代码的好方法是什么?
我尝试了不同的方式,与 Visual Studio 链接并使用 nvcc 命令从命令行编译。
视觉工作室的问题。我按照大多数链接进行编译,在互联网上找到,但我仍然无法编译简单的程序。
nvcc 的问题。找不到路径 windows.h。我尝试在 nvcc.profile 中添加 Visual Studio 的包含路径,但它不起作用?
有没有人对此有很好的解决方案?
我正在使用 CUDA 4.2 和 Visual Studio 2010。
在 Windows 中编译 CUDA 代码的好方法是什么?
我尝试了不同的方式,与 Visual Studio 链接并使用 nvcc 命令从命令行编译。
视觉工作室的问题。我按照大多数链接进行编译,在互联网上找到,但我仍然无法编译简单的程序。
nvcc 的问题。找不到路径 windows.h。我尝试在 nvcc.profile 中添加 Visual Studio 的包含路径,但它不起作用?
有没有人对此有很好的解决方案?
我正在使用 CUDA 4.2 和 Visual Studio 2010。
这是我的建议。您可以获取其他人使用 Visual Studio 设置 CUDA 的秘诀。但每次 nVidia 发布新工具包或您更新到下一个 Visual Studio 时,您都将重新经历一遍。几乎总是因为其中一个供应商不能很好地独自离开(或者他们确实有充分的理由;它可能会发生)决定改变路径。
所以我的建议是nvcc从命令行使用,直到你了解所有依赖项。然后你就可以毫无问题地设置你的 IDE。每次新的 CUDA 出现时,我都会返回命令行并确保我仍然可以构建、发现任何路径更改、工具更改等。一旦我理解了,我就会更新我的 IDE 设置。
我有同样的问题。这是简单的解决方案。
CUDA(GPU Computing SDK)的例子运行正常(你应该已经安装了Nvidia GPU Computing SDK)。打开开始菜单,在文本框中输入“Browse CUDA SDK”(希望你使用win vista 或7)。
示例位于src文件夹中。此文件夹中的示例在 VS 2005、VS 2008 和 VS 2010 中有解决方案。它们在此解决方案和项目中设置了所有初始设置,您可以复制其中一个示例并清理代码并运行您自己的代码。唯一的问题是它们的设置文件是在本地处理的(例如../../common/lib/)。所以你应该在那个src文件夹中运行你的项目。
CUDA 4.0 和 4.1 在 Visual Studio 的新建项目向导中也有一个 CUDA 运行时选项。那太好了,我不知道他们为什么在 4.2 上取消了这个选项。如果您无法运行 CUDA 4.2,那么 CUDA 4.1 是一个不错的选择。(您可以安装 Nvidia GPU SDK 4.1,然后将其卸载,Visual Studio optin 将保留并正常工作)
另一种选择是创建一个空白项目并使用此配置(它适用于 CUDA 4.0,您计算机中的地址可能不同):
新建 -> 项目 -> Win32 控制台应用程序
名称:“HelloCuda” -> 确定 -> 下一步 -> 空项目 -> 完成
右键单击项目 HelloCuda -> 构建自定义项
单击查找现有并导航到 CUDA 4.0.targets
C:\ProgramFiles\MSBuild\Microsoft.Cpp\v4。0\BuildCustomizations\CUDA 4.0.targets
现在创建一个文本文件并将其保存为带有 .cu 扩展名的 HelloWorld
现在您将拥有一个文件 HelloWorld.cu
将此文件添加到项目 HelloCuda
右键单击 HelloWorld.cu -> 配置属性 -> 常规 -> 项目类型 -> CUDA C/C++
现在右键单击项目 HelloCuda -> 配置属性 -> CUDA C/C++ -> 通用 -> 附加包含目录
添加 C:\Users\All Users\Application Data\NVIDIA Corporation\NVIDIA GPU Computing SDK 4.0\C\common\inc;
现在右键单击项目 HelloCuda -> 配置属性 -> 链接器 -> 常规 -> 附加库目录
添加 C:\Users\All Users\Application Data\NVIDIA Corporation\NVIDIA GPU Computing SDK 4.0\C\common\lib;
链接器 -> 输入 -> 附加依赖项 -> cudart.lib
现在在 HelloWorld.cu 中编写一个示例 CUDA C 程序并编译。