2019.11.16

为了使用远程的云服务器,必须要自己配置环境,这次还算比较顺利。

1. 安装cuda 

https://blog.csdn.net/wanzhen4330/article/details/81699769  ( 安装cuda = nvidia driver + cuda toolkit + cuda samples + others)

从本地下载好 cuda 的安装包,然后使用 ssh 远程上传上去,然后 运行 .run 文件。 用户协议文件太长,不想看可以直接按 ctrl+c, 然后 accept 即可。,

因为是在虚拟机上, 似乎不用关闭之前的驱动,步骤较为简单。可以直接安装 nvidia  driver 驱动,安装完后,使用 nvidia-smi 查看是否安装成功,发现居然是两块 Tesla V100 显卡。

这里似乎驱动一定要安装,否则会出现“no CUDA-capable device is detected”报错 https://blog.csdn.net/flowrush/article/details/80254301

也就是说,只装 cuda 的toolkit , 没装显卡驱动,还是用不了显卡。当然显卡驱动可以和 cuda 一同安装,也可以独立安装。为避免版本冲突,最好一起安装。

 

Ubuntu 远程离线配置 pytorch 运行环境

 

注意一定要设置环境变量,否则后续调用 tensorflow 或者 pytorch 可能会出现意想不到的错误。

 

echo 'export PATH="/usr/local/cuda-10.0/bin:$PATH" ' >>  ~/.bashrc
echo 'export LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:$LD_LIBRARY_PATH" ' >>  ~/.bashrc

 否则可能会提示 某些动态链接库找不到的问题,参见 https://i.cnblogs.com/posts/edit;postId=11939020  中提到的坑。

 

 

下面图片辨析了自己手动安装 cuda 和一些情况下 Anaconda 的 conda 自动安装的 cuda 的区别。 

Ubuntu 远程离线配置 pytorch 运行环境 

2. 安装 cudnn

https://blog.csdn.net/wanzhen4330/article/details/81699769#cudnn%E7%9A%84%E5%AE%89%E8%A3%85

从本地下好 cudnn 的安装包,然后使用 ssh 远程上传上去,然后只需进行少量copy 和授予可运行的权限即完成安装,

注意 tar -zxvf 命令 第一次用。

Ubuntu 远程离线配置 pytorch 运行环境

tar -zxvf cudnn-10.0-linux-x64-v7.5.1.10.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

# 查看cudnn版本
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

 

 

3. 安装 Anaconda

从本地上传安装包后直接运行安装。

Ubuntu 远程离线配置 pytorch 运行环境

 

 

设置环境变量 https://blog.csdn.net/weixin_41983807/article/details/90181625

vim ~/.bashrc

写入 export "PATH=$PATH: xxx/anaconda3/bin"

source ~/.bashrc

然后输入 python,看是否成功

或者

用 echo 命令

1)sh 安装包.sh
2)cd /home/tianxiaoxiao/package //先定位到当前安装包目录下
      echo 'export PATH ="/home/tianxiaoxiao/anaconda3/bin:$PATH"' >> ~/.bashrc
      source ~/.bashrc

 

小插曲:误输入 export "PATH=PATH: xxx/anaconda3/bin" 后导致出错,vim 命令都无法识别了,要用 /usr/bin/vim 。使用 /usr/bin/vim 打开文件,并修改后,使用 source ~/.bashrc 仍然出错,因为此时 PATH 对应的值仍然是错误的,无法在本窗口内恢复。这时重新打开一个窗口就好了。

 

注意:conda 换用清华源 https://cloud.tencent.com/developer/article/1572996 :(自己的另一个博客有记录踩坑)

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes

 

4. 安装 pytorch 

 https://blog.csdn.net/suan2014/article/details/80410144  https://blog.csdn.net/felicityPY/article/details/90233374

从清华镜像站点 https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/linux-64/ 下载对应安装包,然后远程上传上去,然后 使用 conda install 安装

 

5. 安装 torchvision

从清华镜像站点 https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/linux-64/ 下载对应安装包,同样使用 conda install 安装

 

注:第 4 步、第 5 步也许可以在线安装, 例如使用 conda install pytorch=1.3 居然成功更新了更新版本的 pytorch。

 

6. 测试显卡是否可用

打开python

import torch, torchvision

torch.cuda.is_available()

 

7. 安装 progress (有需求就安装)

pip install progress

比 conda install progress 方便很多。

 

The End.

 


 

 

2020.5.10 更新

系里的服务器似乎自带了 driver 显卡驱动,但是没有装 cuda https://blog.csdn.net/qq_38451119/article/details/83302585

不存在路径/usr/local/cuda, 仍需要自己安装 cuda 和 cudnn。 自己安装 cuda 最好把原来自带的 driver 覆盖掉,避免版本冲突。

在装软件包的时候,似乎可以连上清华的镜像 装 progress, 但是 ping baidu.com 似乎不通。

 

2020.5.28更新

服务器进了回收站,再恢复,就又要重新安装 driver 显卡驱动, 不过 /usr/local/cuda 路径及文件还在,真是奇怪! 之前还以为是没有关闭正在利用 GPU 的进程导致的,但测试关了也会这样。

 

 2020.11.30 更新

为了跑 GCN 的代码,租用学校 4卡GPU 的云服务器,按照上面流程全部走了一遍。但发现 离线安装的 pytorch1.0.0 和 torchvision 版本有一些过低,因此想要更新一下版本。

直接使用  conda install pytorch=1.3

发现居然起作用了,能够进行安装。