Skip to content

Update docker image #7166

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 5 commits into
base: develop
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/hardware_support/dcu/index_cn.rst
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@

飞桨框架支持基于海光 DCU 芯片的训练和推理,请参考以下内容快速体验:

- `海光 DCU 安装说明` <./install_cn.html>: 海光 DCU 安装说明
- `海光 DCU 安装说明 <./install_cn.html>`_ : 海光 DCU 安装说明
- `海光 DCU 基于框架的使用指南 <./paddle_tutorial_cn.html>`_ : 海光 DCU 基于框架的使用指南
- `海光 DCU 基于套件的使用指南 <./paddlex_tutorial_cn.html>`_ : 海光 DCU 基于套件的使用指南
- `海光 DCU 支持模型 <./support_cn.html>`_ : 海光 DCU 支持模型
54 changes: 25 additions & 29 deletions docs/hardware_support/dcu/install_cn.md
Original file line number Diff line number Diff line change
@@ -14,21 +14,23 @@

## 运行环境准备

推荐使用飞桨官方发布的海光 DCU 开发镜像,该镜像预装有海光 DCU 基础运行环境库(DTK)。
您可以基于 docker、pip、源码等不同方式准备飞桨开发环境

### 基于 Docker 的方式(推荐)

我们推荐使用飞桨官方发布的海光 DCU 开发镜像,该镜像预装有海光 DCU 基础运行环境库(DTK)和飞桨 3.0 版本的 SDK。

```bash
# 拉取镜像
docker pull ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddle-dcu:dtk24.04.1-kylinv10-gcc82
docker pull ccr-2vdh3abv-pub.cnc.bj.baidubce.com/device/paddle-dcu:3.0.0-dtk24.04.1-kylinv10-gcc82-py310
```

```bash
# 启动容器
docker run -it --name paddle-dcu-dev -v $(pwd):/work \
-w=/work --shm-size=128G --network=host --privileged \
--device=/dev/kfd --device=/dev/dri --ipc=host --group-add video \
-u root --ulimit stack=-1:-1 --ulimit memlock=-1:-1 -v /opt/hyhal:/opt/hyhal \
--cap-add=SYS_PTRACE --security-opt seccomp=unconfined \
ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddle-dcu:dtk24.04.1-kylinv10-gcc82 /bin/bash
ccr-2vdh3abv-pub.cnc.bj.baidubce.com/device/paddle-dcu:3.0.0-dtk24.04.1-kylinv10-gcc82-py310 /bin/bash
```

#### 选项说明及可调整参数
@@ -67,26 +69,18 @@ DCU Temp AvgPwr Fan Perf PwrCap VRAM% DCU%
===================End of SMI Log===================
```

## 安装飞桨框架

**注意**:飞桨框架 DCU 版仅支持海光 C86 架构。

### 安装方式一:wheel 包安装

在启动的 docker 容器中,下载并安装飞桨官网发布的 wheel 包。
### 基于 pip 安装的方式

```bash
# 下载并安装 wheel 包
python -m pip install --pre paddlepaddle-dcu -i https://www.paddlepaddle.org.cn/packages/nightly/dcu/
python -m pip install paddlepaddle-dcu==3.0.0 -i https://www.paddlepaddle.org.cn/packages/stable/dcu/
```
⚠️ 注意:nightly 版本为每日构建,可能存在不稳定性。如果需要更稳定的版本,建议使用 3.0-rc 版本。
### 安装方式二:源代码编译安装

在启动的 docker 容器中,下载 Paddle 源码并编译,CMAKE 编译选项含义请参见[编译选项表](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/install/Tables.html#Compile)。
### 基于源码编译的方式

```bash
# 下载 Paddle 源码
git clone https://github.com/PaddlePaddle/Paddle.git -b develop
git clone https://github.com/PaddlePaddle/Paddle.git -b release/3.0
cd Paddle

# 创建编译目录
@@ -102,23 +96,33 @@ cmake .. -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_CXX_FLAGS="-Wno-error -w" \
make -j16

# 编译产出在 build/python/dist/ 路径下,使用 pip 安装即可
pip install -U paddlepaddle_dcu-0.0.0-cp310-cp310-linux_x86_64.whl
python -m pip install -U paddlepaddle_dcu-*-linux_x86_64.whl
```
⚠️ 注意:nightly 版本为每日构建,可能存在不稳定性。如果需要更稳定的版本,建议使用 3.0-rc 版本。

## 基础功能检查

安装完成后,在 docker 容器中输入如下命令进行飞桨基础健康功能的检查
输入如下命令进行飞桨基础健康功能的检查

```bash
# 检查当前安装版本
python -c "import paddle; paddle.version.show()"
```
```bash
# 预期得到输出如下
commit: d37bd8bcf75cf51f6c1117526f3f67d04946ebb9
full_version: 3.0.0
major: 3
minor: 0
patch: 0
rc: 0
cuda: False
cudnn: False
nccl: 0
xpu_xre: False
xpu_xccl: False
xpu_xhpc: False
cinn: False
tensorrt_version: None
cuda_archs: []
```
```bash
# 飞桨基础健康检查
@@ -131,11 +135,3 @@ PaddlePaddle works well on 1 GPU.
PaddlePaddle works well on 8 GPUs.
PaddlePaddle is installed successfully! Let's start deep learning with PaddlePaddle now.
```

## 如何卸载

请使用以下命令卸载:

```bash
pip uninstall paddlepaddle-dcu
```
14 changes: 2 additions & 12 deletions docs/hardware_support/dcu/paddle_tutorial_cn.md
Original file line number Diff line number Diff line change
@@ -8,20 +8,10 @@

* 考虑到环境差异性,我们推荐使用教程提供的标准镜像完成环境准备:

* 镜像链接:ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddle-dcu:dtk24.04.1-kylinv10-gcc82
* 镜像链接:ccr-2vdh3abv-pub.cnc.bj.baidubce.com/device/paddle-dcu:3.0.0-dtk24.04.1-kylinv10-gcc82-py310

### 环境安装
* 镜像中默认装有 3.0 版本的 PaddlePaddle

安装 PaddlePaddle

*该命令会自动安装飞桨主框架每日自动构建的 nightly-build 版本*

*由于 dcu 代码位于飞桨主框架中,因此我们不需要安装额外的 Custom Device 包*

```shell
python -m pip install --pre paddlepaddle-dcu -i https://www.paddlepaddle.org.cn/packages/nightly/dcu/
```
⚠️ 注意:nightly 版本为每日构建,可能存在不稳定性。如果需要更稳定的版本,建议使用 3.0-rc 版本。
## 二、运行示例

飞桨框架集成了经典的视觉模型用于帮助用户快速上手,我们将基于 ResNet50 结构,在 Cifar10 数据集上进行一次快速训练,用于帮助您了解如何基于海光 DCU 进行训练
14 changes: 3 additions & 11 deletions docs/hardware_support/dcu/paddlex_tutorial_cn.md
Original file line number Diff line number Diff line change
@@ -8,19 +8,11 @@

* 考虑到环境差异性,我们推荐使用教程提供的标准镜像完成环境准备:

* 镜像链接:ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddle-dcu:dtk24.04.1-kylinv10-gcc82
* 镜像链接:ccr-2vdh3abv-pub.cnc.bj.baidubce.com/device/paddle-dcu:3.0.0-dtk24.04.1-kylinv10-gcc82-py310

### 环境安装

1. 安装 PaddlePaddle

*该命令会自动安装飞桨主框架每日自动构建的 nightly-build 版本*

*由于 dcu 代码位于飞桨主框架中,因此我们不需要安装额外的 Custom Device 包*

```shell
python -m pip install --pre paddlepaddle-dcu -i https://www.paddlepaddle.org.cn/packages/nightly/dcu/
```
1. 镜像中默认装有 3.0 版本的 PaddlePaddle,无需额外安装

2. 安装 PaddleX 代码库

@@ -36,7 +28,7 @@ cd PaddleX
# -e:以可编辑模式安装,当前项目的代码更改,都会直接作用到已经安装的 PaddleX Wheel
pip install -e .
```
⚠️ 注意:nightly 版本为每日构建,可能存在不稳定性。如果需要更稳定的版本,建议使用 3.0-rc 版本。

## 基于 PaddleX 训练 ResNet50

### 一、安装 PaddleX 依赖
62 changes: 20 additions & 42 deletions docs/hardware_support/gcu/install_cn.md
Original file line number Diff line number Diff line change
@@ -21,17 +21,21 @@ lspci | grep S60

## 运行环境准备

推荐使用飞桨官方发布的燧原 GCU 开发镜像,该镜像预装有[燧原基础软件开发平台(TopsRider)](https://www.enflame-tech.com/developer)。
您可以基于 docker、pip、源码等不同方式准备飞桨开发环境

### 基于 Docker 的方式(推荐)

我们推荐使用飞桨官方发布的燧原 GCU 开发镜像,该镜像预装有[燧原基础软件开发平台(TopsRider)](https://www.enflame-tech.com/developer)和飞桨 3.0 版本的 SDK。

```bash
# 拉取镜像
docker pull ccr-2vdh3abv-pub.cnc.bj.baidubce.com/device/paddle-gcu:topsrider3.2.109-ubuntu20-x86_64-gcc84
docker pull ccr-2vdh3abv-pub.cnc.bj.baidubce.com/device/paddle-gcu:3.0.0-topsrider3.2.109-ubuntu20-x86_64-gcc84-py310
```
```bash
# 参考如下命令启动容器
docker run --name paddle-gcu-dev -v /home:/home \
--network=host --ipc=host -it --privileged \
ccr-2vdh3abv-pub.cnc.bj.baidubce.com/device/paddle-gcu:topsrider3.2.109-ubuntu20-x86_64-gcc84 /bin/bash
ccr-2vdh3abv-pub.cnc.bj.baidubce.com/device/paddle-gcu:3.0.0-topsrider3.2.109-ubuntu20-x86_64-gcc84-py310 /bin/bash
```
#### 选项说明及可调整参数

@@ -70,44 +74,36 @@ efsmi
+--------------------------------------------------------------------------+
```

## 安装飞桨框架

### 安装方式一:wheel 包安装

燧原支持插件式安装,需先安装飞桨 CPU 安装包,再安装飞桨 GCU 插件包。在启动的 docker 容器中,执行以下命令:
### 基于 pip 安装的方式

```bash
# 先安装飞桨 CPU 安装包
python -m pip install paddlepaddle -i https://www.paddlepaddle.org.cn/packages/nightly/cpu

# 再安装飞桨 GCU 插件包
python -m pip install paddle-custom-gcu -i https://www.paddlepaddle.org.cn/packages/nightly/gcu
# 下载并安装 wheel 包
python -m pip install paddlepaddle==3.0.0 -i https://www.paddlepaddle.org.cn/packages/stable/cpu/
python -m pip install paddle-custom-gcu==3.0.0 -i https://www.paddlepaddle.org.cn/packages/stable/gcu/
```
⚠️ 注意:nightly 版本为每日构建,可能存在不稳定性。如果需要更稳定的版本,建议使用 3.0-rc 版本。
### 安装方式二:源代码编译安装

在启动的 docker 容器中,先安装飞桨 CPU 安装包,再下载 PaddleCustomDevice 源码编译得到飞桨 GCU 插件包。
### 基于源码编译的方式

```bash
# 下载 PaddleCustomDevice 源码
git clone https://github.com/PaddlePaddle/PaddleCustomDevice
git clone https://github.com/PaddlePaddle/PaddleCustomDevice -b release/3.0.0

# 进入硬件后端(燧原 GCU)目录
cd PaddleCustomDevice/backends/gcu

# 先安装飞桨 CPU 安装包
python -m pip install paddlepaddle -i https://www.paddlepaddle.org.cn/packages/nightly/cpu
python -m pip install paddlepaddle==3.0.0 -i https://www.paddlepaddle.org.cn/packages/stable/cpu/

# 执行编译命令 - submodule 在编译时会按需下载
# 执行编译脚本 - submodule 在编译时会按需下载
mkdir -p build && cd build
export PADDLE_CUSTOM_PATH=`python -c "import re, paddle; print(re.compile('/__init__.py.*').sub('',paddle.__file__))"`
cmake .. -DWITH_TESTING=ON -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DPY_VERSION=3.10
make -j $(nproc)

# 飞桨 GCU 插件包在 build/dist 路径下,使用 pip 安装即可
python -m pip install --force-reinstall -U build/dist/paddle_custom_gcu*.whl
# 飞桨 MLU 插件包在 build/dist 路径下,使用 pip 安装即可
python -m pip install build/dist/paddle_custom_gcu*.whl
```
⚠️ 注意:nightly 版本为每日构建,可能存在不稳定性。如果需要更稳定的版本,建议使用 3.0-rc 版本。

## 基础功能检查

安装完成后,在 docker 容器中输入如下命令进行飞桨基础健康功能的检查。
@@ -118,26 +114,8 @@ python -c "import paddle_custom_device; paddle_custom_device.gcu.version()"
```
```bash
# 预期得到如下输出结果
version: 3.0.0.dev20241206
commit: 7a2766768cc92aa94cc3d0ea6c23e8397f15f68a
version: 3.0.0
commit: e6e31bd475e38c18d2c39d58fad903bd16b3ca0d
TopsPlatform: 1.2.0.301
....
```
```bash
# 飞桨基础健康检查
python -c "import paddle; paddle.utils.run_check()"
```
```bash
# 预期得到输出如下
Running verify PaddlePaddle program ...
PaddlePaddle works well on 1 gcu.
PaddlePaddle is installed successfully! Let's start deep learning with PaddlePaddle now.
```

## 如何卸载

请使用以下命令卸载 Paddle:

```bash
python -m pip uninstall paddlepaddle paddle-custom-gcu
```
22 changes: 4 additions & 18 deletions docs/hardware_support/gcu/paddlex_tutorial_cn.md
Original file line number Diff line number Diff line change
@@ -8,31 +8,17 @@

* 考虑到环境差异性,我们推荐使用教程提供的标准镜像完成环境准备:

* 镜像链接:ccr-2vdh3abv-pub.cnc.bj.baidubce.com/device/paddle-gcu:topsrider3.2.109-ubuntu20-x86_64-gcc84
* 镜像链接:ccr-2vdh3abv-pub.cnc.bj.baidubce.com/device/paddle-gcu:3.0.0-topsrider3.2.109-ubuntu20-x86_64-gcc84-py310

* 镜像中已经默认安装了燧原软件栈 TopsRider-3.2.109

* 燧原软件栈驱动版本为 1.2.0.301

### 环境安装

1. 安装 PaddlePaddle
1. 镜像中默认装有 3.0 版本的 PaddlePaddle,无需额外安装

*该命令会自动安装飞桨主框架每日自动构建的 nightly-build 版本*

```shell
python -m pip install paddlepaddle -i https://www.paddlepaddle.org.cn/packages/nightly/cpu/
```

2. 安装 CustomDevice

*该命令会自动安装飞桨 Custom Device 每日自动构建的 nightly-build 版本*

```shell
python -m pip install paddle-custom-gcu -i https://www.paddlepaddle.org.cn/packages/nightly/gcu/
```

3. 安装 PaddleX 代码库
2. 安装 PaddleX 代码库

```shell
git clone https://github.com/PaddlePaddle/PaddleX.git
@@ -46,7 +32,7 @@ cd PaddleX
# -e:以可编辑模式安装,当前项目的代码更改,都会直接作用到已经安装的 PaddleX Wheel
pip install -e .
```
⚠️ 注意:nightly 版本为每日构建,可能存在不稳定性。如果需要更稳定的版本,建议使用 3.0-rc 版本。

## 基于 PaddleX 进行 ResNet50 推理

### 一、安装 PaddleX 依赖
2 changes: 1 addition & 1 deletion docs/hardware_support/mlu/index_cn.rst
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@

飞桨框架支持基于寒武纪 MLU 芯片的训练和推理,请参考以下内容快速体验:

- `寒武纪 MLU 安装说明` <./install_cn.html>: 寒武纪 MLU 安装说明
- `寒武纪 MLU 安装说明 <./install_cn.html>`_ : 寒武纪 MLU 安装说明
- `寒武纪 MLU 基于框架的使用指南 <./paddle_tutorial_cn.html>`_ : 寒武纪 MLU 基于框架的使用指南
- `寒武纪 MLU 基于套件的使用指南 <./paddlex_tutorial_cn.html>`_ : 寒武纪 MLU 基于套件的使用指南
- `寒武纪 MLU 支持模型 <./support_cn.html>`_ : 寒武纪 MLU 支持模型
Loading