|
| 1 | +# 飞桨框架寒武纪 MLU 版安装说明 |
| 2 | + |
| 3 | +飞桨框架支持基于 python 的训练和原生预测,当前最新版本为 2.3,提供两种安装方式: |
| 4 | + |
| 5 | +- 通过预编译的 wheel 包安装 |
| 6 | +- 通过源代码编译安装 |
| 7 | + |
| 8 | +## 前置条件 |
| 9 | + |
| 10 | +### 板卡安装 |
| 11 | + |
| 12 | +寒武纪 MLU370 系列板卡安装,可以参见 [寒武纪官网板卡安装教程](https://developer.cambricon.com/index/curriculum/details/id/38/classid/7.html)。 |
| 13 | + |
| 14 | +### 驱动安装 |
| 15 | + |
| 16 | +寒武纪驱动安装,可以参见 [寒武纪官网驱动安装](https://www.cambricon.com/docs/sdk_1.6.0/driver_4.20.12/user_guide_4.20.12/index.html)。 |
| 17 | + |
| 18 | +**注意**:建议安装寒武纪驱动版本高于 `v4.20.11`。 |
| 19 | + |
| 20 | + |
| 21 | +## 镜像准备 |
| 22 | + |
| 23 | +**注意**:当前仅提供基于 Ubuntu18.04 & CNToolkit3.0 的 docker 镜像环境。 |
| 24 | + |
| 25 | +首先需要准备支持寒武纪板卡运行环境的 docker 镜像,可以直接从 Paddle 的官方镜像库拉取预先装有 CNToolkit3.0 的 docker 镜像来准备相应的运行环境。 |
| 26 | + |
| 27 | +```bash |
| 28 | +# 拉取镜像 |
| 29 | +docker pull registry.baidubce.com/device/paddle-mlu:cntoolkit3.0.2-cnnl1.13.0 |
| 30 | + |
| 31 | +# 启动容器,注意这里的参数,例如 shm-size, device 等都需要配置 |
| 32 | +# 可以通过 `-v` 参数来挂载训练所需的数据集目录,例如 -v /datasets:/datasets |
| 33 | +docker run --shm-size=128G \ |
| 34 | + --net=host \ |
| 35 | + --cap-add=sys_ptrace \ |
| 36 | + -v /usr/bin/cnmon:/usr/bin/cnmon \ |
| 37 | + -v `pwd`:/workspace |
| 38 | + -it --privileged \ |
| 39 | + --name paddle_mlu_$USER \ |
| 40 | + -w=/workspace |
| 41 | + registry.baidubce.com/device/paddle-mlu:cntoolkit3.0.2-cnnl1.13.0 \ |
| 42 | + /bin/bash |
| 43 | + |
| 44 | +# 检查容器是否可以正确识别寒武纪 MLU 设备 |
| 45 | +cnmon |
| 46 | + |
| 47 | +# 预期得到以下结果(如下是一台 3 卡机器的信息): |
| 48 | +Sat Oct 8 11:22:22 2022 |
| 49 | ++------------------------------------------------------------------------------+ |
| 50 | +| CNMON v4.20.11 | |
| 51 | ++-------------------------------+----------------------+-----------------------+ |
| 52 | +| Card VF Name Firmware | Inited Driver | Util Ecc-Error | |
| 53 | +| Fan Temp Pwr:Usage/Cap | Memory-Usage | vMemory-Usage | |
| 54 | +|===============================+======================+=======================| |
| 55 | +| 0 / MLU370-X4 v1.1.6 | On v4.20.11 | 0% N/A | |
| 56 | +| 0% 32C 30 W/ 150 W | 0 MiB/ 23308 MiB | 10240 MiB/1048576 MiB | |
| 57 | ++-------------------------------+----------------------+-----------------------+ |
| 58 | +| 1 / MLU370-X4 v1.1.6 | On v4.20.11 | 0% N/A | |
| 59 | +| 0% 33C 25 W/ 150 W | 0 MiB/ 23308 MiB | 10240 MiB/1048576 MiB | |
| 60 | ++-------------------------------+----------------------+-----------------------+ |
| 61 | +| 2 / MLU370-X4 v1.1.6 | On v4.20.11 | 0% N/A | |
| 62 | +| 0% 30C 26 W/ 150 W | 0 MiB/ 23308 MiB | 10240 MiB/1048576 MiB | |
| 63 | ++-------------------------------+----------------------+-----------------------+ |
| 64 | + |
| 65 | ++------------------------------------------------------------------------------+ |
| 66 | +| Processes: | |
| 67 | +| Card VF PID Command Line MLU Memory Usage | |
| 68 | +|==============================================================================| |
| 69 | +| No running processes found | |
| 70 | ++------------------------------------------------------------------------------+ |
| 71 | +``` |
| 72 | + |
| 73 | +## 安装方式一:通过 wheel 包安装 |
| 74 | + |
| 75 | +**注意**:当前仅提供 Python 3.7 的 wheel 安装包。 |
| 76 | + |
| 77 | +**第一步**:下载 Python3.7 wheel 安装包 |
| 78 | + |
| 79 | +```bash |
| 80 | +pip install paddlepaddle-mlu==0.0.0 -f https://paddle-device.bj.bcebos.com/develop/mlu/develop.html |
| 81 | +``` |
| 82 | + |
| 83 | +**第二步**:验证安装包 |
| 84 | + |
| 85 | +安装完成之后,运行如下命令。如果出现 PaddlePaddle is installed successfully!,说明已经安装成功。 |
| 86 | + |
| 87 | +```bash |
| 88 | +python -c "import paddle; paddle.utils.run_check()" |
| 89 | +``` |
| 90 | + |
| 91 | +## 安装方式二:通过源码编译安装 |
| 92 | + |
| 93 | +**注意**:环境准备参见 [镜像准备](./paddle_install_cn.md#jingxiangzhunbei) |
| 94 | + |
| 95 | +**第一步**:下载 Paddle 源码并编译,CMAKE 编译选项含义请参见 [编译选项表](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/install/Tables.html#Compile) |
| 96 | + |
| 97 | +```bash |
| 98 | +# 下载源码,默认 develop 分支 |
| 99 | +git clone https://github.com/PaddlePaddle/Paddle.git |
| 100 | +cd Paddle |
| 101 | + |
| 102 | +# 创建编译目录 |
| 103 | +mkdir build && cd build |
| 104 | + |
| 105 | +# 执行 cmake |
| 106 | +cmake .. -DPY_VERSION=3.7 -DWITH_MLU=ON -DWITH_TESTING=ON -DCMAKE_BUILD_TYPE=Release -DWITH_DISTRIBUTE=ON -DWITH_CNCL=ON |
| 107 | + |
| 108 | +# 使用以下命令来编译 |
| 109 | +make -j$(nproc) |
| 110 | +``` |
| 111 | + |
| 112 | +**第二步**:安装与验证编译生成的 wheel 包 |
| 113 | + |
| 114 | +编译完成之后进入`Paddle/build/python/dist`目录即可找到编译生成的.whl 安装包,安装与验证命令如下: |
| 115 | + |
| 116 | +```bash |
| 117 | +# 安装命令 |
| 118 | +python -m pip install -U paddlepaddle_mlu-0.0.0-cp37-cp37-linux_x86_64.whl |
| 119 | + |
| 120 | +# 验证命令 |
| 121 | +python -c "import paddle; paddle.utils.run_check()" |
| 122 | +``` |
| 123 | + |
| 124 | +## 如何卸载 |
| 125 | + |
| 126 | +请使用以下命令卸载 Paddle: |
| 127 | + |
| 128 | +```bash |
| 129 | +pip uninstall paddlepaddle-mlu |
| 130 | +``` |
0 commit comments