一、生成镜像
以往的镜像在新的project上不符合,因此不得不开一个新的镜像并在其中安装环境。
docker commit -m "new_torch_env" -a "chluan" f36d4d8bf0ef
建立好了新的Image镜像,根据镜像生成一个新的docker,并在该docker里面配置环境。
二、配置环境
project里面包含environment.yaml文件,包含了环境配置。
根据官网中Anaconda配置,如下:
conda env create -f environment.yaml
conda activate mot_neural_solver
但是配置时,出现问题,只能按照主文件train.py运行查看少什么包装什么。
1. 配置镜像
清华源镜像一般来说下载比较快。
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
移除清华源:
conda config --remove channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
2. 安装pytorch版本和相应的CUDA版本
安装1.5.0的torch和torchvision
pip3 install torch==1.5.0
然后发现torch跟torch-scatter的版本不符合,因此需要重新下载CUDA版本为10.1的版本的torch。
因此就重新下载bz文件,解压缩安装。
下载代码:
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/linux-64/pytorch-1.5.0-py3.6_cuda10.1.243_cudnn7.6.3_0.tar.bz2
加压缩和加载
conda install --use-local pytorch-1.5.0-py3.6_cuda10.1.243_cudnn7.6.3_0.tar.bz2
or
pip3 install pytorch-1.5.0-py3.6_cuda10.1.243_cudnn7.6.3_0.tar.bz2
随后打开python3,输入:
import torch
print(torch.__version__,torch.cuda.is_available())
Out: 1.5.0 False
发现cuda不能用,这是通过 nvidia-smi看到CUDA版本是10.0,而代码是在10.1下使用的。
尝试安装CUDA 10.1,代码如下:
wget http://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_418.87.00_linux.run
sudo sh cuda_10.1.243_418.87.00_linux.run
已经有个CUDA版本,在运行时出现报错,对log文件查看后,找出原因是因为已经有了CUDA版本,为此,重新安装版本时,按照这个教程所描写,简历双CUDA系统。
4. 生成和下载cudnn(其实如果硬件支持的话,上面的操作已经可以正确安装CUDA且能够切换和运行了,但是,我遇到的问题是硬件驱动版本太低了,没办法只能换了台版本高的服务器,接下来教程是把以前的服务器的镜像挪到新的服务器中去)
注意:图中所示步骤中,第四步如果是用-i (--input)就不要再加 < 符号了
安装cudnn的教程如下:
https://blog.csdn.net/u013066730/article/details/80894063