服务器电脑上有实验室同门的各种环境,为了不搞崩大家的环境同时避免自己的环境被别人搞崩,在个人用户下再装一下cuda和cudnn。按照下面的步骤执行之前,需要有管理员账户和密码。
CUDA
在官网下载需要的版本,我这里下载的是10.0.版本及其补丁。
chmod +x cuda_10.0.130_410.48_linux.run
sh ./cuda_10.0.130_410.48_linux.run
然后跟着指示选择
###接受巴拉巴拉协议
Do you accept the previously read EULA?
accept/decline/quit: accept
###是否安装驱动,因为服务器驱动么得问题,我直接no好吧
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 410.48?
(y)es/(n)o/(q)uit: n
###我要装的就是这个cudatoolkit,当然yes
Install the CUDA 10.0 Toolkit?
(y)es/(n)o/(q)uit: y
###注意!用于个人使用,装在你自己账户目录下,下面是我的
Enter Toolkit Location
[ default is /usr/local/cuda-10.0 ]: /home/gye/cuda100
###这里是设置软链接,如果你选择了yes,其他人如果默认使用系统路径下的cuda而没有配置自己的环境变量
###那么就会根据此软链接使用你的cuda,为了避免不必要的麻烦,直接no
Do you want to install a symbolic link at /usr/local/cuda?
(y)es/(n)o/(q)uit: n
###安装一个运行示例
Install the CUDA 10.0 Samples?
(y)es/(n)o/(q)uit: y
###运行示例的位置,选择了安装在我的cuda目录下
Enter CUDA Samples Location
[ default is /home/dell ]: /home/gye/cuda100
安装完成后显示如下
###主要就是这几行,warning和logfile啥的不用理会
===========
= Summary =
===========
Driver: Not Selected
Toolkit: Installed in /home/gye/cuda100
Samples: Installed in /home/gye/cuda100
接下来,重中之重,设置环境变量,各种形式让人头大,以下亲测有效
###进入根目录
cd ~
###编辑bashrc文件,不熟悉vim建议百度食用
vim .bashrc
###在最后添加下面几行,保存退出。/home/gye/cuda100是我选择安装cuda的位置,换成你的即可
export LD_LIBRARY_PATH=/home/gye/cuda100/lib64$LD_LIBRARY_PATH
export CUDA_HOME=/home/gye/cuda100$CUDA_HOME
export PATH=/home/gye/cuda100/bin:$PATH
###使bashrc生效
source .bashrc
###重新打开一个终端,依次执行以下命令
###查看cuda版本
nvcc -V
###查看cuda的位置,如果和你的安装位置一致,则说明没问题
which nvcc
###补充说明一下,关于环境变量里面的冒号,ubuntu中只是用冒号来分隔不同的路径,需要注意的是最后一个路径后面不需要有冒号,可以使用echo命令输出一下看看
#输出环境变量,末尾都不要有冒号,否侧需要去bashrc中删掉
echo $PATH
echo $CUDA_HOME
运行以下示例程序,显示Result = PASS代表安装成功。
cd ~/NVIDIA_CUDA-10.0_Samples/1_Utilities/bandwidthTest
make
./bandwidthTest
前面还附带下载了个补丁,能够提高计算效率的,这里一并装进去,按照图里的样子输入安装cuda的位置即可。
chmod +x cuda_10.0.130.1_linux.run
sh ./cuda_10.0.130.1_linux.run
CUDNN
在cuDNN Archive下载CUDA10.0对应的版本,cuDNN Library for Linux。因为没有设置软链接,所以直接拷贝到安装位置即可。
tar -zxvf cudnn-10.0-linux-x64-v7.6.5.32.tgz
sudo cp cuda/include/cudnn.h /home/gye/cuda100/include/
sudo cp cuda/lib64/libcudnn* /home/gye/cuda100/lib64/
sudo chmod a+r /home/gye/cuda100/include/cudnn.h
chmod a+r /home/gye/cuda100/lib64/libcudnn*
###验证以下是否安装成功
cat /home/gye/cuda100/include/cudnn.h | grep CUDNN_MAJOR -A 2
显示cudnn版本号表明安装成功。
完结撒花,算是解决了之前的一致困扰我的问题:只要把系统路径下的cuda添加到我自己的环境变量中,在nvidia面板中的CUDA Version就显示ERR!这样安装完之后就没有这个问题了,虽然之前报ERR并不知道原因,Whatever。