您的位置:首页 > 移动开发

Remote development of CUDA Applications CUDA应用远程编译及运行

2016-11-19 17:26 931 查看
Abstract:A计算机是没有符合安装CUDA程序的NVIDIA显卡的,但是B服务器是有符合要求的NVIDIA显卡的,可是B服务器在机房,而且没有安装桌面系统,显然使用B服务器作为CUDA开发系统的不合适的,故能不能使用A服务器作为编辑,B服务器作为编译及运行,答案是肯定的。NVIDIA官方文档Nsight_Eclipse_Edition_Getting_Started.pdf 说明了这种模式的可行性,从CUDA6.5版本可以就可以了,另外也可以参考这篇文章。可是实际操作起来还是麻烦多多的,下面我就把比较详细的过程记录下来(我的安装环境,其他环境也可参考)。

(1) 软件

A服务器和B服务器都安装了Linux Centos 6.5 (这个不是硬性的,后面的软件版本对上就好)

A服务器必须安装图形界面(B服务器可装可不装,如果装了直接在B使用好了,不用那么麻烦)

A服务器安装Eclipse (当然安装Eclipse之前需要把JDK之类的装上)

A服务器需要给Eclipse安装上CDT等C/C++开发插件(Plug-ins)

A服务器和B服务器都需要安装ssh,并且配好两者之间免密码访问

A服务器和B服务器都需要安装Git等版本控制器

B服务器需要安装CUDA6.5以上的版本(本文装的是CUDA7.5)

A服务器需要安装Nsight Eclipse(B服务器在装CUDA是一起捆绑安装了)

(2) 软件安装过程

Linux等操作系统的安装就不多说了,自行Google

下面的软件是必须安装的:

 在A服务器(编辑服务器)安装图形界面(打开链接参考另一篇文章)

Centos安装图形界面与远程登录使用

 安装ssh并配置免密码访问

ssh服务一般已经默认安装,可通过rpm –qa | grep ssh 查看安装情况

难点是免密码登录,请参考(centOS服务器部署ssh,免密码登陆linux)

 安装版本控制器Git

可以使用命令 git –version 查看安装的git版本

如果没有安装可使用yum install git 安装 (不同的Linux版本安装命令不一样,请根据自己的Linux版本使用安装命令)

 安装CUDA (版本必须是6.5以上,否则不支持远程功能)

根据自己版本的Linux操作系统下载cuda官网下载



当然在正式安装前需要检查B服务器是否有合适要求的显卡

检查是否安装gcc或者Intel等编译器(gcc默认是安装了的,使用gcc –version检查安装版本)

从下载的方式可以看到有三种安装方式,我选择了第一种runfile

把下载好的cuda_7.5.18_linux.run上传到 /usr/local/

然后执行./ cuda_7.5.18_linux.run 即可安装(不想看到安装过程可加参数 –silent ,即 ./ cuda_7.5.18_linux.run –silent )

最后配置环境变量

export PATH=$PATH:/usr/local/cuda-7.5/bin

export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64

输入nvcc检查是否安装配置成功

 在A服务器安装Nsight Eclipse Edition

这个是困扰了我很久的难题,A服务器没有合适安装CUDA的显卡,而Nsight Eclipse又是捆绑安装的,怎样才能把它装到A服务器上呢,强行安装CUDA肯定是不行的(我试过是失败的)

后来我抱着试试的心态,把B服务器安装好的拷贝到A上,结果成功了,操作如下:

scp -r user@B:/usr/local/cuda-7.5 user@A:/usr/local/cuda-7.5

然后进入/usr/local/cuda-7.5/libnsight(注意A已进入图形界面)

执行./nsight (会让选择工作目录)(不知道没有安装后面的软件能不能成功,我是先安装好后面的软件的,执行就成功了,所以建议把后面的软件也安装好)

下面的软件不知道是否要安装,建议装上

 Eclipse (参考我的另一篇博客)

Linux Centos安装eclipse并创建桌面快捷方式

 安装CDT等C/C++开发插件 (有多种方式,下面介绍一种)

打开Eclipse ——》Help——》Eclipse Marketplace



注意:这种方式必须联网

在Search Find输入CDT 然后找到Eclipse C/C++ IDE 8.6.0Luna

接着点击Install 即可安装,接下来的步骤就是next了。

安静地等待安装完,重启Eclipse可以了。



在Remote方式下Build、Debug、Run、Profile ,CUDA程序

(1) 在A服务器 (切换到图形界面)

cd /usr/local/cuda-7.5/libsight

./nsight

也可以类似Windows点击进入,然后点击运行

打开了,会让你选择一个工作空间

(2) 新建CUDA工程



(3) 导入CUDA Sample (安装时自带的例子)



(4) 配置远程运行环境

右击项目,选择Debug As ——》Debug Configurations



(5) 点击Remote connection 的Manager配置远程主机

点击Remote tookit的Manager 选择远程主机CUDA的安装目录



(6) 然后点击Apply就可以了(我上面的截图是Build过的,如果你此时点击Debug肯定是失败的,你没有可执行文件,Local也没有配好)

(7) Build Project (具体还有什么步骤我忘了,你根据错误提示弄好就行,实在不行给我留言)

右击项目 Build Project就可以



下面就可以Run/Debug/profile

祝你成功,不行的话直接给我留言就好了

时间仓促,写得不好,请多多包涵
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐