Commit 4a23aa46 authored by fengzch-das's avatar fengzch-das
Browse files

update readme

parent e4f67dc0
# APEX
# <div align="center"><strong>APEX</strong></div>
## 1 简介
# 1 简介
DAS软件栈提供DCU适配版的apex深度学习框架。得益于DAS软件栈对apex特性功能的支持,开发者针对DCU加速卡开发应用时,可以便捷调用apex用于简化Pytorch中的混合精度和分布式训练等功能。
# 2 编译安装方式
## 2 安装
## 2.1 环境准备
组件支持组合
当前组件在下面的环境下已验证编译成功:
| PyTorch版本 | fastpt版本 | cuBVH版本 | DTK版本 | Python版本 | 推荐编译方式 |
| ----------- | ---------- | ------------- | -------- | --------------- | ------------ |
| 2.5.1 | 2.1.0 | main-eeb9d5fa | >= 25.04 | 3.8、3.10、3.11 | fastpt不转码 |
| 2.4.1 | 2.0.1 | main-eeb9d5fa | >= 25.04 | 3.8、3.10、3.11 | fastpt不转码 |
| 序号 | FastPT版本 | Pytorch版本 | DTK版本 |
| :--: | :--------: | :---------: | :-----: |
| 1 | 2.1.0+das.dtk25041 |2.5.1|dtk25041|
| 2 | 2.1.0+das.dtk2504 |2.5.1|dtk2504|
| 3 | 2.0.1+das.dtk25041 |2.4.1|dtk25041|
| 4 | 2.0.1+das.dtk2504 |2.4.1|dtk2504|
+ pytorch 版本大于 2.4.1 && dtk 版本大于 25.04 推荐使用 fastpt 不转码编译。
## 2.2 编译流程
### 2.1 使用pip方式安装
### 2.2.1 基础环境检查
apex whl 包下载目录:[光和开发者社区](https://download.sourcefind.cn:65024/4/main),选择对应的 pytorch 版本和 python 版本下载对应 apex 的 whl 包:
* 检查当前环境是否安装 DTK,若没有则需要安装 DTK,并确定当前环境下 DTK 的版本;
* 检查当前环境是否安装 Pytorch,若没有则需要安装 Pytorch,并确定当前环境下 Pytorch 的版本是否与 DTK 版本对应;
* 检查当前环境是否安装 FastPT,若没有则需要安装 FastPT,并确定当前环境下 FastPT 的版本是否与 Pytorch 的版本相对应。
```shell
pip install torch* # 下载 torch 的 whl 包
pip install fastpt* --no-deps # 下载 fastpt 的 whl 包
source /usr/local/bin/fastpt -E
pip install apex* # 下载的 apex-fastpt 的 whl 包
```
### 2.2.2 apex 编译流程
* 安装依赖
```bash
pip install wheel
pip install pytest
### 2.2 使用源码编译方式安装
#### 2.2.1 编译环境准备
source /usr/local/bin/fastpt -C
提供基于 fastpt 不转码编译:
python3 setup.py --cpp_ext --cuda_ext --peer_memory --nccl_p2p --fast_bottleneck bdist_wheel # 编译指令
1. 基于光源 pytorch 基础镜像环境:镜像下载地址:[光合开发者社区](https://sourcefind.cn/#/image/dcu/pytorch),根据 pytorch、python、dtk 及系统下载对应的镜像版本。
2. 基于现有 python 环境:安装 pytorch,fastpt whl 包下载目录:[光合开发者社区](https://sourcefind.cn/#/image/dcu/pytorch),根据 python、dtk 版本,下载对应 pytorch 的 whl 包。安装命令如下:
```shell
pip install torch* # 下载torch的whl包
pip install fastpt* --no-deps # 下载fastpt的whl包, 安装顺序,先安装torch,后安装fastpt
pip install setuptools==59.5.0 wheel pytest
```
并通过下面的命令安装 Pytorch3d:
```bash
pip install dist/apex-0.1-cp310-cp310-linux_x86_64.whl
#### 2.2.2 源码编译安装
- 代码下载
```shell
git clone http://developer.sourcefind.cn/codes/OpenDAS/apex.git # 根据编译需要切换分支
```
# 3 组件测试
执行下面的命令测试组件:
- whl 包构建安装:
```bash
pip install wheel
pip install pytest
source /usr/local/bin/fastpt -C
python3 setup.py --cpp_ext --cuda_ext --peer_memory --nccl_p2p --fast_bottleneck bdist_wheel # 编译指令
pip install dist/apex-0.1-cp310-cp310-linux_x86_64.whl
```
#### 2.2.3 注意事项
+ ROCM_PATH 为 dtk 的路径,默认为 /opt/dtk;
+ 在 pytorch2.5.1 环境下编译需要支持 c++17 语法,打开setup.py文件,把文件中的 -std=c++14 修改为 -std=c++17。
## 3 验证
- 执行下面的命令测试组件:
```bash
pip install expecttest
......@@ -48,3 +75,12 @@ source /usr/local/bin/fastpt -E
cd tests/L0
python run_test.py
```
## 4 Known Issue
-
## 5 参考资料
- [README_ORIGIN](README_ORIGIN.md)
- [https://github.com/NVIDIA/apex.git](https://github.com/NVIDIA/apex.git)
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment