2. 安装
Note
文中的示例将省略设备映射的参数, 请在需要时添加, 或使用 gc-docker 工具自动处理.
对于 C600 卡来说, 每个 IPU 设备需要映射 3 个设备文件, 以 ipu0
为例, 需要映射 /dev/ipu0
, /dev/ipu0_ex
和 /dev/ipu0_mem
.
以下是映射 ipu0
和 ipu1
两个设备到容器的示例:
docker run \
--device=/dev/ipu0:/dev/ipu0 --device=/dev/ipu0_ex:/dev/ipu0_ex --device=/dev/ipu0_mem:/dev/ipu0_mem \
--device=/dev/ipu1:/dev/ipu1 --device=/dev/ipu1_ex:/dev/ipu1_ex --device=/dev/ipu1_mem:/dev/ipu1_mem \
--ipc=host \
...
对于 M2000/Bow2000 系列来说, 将需要添加以下参数:
docker run \
--ulimit memlock=-1:-1 --net=host --cap-add=IPC_LOCK --device=/dev/infiniband/ --ipc=host\
-v /path/to/ipu.conf:/etc/ipuof.conf -e IPUOF_CONFIG_PATH=/etc/ipuof.conf \
...
其中更多关于 IPUOF_CONFIG_PATH
的信息, 请参考 Using IPU Pod partitions
2.1. PopRT 和 Poplar SDK 版本的对应关系
PopRT 的版本需要和 Poplar SDK 的版本对应, 以保证 PopRT 的功能和 Poplar SDK 的兼容性. 具体的对应关系如下:
PopRT 版本 |
Poplar SDK 版本 |
注释 |
---|---|---|
v1.1.0 |
v3.2.0 |
无 |
v1.0.2 |
v3.1.0 |
无 |
2.2. 从 Docker 镜像快速开始
PopRT 提供了 Release 版本的 Docker 镜像. 可在 DockerHub 页面查看详细信息.
快速开始
docker pull graphcorecn/poprt:latest
docker run --rm graphcorecn/poprt:latest -v
2.3. 在 Host 上安装 PopRT
访问 Github Releases 页面下载需要的 whl 包.
访问 SOFTWARE DOWNLAODS 以获取对应版本的 Poplar SDK.
2.3.1. For Ubuntu 20.04
Note
PopRT 在 Ubuntu 20.04 上仅提供 Python3.8 的支持.
在获得对应的 SDK 后, 首先启用 SDK, 参考以下命令:
# 如果已经启用其他版本的 SDK, 需要执行这一步
# unset POPLAR_SDK_ENABLED
source /path/to/sdk/enable
可以通过以下命令查看目前在使用的 SDK 所在的路径:
echo $POPLAR_SDK_ENABLED
如果不希望 PopRT 安装在默认的 Python 环境内, 可以使用 venv 创建隔离的环境使用.
安装 whl
pip install poprt-*.whl
验证版本
poprt -v
# for PopRT version 1.0.2, expected output is:
# PopRT version: 1.0.2
# Build with SDK: 3.1.0+6824 (8387f79d96)
# Runtime SDK: 3.1.0+6824 (8387f79d96)