cuda vs 断点_科学网—WIN7 X64下CUDA5.5+VS2010工作环境配置 - 姚厚朴的博文

第一篇文章,科学网的开始~配置工作环境总是很麻烦,参考了许多网上的帖子,自己终于走通了,这篇博客算一个总结。另外还附带了CUDA和VS一些常见的问题及解决方案。

]1.下载安装CUDA5.5 installer

以前在实验室用的版本较早,需要分别下几个安装包本别安装。现在NVIDIA把安装程序都集成在一起了,下载链接:https://developer.nvidia.com/cuda-downloads

需要先安装VS然后再安装CUDA。在安装时要特别注意选择自定义安装,因为精简安装不会安装SDK,会给后面的工作带不少麻烦。

安装位置要记住,后面会用得上。建议按默认路径安装。

CUDA安装好后会自动添加以下路径:

CUDA_PATH_V5_5     =    C:Program FilesNVIDIA GPU Computing ToolkitCUDAv5.5

CUDA_PATH    =    C:Program FilesNVIDIA GPU Computing ToolkitCUDAv5.5

为了方便,还可以添加以下路径:

2.新建第一个CUDA程序!

启动VS2010,新建个空的WIN32控制台程序。

建好后在解决方案管理器中右击源文件,新建一个CUDA源文件,如图所示。

选择编译器。右击刚建立的源文件,选择属性,在项类型中选择CUDA C/C++编译器。

在解决方案管理器中右击工程,进入属性-连接器-常规-附加库目录,添加一个新路径:$(cuda_path_v_5_5)\lib\$(platform)

在解决方案管理器中右击工程,进入属性-连接器-输入,在右侧附加依赖项一栏中添加cudart.lib:

工具-选项-文本编辑器-文件扩展名,在右侧的下拉菜单中选择VC++编译器,并分别添加扩展名cu和cuh

至此,VS应该可以成功编译CUDA代码了。可以通过一个简单的向量求和的程序验证。

在新建的cu文件中粘贴如下代码:

语法高亮显示

前两步设置好后应该就可以成功编译CUDA代码了。但是这时候VS和VAssistX并不识别CUDA的语法,编译器里头的CUDA代码全是黑压压的,还带着不少红杠杠,需要进一步的设置。具体方法参考链接:

3.常见问题

nsight使用的8000端口经常会出现被占用的情况,可以通过修改nsight的通信端口解决。

打开你nsight monitor,在任务栏右侧找到它的图标,右击,选择Option-general-connection,便可以修改通信端口了。修改端口后需要重启monitor才能生效。

此外,还需要再VS中做对应的修改。在VS中进入Nsight-options-general-default connection port,做同样的修改。

无法打开cuda_runtime.h等头文件的解决方法:

先在计算机中搜索cuda_runtime.h,找到该文件的位置,然后再将其路径添加到VC++目录中的inc中。

4.VS使用笔记

几个常用且好用的快捷键:

Ctrl-K    Ctrl-F    自动对齐选中代码

F7     生成解决方案

F9    添加断点/清除断点

Ctrl-Shift-F9    清除所有断点

F5    调试/运行至下一个断点处

ctrl-F5    运行程序

shift-F5    停止调试

F10    step

F11    step in

Shift-F11    step out

Ctrl-K + Ctrl-C: comment一段选择代码

Ctrl-K + Ctrl-U: uncomment一段选择代码

VS默认不会在窗口中显示代码行数,解决方法:

工具-选项-文本编辑器-C/C++-显示    将行号选中,便可以在VS中显示行数了~

转载本文请联系原作者获取授权,同时请注明本文来自姚厚朴科学网博客。

链接地址:http://blog.sciencenet.cn/blog-843883-763050.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值