代码repo:https://github.com/ycszen/TorchSeg
TorchSeg安装:
由于本机上没有安装nvcc,我采用docker来实现
下载对应docker:
docker pull nvidia/cuda:10.0-cudnn7-devel-ubuntu16.04
运行容器:docker run --gpus all -p 12222:22 -it --name=lbaiSeg --mount type=bind,source=/mnt/VOL_2/lbai/,target=/lbai nvidia/cuda:10.0-cudnn7-devel-ubuntu16.04 bash
安装miniconda3
安装PyTorch
conda install pytorch==1.0.0 torchvision==0.2.1 cuda100 -c pytorch
安装apex
1)下载:git clone https://www.github.com/nvidia/apex
2)进入文件夹:cd apex
3)滚回旧版本:git checkout f3a960f80244cf9e80558ab30f7f7e8cbf03c0a0
4)安装:python setup.py install --cuda_ext --cpp_ext
安装依赖python库
easydict,tqdm,opencv,scipy,ninja-build(可选)
遇到的问题
dataloader的num_worker(config.py中)不为零导致docker中share memory溢出出错,将其改为零可以解决问题,但缺点是会使训练变慢。也可以使用类似以下的命令docker run –shm-size 24g --gpus all… …来解决