|
| 1 | +# 天数 GPGPU 安装说明 |
| 2 | + |
| 3 | +飞桨框架 iluvatar_gpu 版支持天数 GPGPU 的训练和推理,提供两种安装方式: |
| 4 | + |
| 5 | +1. 通过飞桨官网发布的 wheel 包安装 |
| 6 | +2. 通过源代码编译得到 wheel 包安装 |
| 7 | + |
| 8 | +## 天数 GPGPU 系统要求 |
| 9 | + |
| 10 | +| 要求类型 | 要求内容 | |
| 11 | +| --------- | -------- | |
| 12 | +| 芯片型号 | 天数智芯 系列芯片,包括 BI150 | |
| 13 | +| 操作系统 | Linux 操作系统,包括 CentOS、Ubuntu、KylinV10 等 | |
| 14 | + |
| 15 | +## 运行环境准备 |
| 16 | + |
| 17 | +推荐使用天数官方发布的天数 IXUCA 开发镜像,该镜像预装有天数 IXUCA 基础运行环境库。 |
| 18 | + |
| 19 | +```bash |
| 20 | +# 拉取镜像 |
| 21 | +docker pull ccr-2vdh3abv-pub.cnc.bj.baidubce.com/device/paddle-ixuca:latest |
| 22 | +``` |
| 23 | + |
| 24 | +```bash |
| 25 | +# 在 host 上安装 driver |
| 26 | +wget https://ai-rank.bj.bcebos.com/Iluvatar/corex-driver-linux64-4.3.0.rc.9.20250624_x86_64_10.2.run |
| 27 | +bash corex-driver-linux64-4.3.0.rc.9.20250624_x86_64_10.2.run |
| 28 | +``` |
| 29 | + |
| 30 | +```bash |
| 31 | +# 启动容器 |
| 32 | +docker run -itd --name paddle-ixuca-dev -v /usr/src:/usr/src -v /lib/modules:/lib/modules \ |
| 33 | + -v /dev:/dev -v /home:/home --privileged --cap-add=ALL --pid=host \ |
| 34 | + ccr-2vdh3abv-pub.cnc.bj.baidubce.com/device/paddle-ixuca:latest |
| 35 | +docker exec -it paddle-ixuca-dev bash |
| 36 | +``` |
| 37 | + |
| 38 | +#### 选项说明及可调整参数 |
| 39 | + |
| 40 | +##### ① `--name paddle-ixuca-dev` |
| 41 | +- **作用**:指定容器名称。 |
| 42 | +- **可调整**: |
| 43 | + - 用户可改为其他名称,例如 `paddle-ixuca-test`,方便区分不同实验。 |
| 44 | + |
| 45 | +```bash |
| 46 | +# 检查容器内是否正常识别天数 GPGPU 设备 |
| 47 | +ixsmi |
| 48 | +``` |
| 49 | + |
| 50 | +```bash |
| 51 | +# 预期输出 |
| 52 | ++-----------------------------------------------------------------------------+ |
| 53 | +| IX-ML: 4.3.0 Driver Version: 4.3.0 CUDA Version: 10.2 | |
| 54 | +|-------------------------------+----------------------+----------------------| |
| 55 | +| GPU Name | Bus-Id | Clock-SM Clock-Mem | |
| 56 | +| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |
| 57 | +|===============================+======================+======================| |
| 58 | +| 0 Iluvatar BI-V150 | 00000000:10:00.0 | 1500MHz 1600MHz | |
| 59 | +| N/A 40C P0 N/A / N/A | 64MiB / 32768MiB | 0% Default | |
| 60 | ++-------------------------------+----------------------+----------------------+ |
| 61 | +| 1 Iluvatar BI-V150 | 00000000:13:00.0 | 1500MHz 1600MHz | |
| 62 | +| N/A 39C P0 104W / 350W | 64MiB / 32768MiB | 0% Default | |
| 63 | ++-------------------------------+----------------------+----------------------+ |
| 64 | + |
| 65 | ++-----------------------------------------------------------------------------+ |
| 66 | +| Processes: GPU Memory | |
| 67 | +| GPU PID Process name Usage(MiB) | |
| 68 | +|=============================================================================| |
| 69 | +| No running processes found | |
| 70 | ++-----------------------------------------------------------------------------+ |
| 71 | + |
| 72 | +``` |
| 73 | + |
| 74 | +## 安装飞桨框架 |
| 75 | + |
| 76 | +### 安装方式一:wheel 包安装 |
| 77 | + |
| 78 | +iluvatar-gpu 支持插件式安装,需先安装飞桨 CPU 安装包,再安装飞桨 iluvatar-gpu 插件包。在启动的 docker 容器中,执行以下命令: |
| 79 | + |
| 80 | +```bash |
| 81 | +# 先安装飞桨 CPU 安装包 |
| 82 | +python -m pip install --pre paddlepaddle -i https://www.paddlepaddle.org.cn/packages/nightly/cpu/ |
| 83 | + |
| 84 | +# 再安装飞桨 iluvatar-gpu 插件包 |
| 85 | +python -m pip install --pre paddle-iluvatar-gpu -i https://www.paddlepaddle.org.cn/packages/nightly/ixuca/ |
| 86 | +``` |
| 87 | +⚠️ 注意:nightly 版本为每日构建,可能存在不稳定性。如果需要更稳定的版本,建议使用 3.1 版本:https://www.paddlepaddle.org.cn/packages/stable/ixuca/ |
| 88 | +### 安装方式二:源代码编译安装 |
| 89 | + |
| 90 | +在启动的 docker 容器中,先安装飞桨 CPU 安装包,再下载 PaddleCustomDevice 源码编译得到飞桨 iluvatar-gpu 插件包。 |
| 91 | + |
| 92 | +```bash |
| 93 | +# 下载 PaddleCustomDevice 源码 |
| 94 | +git clone https://github.com/PaddlePaddle/PaddleCustomDevice |
| 95 | + |
| 96 | +# 在 PaddleCUstomDevice 根目录下执行以下指令更新子模块代码 |
| 97 | +git submodule sync |
| 98 | +git submodule update --init --recursive |
| 99 | + |
| 100 | +# 进入硬件后端(天数 iluvatar_gpu)目录 |
| 101 | +cd backends/iluvatar_gpu |
| 102 | + |
| 103 | +# 先安装飞桨 CPU 安装包 |
| 104 | +python -m pip install --pre paddlepaddle -i https://www.paddlepaddle.org.cn/packages/nightly/cpu/ |
| 105 | + |
| 106 | +# 安装编译所需依赖 |
| 107 | +cd /tmp |
| 108 | +wget https://github.com/protocolbuffers/protobuf/releases/download/v21.12/protoc-21.12-linux-x86_64.zip |
| 109 | +unzip protoc-21.12-linux-x86_64.zip |
| 110 | +mv bin/protoc /usr/local/bin/ |
| 111 | +rm -rf protoc-21.12-linux-x86_64.zip include bin |
| 112 | +cd - |
| 113 | + |
| 114 | +pip install --upgrade setuptools wheel |
| 115 | + |
| 116 | +# 执行编译脚本 |
| 117 | +bash build_paddle.sh |
| 118 | + |
| 119 | +# 编译产出在 build_pip 路径下,使用安装脚本进行安装 |
| 120 | +bash install_paddle.sh |
| 121 | +``` |
| 122 | +⚠️ 注意:nightly 版本为每日构建,可能存在不稳定性。如果需要更稳定的版本,建议使用 3.1 版本。 |
| 123 | +## 基础功能检查 |
| 124 | + |
| 125 | +安装完成后,在 docker 容器中输入如下命令进行飞桨基础健康功能的检查。 |
| 126 | + |
| 127 | +```bash |
| 128 | +# 列出可用硬件后端 |
| 129 | +python3 -c "import paddle; print(paddle.device.get_all_custom_device_type())" |
| 130 | +``` |
| 131 | +```bash |
| 132 | +# 预期得到如下输出结果 |
| 133 | +['iluvatar_gpu'] |
| 134 | +``` |
| 135 | +```bash |
| 136 | +# 使用 paddle utils 模块的 `run_check` 功能检查 paddle_iluvatar_gpu 插件和 PaddlePaddle 主框架是否正常安装,需要指定 xccl 的后端为 iluvatar_gpu |
| 137 | +export PADDLE_XCCL_BACKEND=iluvatar_gpu |
| 138 | +python3 -c "import paddle; paddle.utils.run_check()" |
| 139 | +``` |
| 140 | +```bash |
| 141 | +# 预期得到输出如下 |
| 142 | +Running verify PaddlePaddle program ... |
| 143 | +PaddlePaddle works well on 1 iluvatar_gpu. |
| 144 | +PaddlePaddle works well on 16 iluvatar_gpus. |
| 145 | +PaddlePaddle is installed successfully! Let's start deep learning with PaddlePaddle now. |
| 146 | +``` |
| 147 | +## 如何卸载 |
| 148 | +
|
| 149 | +请使用以下命令卸载 Paddle: |
| 150 | +
|
| 151 | +```bash |
| 152 | +pip uninstall paddlepaddle paddle-iluvatar-gpu |
| 153 | +``` |
0 commit comments