一种可行的Linux服务器apex安装方法
服务器环境:
python:3.8
torch:2.0.0
cuda:11.7
安装过程:
由于最新版的apex不稳定且bug多,因此选择回退到稳定版本。
git clone https://github.com/NVIDIA/apex cd apex git checkout f3a960f80244cf9e80558ab30f7f7e8cbf03c0a0 pip install -v --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" ./a
但是,这种安装会导致和环境不兼容,主要是torch版本的问题。
因此需要修改apex中的一些代码:
找到conda目录下apex_amp_state.py:
我的是在 usr/local/miniconda3/lib/python3.8/site-packages/apex/amp/_amp_state.py
替换对应位置部分代码,主要是else那块:
if TORCH_MAJOR == 1 and TORCH_MINOR < 8:
from torch._six import container_abcs
else:
import collections.abc as container_abcs
这是第一个位置,第二个位置是_initialize.py:
将最上面的import torch._six替换为:
int_classes = int string_classes = str
这就完成了基本的修改,理论上可以进行使用apex了。
浙公网安备 33010602011771号