带有CUDA 5.5的Visual Studio 2012 - CUDA语法&定义未被承认

时间:2014-02-26 02:26:11

标签: c visual-studio visual-studio-2012 cuda

对于我们想要开发的实验室,我需要使用Visual Studio 2012设置Cuda并运行一些测试。我做了什么:

  • 安装Cuda 5.5 +编辑构建配置。
  • 安装了Visual Studio 2012。
  • 在项目中,右键单击 - >构建配置并选择Cuda 5.5
  • 项目 - >属性 - > VC ++目录:在Cuda目录中设置include / lib目录。

现在,我觉得在完成所有这些之后我不需要在我的课程中加上“#include cudafiles”,它们应该自动导入,不是吗?

我没有得到以下未定义的内容:

  • cudaFree
  • cudaError
  • HANDLE_NULL

以下为“设备不是类型名称”

__device__

__global__没有存储类或标识符。

我花了数小时数小时试图让这个工作,按照在线教程,但我无法让它运行正常。我正在使用的代码可以在这里找到:

https://bitbucket.org/mrfright/cuda_by_example/src/bd759a6527ffa1b88420fc09acbc52f88c0587d2/appendix_a/?at=default

您可以在这些文件中看到只包含'lock.h'和'book.h'。我包括了这两个。

另外,我对C和VS很新,所以我可能会遗漏很多重要的信息..请告诉我你可能需要帮助评估的任何内容!谢谢!

1 个答案:

答案 0 :(得分:2)

从评论中的讨论中提取的几个关键点:

  • 在Windows上安装CUDA时,请确保先安装VS. CUDA工具包安装修改VS以使编译CUDA代码更容易。如果未安装VS或稍后安装/重新安装,则不会进行这些修改。
  • 按照getting started guide中的说明操作,包括运行示例项目,然后构建示例项目。你遇到麻烦的第一点对于实际问题是有益的。如果你只是跳到最后(即尝试创建/构建/运行你自己的项目),那么问题就不清楚了。
  • 您可以通过打开现有项目并修改它来构建自己的CUDA项目,或者使用向导创建新项目。刚刚开始时,新用户可能更容易尝试先修改现有项目。
  • 请注意,各种CUDA程序可能需要a specific compute capability。这意味着您的设备必须支持该计算功能,并且您正在为该计算功能正确编译。您可以通过运行deviceQuery示例来确定设备的计算能力。您可以在VS项目CUDA设置中更改要编译的计算功能。
  • 在编写自己的CUDA代码时,如果遇到问题,请务必执行proper cuda error checking
  • 另外请注意,提出有关如何加载驱动程序等问题以及解决机器配置问题的问题通常会被认为是堆栈溢出的主题。由于这个原因,许多像这样的问题得到了密切的投票。