gcc
和g++
是很多驱动安装过程中需要使用的编译器,很多时候由于编译器版本的不对应会使得安装出现很多莫民奇妙的错误,根据经验,现在的CUDA 10.1
的话,也可以使用的是4.8
,因此最好选择4.8-5.4
之间的版本比较好,兼容一点。对于多版本的gcc
和g++
的安装进行详细的讲解:
gcc
和g++
版本:gcc --version
以及 g++ --version
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
gcc
和g++
类似于注册的操作加入到bin中,用于可选择操作。也就是说通过这个操作不断向系统注册新的gcc
和g++
版本。update-alternatives --config gcc
update-alternatives --config g++
用于对版本进行选择。进入之后根据提示完成选择即可。如果权限不够加 sudo
。 如果需要安装显卡的话,需要先将旧版本的显卡驱动卸载:
sudo apt-get remove --purge nvidia*
此外,安装之前,需要先禁用一个东西。nouveau。
sudo vim /etc/modprobe.d/blacklist.conf
在文件的最后面加入以下的内容:
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off
检查操作是否成功:lsmod | grep nouveau
没显示即成功。
显卡驱动的安装比较简单,直接到官网进行对应的驱动的下载。点我下载
注意在驱动的下载那里,操作系统的选择直接选择LInux-xbit即可,这个是可以搜索得到的,如果选择ubuntu16等搜不到。亲测直接搜索Linux 64-bit安装有效可用!
将下载好的显卡驱动上传到服务器进行安装。
sudo ./NVIDIA-Linux-x86_64-430.34.run
采用该命令进行驱动的安装。安装完成之后,可以采用以下命令进行检查:
nvidia-smi
CUDA是GPU进行计算的运算平台,根据需要安装对应版本的cuda。
这里需要注意的是,最好在安装显卡驱动的时候选择对应的 cuda
版本,然后在安装cuda
的时候的版本保持一致,虽然高版本的驱动可以兼容低版本的cuda
。
sudo sh cuda_10.0.130_410.48_linux.run
安装方式可以百度一哈。nvcc -V
对安装进行检查。
如果提示没有找到对应的命令的话,需要进行环境变量的配置。这里我们按照假设建立的cuda的软连接的方式进行配置:
sudo vim ~/.bashrc
加入以下的内容:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
export PATH=$PATH:/usr/local/cuda/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda
sudo rm -rf cuda # 删除旧版本的软连接
sudo ln -s /usr/local/cuda-9.1 /usr/local/cuda # 建立新版本的软连接,前面的路径是需要的版本的cuda的安装路径。
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 # 解压
解压之后得到一个 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*
如果喜欢采用deb的安装方式的,参见
以上流程如果走下来还是出错的话,建议重新卸载显卡驱动再来一次。
采用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 即可。官网
根据生产的命令进行安装。安装完成之后测试:
python # 进入python 环境
import torch # 导入安装的pytorch包
torch.cuda.is_available() # 检查cuda是否可以使用
如果torch.cuda.is_available()
如果输出是false,那就表示前面的驱动或者cuda的安装有问题,最可能的就是驱动。直接卸载重新安装显卡驱动即可解决问题。