MOFFETT Container Toolkit 用户手册
moffett-ctk(MOFFETT Container Toolkit)支持在容器环境中通过生成容器设备接口(Container Device Interface,CDI)文件识别并使用墨芯计算卡。CDI 是一种面向容器运行时的开放规范文件,它抽象了对设备的访问方式,并实现了在不同容器运行时之间访问的标准化。
部署
前提条件
安装 SOLA Toolkit ≥ 3.11.0,具体请参见 SOLA Toolkit 安装指南。
安装容器运行时,如 Docker、containerd 等;在容器运行时配置 CDI 的版本要求和具体操作请参见 How to configure CDI。
操作步骤
获取 MOFFETT Container Toolkit 安装包。
wget https://moffett-release.tos-cn-guangzhou.volces.com/macs/macs-v1.10/container-toolkit/moffett-container-toolkit_1.2.0_amd64.debwget https://moffett-release.tos-cn-guangzhou.volces.com/macs/macs-v1.10/container-toolkit/moffett-container-toolkit-1.2.0-1.x86_64.rpm安装 MOFFETT Container Toolkit。
sudo dpkg -i moffett-container-toolkit_1.2.0_amd64.deb
sudo rpm -ivh moffett-container-toolkit-1.2.0-1.x86_64.rpm
(可选)查看 MOFFETT Container Toolkit 版本。
moffett-ctk --version生成 CDI 规范文件。
注意
如果 SOLA Toolkit 版本发生变更,必须重复以下操作,生成新的 CDI 规范文件。
sudo moffett-ctk cdi generate --driver-root / --output=/etc/cdi/moffett.yaml
sudo moffett-ctk cdi generate --driver-root /run/moffett/driver --output=/etc/cdi/moffett.yaml
- --driver-root
SOLA 驱动挂载的根目录。
- --output
保存 CDI 规范文件的路径,默认为
/etc/cdi/moffett.yaml。
生成 CDI 规范文件后,可执行
moffett-ctk cdi list命令查看 CDI 设备列表。
部署后验证
以下验证操作以 Docker 为例。
载入全部设备执行
mx-smi list命令。docker run --rm --device moffett.ai/spu=all ubuntu:22.04 mx-smi list
以上命令的输出与在主机上直接运行
mx-smi命令相同。载入指定设备执行
mx-qual list命令。docker run --rm --device moffett.ai/spu=1 --device moffett.ai/spu=2 ubuntu:22.04 mx-qual list
以上命令的输出与在主机中运行
mx-qual list -i 1 2命令的结果相对应。须知
mx-smi list或mx-qual list命令返回的设备 Index 按 PCI Bus ID 从小到大排序。因此,在容器内和主机上执行该命令时,设备 Index 可能不同。
卸载
sudo dpkg -P moffett-container-toolkit
sudo rpm -e moffett-container-toolkit