600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > Linux服务器安装cuda cudnn 显卡驱动和pytorch超详细流程

Linux服务器安装cuda cudnn 显卡驱动和pytorch超详细流程

时间:2019-07-13 21:58:07

相关推荐

Linux服务器安装cuda cudnn 显卡驱动和pytorch超详细流程

原文链接:/kingfoulin/article/details/98872965

基本的环境

首先了解自己服务器的操作系统内核版本等信息:

查看自己操作系统的版本信息:cat /etc/issue或者是cat /etc/lsb-release等命令

查看服务器显卡信息:

lspci | grep -i nvidia查看全部显卡信息。nvidia-smi如果已经安装了对应的显卡驱动的话可以采用这个命令。

cat /proc/driver/nvidia/version查看安装的显卡的驱动信息。

显卡驱动的安装需要根据操作系统的版本进行选择。

多版本的gcc 和g++

gccg++是很多驱动安装过程中需要使用的编译器,很多时候由于编译器版本的不对应会使得安装出现很多莫民奇妙的错误,根据经验,现在的CUDA 10.1的话,也可以使用的是4.8,因此最好选择4.8-5.4之间的版本比较好,兼容一点。对于多版本的gccg++的安装进行详细的讲解:

查看自己的gccg++版本:gcc --version以及g++ --version

安装新的或者安装多版本的gcc以及g++的流程:sudo add-apt-repository ppa:ubuntu-toolchain-r/test首先加入一些更新的仓库,以便于更新。sudo apt-get update以及sudo apt get update对需要的软件包等进行必要的更新。sudo apt-get install gcc-4.9以及sudo apt-get install g++-4.9用于安装对应版本的gcc以及g++。注意自己需要的版本自己修改。sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 20

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 20

这两行用于将刚安装的gccg++类似于注册的操作加入到bin中,用于可选择操作。也就是说通过这个操作不断向系统注册新的gccg++版本。update-alternatives --config gcc

update-alternatives --config g++用于对版本进行选择。进入之后根据提示完成选择即可。如果权限不够加sudo

一般我们是使用4.8-5.4之间的版本编译器即可。如果还是出现错误的话,首选的操作应该是卸载显卡驱动重装显卡驱动。这个方法的成功率最高。

驱动安装

如果需要安装显卡的话,需要先将旧版本的显卡驱动卸载:

sudo apt-get remove --purge nvidia*

此外,安装之前,需要先禁用一个东西。nouveau。

sudo vim /etc/modprobe.d/blacklist.conf

在文件的最后面加入以下的内容:

blacklist nouveaublacklist lbm-nouveauoptions nouveau modeset=0alias nouveau offalias lbm-nouveau off12345

检查操作是否成功:lsmod | grep nouveau没显示即成功。

显卡驱动的安装比较简单,直接到官网进行对应的驱动的下载。点我下载

注意在驱动的下载那里,操作系统的选择直接选择LInux-xbit即可,这个是可以搜索得到的,如果选择ubuntu16等搜不到。亲测直接搜索Linux 64-bit安装有效可用!

将下载好的显卡驱动上传到服务器进行安装。

sudo ./NVIDIA-Linux-x86_64-430.34.run采用该命令进行驱动的安装。安装完成之后,可以采用以下命令进行检查:

nvidia-smi

CUDA安装以及cudnn安装

CUDA是GPU进行计算的运算平台,根据需要安装对应版本的cuda。

这里需要注意的是,最好在安装显卡驱动的时候选择对应的cuda版本,然后在安装cuda的时候的版本保持一致,虽然高版本的驱动可以兼容低版本的cuda

下载对应版本的cuda。cuda各个版本下载点我哦。由于这个网站的入口比较难找,大家最好保存起来哦。

这是我自己下载的版本。将下载的版本也上传到服务器上进行安装。

sudo sh cuda_10.0.130_410.48_linux.run安装方式可以百度一哈。

安装过程中的选择项:nvidia accelerated graphics driver ,n 。因为我们已经安装过。其他的都选yes。软连接的建立。注意还有一个选项是软连接的建立,会在/usr/local/下面建立一个软连接cuda该软连接连接到安装的真正的cuda-10.0的地址。软连接的建立可以用于多个版本的cuda的管理。

如图所示的,黄色的cuda是一个软连接,红色的是多个安装好的CUDA修改软连接就可以修改cuda的版本。

这是安装完成之后的内容。安装完成之后,采用

nvcc -V对安装进行检查。

如果提示没有找到对应的命令的话,需要进行环境变量的配置。这里我们按照假设建立的cuda的软连接的方式进行配置:

sudo vim ~/.bashrc加入以下的内容:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64export PATH=$PATH:/usr/local/cuda/binexport CUDA_HOME=$CUDA_HOME:/usr/local/cuda123

之后再使用nvidia-smi

多版本的CUDA管理。其实很简单,就是那个软连接的管理,例如我需要其他版本的cuda,由于我的环境比变量直接指向的是一个软连接,因此我可以删除旧的软连接再建立新的软连接的方式来实现不同版本的cuda的切换。

sudo rm -rf cuda # 删除旧版本的软连接sudo ln -s /usr/local/cuda-9.1 /usr/local/cuda # 建立新版本的软连接,前面的路径是需要的版本的cuda的安装路径。12

安装对应的cudnn。根据cuda版本选择对应的cudnn进行安装。点我进行下载

进去之后花花绿绿的什么鬼一大堆,如果采用安装的方式的话,需要每个版本的操作系统需要下载3个deb文件,就很烦。因此我们直接下载箭头对应的版本,改文件的后缀是cudnn-10.0-linux-x64-v7.3.0.29.solitairetheme8这种也是也是tgz。将下载来的文件进行解压即可。

cp cudnn-10.0-linux-x64-v7.3.0.29.solitairetheme8 cudnn-10.0-linux-x64-v7.3.0.29.tgz # 换后缀tar -xvf cudnn-8.0-linux-x64-v5.1.tgz # 解压12

解压之后得到一个cuda文件夹。采用如下的操作进行cudnn的安装。(这时候的cudnn要直接安装到对应的版本的cuda的真实的安装路径中。这样建立软连接的时候才会读到cudnn文件)

sudo cp cuda/include/cudnn.h /usr/local/cuda-xx.x/include # 填写对应的版本的cuda路径sudo cp cuda/lib64/libcudnn* /usr/local/cuda-xx.x/lib64 # 填写对应的版本的cuda路径sudo chmod a+r /usr/local/cuda-xx.xx/include/cudnn.h /usr/local/cuda-xx.xx/lib64/libcudnn*123

如果喜欢采用deb的安装方式的,参见

以上流程如果走下来还是出错的话,建议重新卸载显卡驱动再来一次。

Anaconda了解和安装

采用Anaconda进行python环境的管理是一个很高效的解决方案。从仓库下载对应版本的软件进行安装。点我下载。

bash Anaconda3-5.0.1-Linux-x86_64.sh安装。安装过程需要同意将安装路径加入到环境变量的配置文件中。

source ~.bashrc使其生效。

建立自己新的环境conda create-n your_name python=your_version激活新的环境source activate your_name

Pytorch安装

到pytorch官网下载对应版本的pytorch 即可。官网

根据生产的命令进行安装。安装完成之后测试:

python # 进入python 环境import torch # 导入安装的pytorch包torch.cuda.is_available() # 检查cuda是否可以使用123

如果torch.cuda.is_available()如果输出是false,那就表示前面的驱动或者cuda的安装有问题,最可能的就是驱动。直接卸载重新安装显卡驱动即可解决问题。

</div><div data-report-view="{&quot;mod&quot;:&quot;1585297308_001&quot;,&quot;dest&quot;:&quot;/kingfoulin/article/details/98872965&quot;,&quot;extend1&quot;:&quot;pc&quot;,&quot;ab&quot;:&quot;new&quot;}"><div></div></div><link href="/release/phoenix/mdeditor/markdown_views-60ecaf1f42.css" rel="stylesheet"></div>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。