目录
一、复现代码举例
我们在复现其他baseline的时候,要看代码的环境要求,例如:
# Environment Setup
Python 3.7.13
CUDA 11.1
Pytorch 1.10.1
torchvision 0.11.2
注: 以上的环境是必须要按照作者要求的安装,如果换其他的版本,就可能会出错。而其他依赖可以直接pip安装,无版本要求。
二、创建环境——选择一个Python版本
为了方便环境管理,我们是基于工程来创建这个工程的环境。
2.1 创建基本环境
2.1.1 基于AutoDL
- 先建一个基本环境:
- 进入终端、创建python:
conda create -n hra37 python=3.7.13
2.1.2 基于PyCharm
- 打开一个工程;
- 创建基本环境:File -> Settings -> Project -> Python Intepreter -> Conda Environment -> 点 **+ ** ->New environment -> 指定Python版本和修改环境名字
安装时出现错误:
排查错误:
- 查看镜像源是清华还是中科大:
conda config --show channels
显示如下:(显示为中科大)
- 用终端创建环境,需要cd到anaconda3/bin下在安装:
conda create -p /home/wanghui/anaconda3/envs/HRA-UNET -y python=3.7.13
依然出现问题。发现是本身服务器的问题。然后,将服务器放在AutoDL的私有云上,重新配环境,成功。
2.2 终端激活环境
conda activate hra37
2.3 退出环境
conda deactivate
2.4 删除环境
conda remove -n hra37 --all # hra37是我想删除的环境名
三、PyTorch安装
3.1 查看cuda
- 安装PyTorch必须找到对应的cuda,所以先查看自己的服务器CUDA。
-
终端输入命令:
nvidia-smi
-
终端输入命令:
nvcc --version
-
补充:
- nvidia-smi全程是NVIDIA System Management Interface ,它是一个基于前面介绍过的NVIDIA Management Library(NVML)构建的命令行实用工具,旨在帮助管理和监控NVIDIA GPU设备。
- nvcc和nvidia-smi显示的CUDA版本不同。CUDA有两个主要的API:runtime(运行时) API和driver API。这两个API都有对应的CUDA版本(如9.2和10.0等)。如果driver API和runtime API的CUDA版本不一致可能是因为你使用的是单独的GPU driver installer,而不是CUDA Toolkit installer里的GPU driver installer。 参考:显卡,显卡驱动,nvcc, cuda driver,cudatoolkit,cudnn详解
结论: 这个服务器的cuda 11.7,可向下兼容。
3.2 查看linux系统的版本号
uname -a
3.3 GPU配置解释
此时显卡状态为正在双卡运行程序。
- NVIDIA-SMI:显卡(硬件)。
- Driver Version:显卡驱动。
- CUDA Version: CUDA版本。这里是11.7。
- Name:这表示GPU的型号,这里是NVIDIA GeForce RTX 2080Ti。
- Fan:风扇的状态,通常表示风扇的速度或转动百分比。此时,两张卡分别显示为“95%”、“76%”,表示风扇正在以95%和76%的速度运行。
- Temp:这是GPU的温度,通常以摄氏度(C)为单位。例如,“84C”表示GPU的当前温度是84摄氏度。
- Perf:代表性能状态,通常指示GPU当前的性能状态等级。P0~P12,P0最大,P12最小。
- Pwr:Usage/Cap:这表示GPU的功率使用情况。例如,“20W /350W”表示GPU当前正在使用20瓦的功率,而其最大功率限制为350瓦。
- Bus-Id:这是GPU在系统总线上的标识符,用于唯一地识别该GPU。
- Memory-Usage: 表示GPU显存的使用情况。例如,“4222MiB /11264MiB”表示当前使用了4222MiB的显存,而总共可用显存为11264MiB。
- GPU-Util: 表示GPU的利用率,即GPU被工作负载使用的百分比。如果这个参数是在反复跳动,是因为没有设置好CPU的线程数。具体解决方法参考:关于GPU显存占满(即memory usage 很大),但GPU-util很小,导致模型训练很慢
- Compute M. & MIG M.:这些可能与GPU的计算模式和多实例GPU(MIG)相关。
- Default:这可能表示GPU的某些参数或设置处于默认状态。
- N/A:这表示“不适用”或“不可用”,可能因为某些信息在当前状态下不可用。
3.4 安装PyTorch
- Linux:torch==1.10.1
pip install torch==1.10.1+cu111 torchvision==0.11.2+cu111 torchaudio==0.10.1 -f https://download.pytorch.org/whl/cu111/torch_stable.html
- Linux:torch==1.9.1
pip install torch==1.9.1+cu111