APEX
apex是混合精度,用于提升GPU训练时的速度
安装apex之前,linux环境必须安装
- python3,
- pytorch,
- CUDA,
RTX3090安装apex报错
这是因为RTX3090显卡算力是8.6,不支持CUDA11.0以下的版本,但是cuda11直接安装apex会提示找不到nvcc。
nvcc fatal:XXX
或者是安装成功无法使用apex
解决方法
1. 安装Pytorch和torchvision
设置cudatoolkit=11.0
conda install pytorch==1.7.1 torchvision cudatoolkit=11.0 -c pytorch
2. 安装CUDA11.1
尝试过安装CUDA11.0会报错
wget https://developer.download.nvidia.com/compute/cuda/11.1.0/local_installers/cuda_11.1.0_455.23.05_linux.run
sudo sh cuda_11.1.0_455.23.05_linux.run
详细安装过程这里不赘述
3. 安装apex库
git clone https://github.com/NVIDIA/apex
cd apex
接下来在apex/安装文件setup.py中的关于CUDA版本校验的代码删除,再执行安装命令
即:在get_cuda_bare_metal_version函数中修改版本号
def get_cuda_bare_metal_version(cuda_dir):
bare_metal_major = release[0] # 如CUDA11。1,主版本号是11,
#bare_metal_minor = release[1][0] # 副版本号是1,需要改成0,即与cuidatoolkit的版本号相匹配
bare_metal_minor = 0
执行安装文件即可。
python setup.py install
觉得有用的小伙伴点个赞吧!