安装TensorNVMe和Deepspeed时遇到的坑:无root权限安装libaio依赖库

发布时间 2023-03-22 21:16:45作者: marsggbo

如果你有root权限,用下面这行代码一键安装即可:

sudo apt install libaio1 libaio-dev

如果没有root权限,步骤如下

  1. 下载 libaio
git clone https://pagure.io/libaio
  1. 安装libaio
    如果你没有
cd libaio
make prefix=`pwd`/usr install

上面命令会在 /path/to/libaio/usr路径下安装libaio,安装成功后会得到两个文件夹,结构如下:

/path/to/libaio/usr/
|__incude
	|__libaio.h
|__lib
	|__libaio.a
	|__libaio.so
	|__libaio.so.1
	|__libaio.so.1.0.2
  1. 将文件加入环境变量路径

之前我一直是将路径加入到PATHLD_LIBRARY_PATH这两个变量中去,但是死活安装不上TensorNVMe和Deepspeed(因为我想使用offload)。

下面介绍具体如何做,用vim ~/.bashrc命令编辑.bashrc文件,并添加下面两行即可。你需要将路径改成你的路径:

export CFLAGS="-I/path/to/libaio/usr/lib/include $CFLAGS"
export LDFLAGS="-L/path/to/libaio/usr/lib/lib $LDFLAGS"
export C_INCLUDE_PATH=/path/to/libaio/usr/lib/include

4. 安装TensorNVMe和Deepspeed

  • 安装Deepspeed
git clone https://github.com/microsoft/DeepSpeed.git
cd DeepSpeed
DS_BUILD_CPU_ADAM=1 DS_BUILD_AIO=1  DS_BUILD_UTILS=1 pip install -e . --global-option="build_ext" --global-option="-j8" --no-cache -v --disable-pip-version-check
  • 安装TensorNVMe
pip install TensorNVMe

后记,这破玩意浪费了我两个星期才安装好,感谢https://poe.com/sage ,让我找到了问题所在,虽然它最开始也没有告诉我怎么做,前后浪费了我快两个星期。。