Containerd客户端使用cgroup v1的用户,启动容器命令示例如下。
如果是使用cgroup v2的用户,需要将下文的runtime io.containerd.runtime.v1.linux修改成runtime io.containerd.runc.v2 --runc-binary /usr/local/Ascend/Ascend-Docker-Runtime/ascend-docker-runtime。
如示例1修改后为ctr run --runtime io.containerd.runc.v2 --runc-binary /usr/local/Ascend/Ascend-Docker-Runtime/ascend-docker-runtime -t --env ASCEND_VISIBLE_DEVICES=0 image-name:tag containerID。示例2~6修改方式与示例1相同。
ctr run --runtime io.containerd.runtime.v1.linux -t --env ASCEND_VISIBLE_DEVICES=0 image-name:tag containerID
ctr run --runtime io.containerd.runtime.v1.linux -t --env ASCEND_VISIBLE_DEVICES=0 --env ASCEND_RUNTIME_OPTIONS=NODRV image-name:tag containerID
ctr run --runtime io.containerd.runtime.v1.linux -t --env ASCEND_VISIBLE_DEVICES=0 --env ASCEND_RUNTIME_MOUNTS=hostlog image-name:tag containerID
ctr run --runtime io.containerd.runtime.v1.linux -t --env ASCEND_VISIBLE_DEVICES=100 --env ASCEND_RUNTIME_OPTIONS=VIRTUAL image-name:tag containerID
ctr run --runtime io.containerd.runtime.v1.linux -t --env ASCEND_VISIBLE_DEVICES=0 --env ASCEND_VNPU_SPECS=vir04 image-name:tag containerID
ctr run --runtime io.containerd.runtime.v1.linux -t --env ASCEND_VISIBLE_DEVICES=0 -e ASCEND_ALLOW_LINK=True image-name:tag /bin/bash
启动命令相关参数如表1解释。
容器启动后,可执行以下命令检查相应设备和驱动是否挂载成功,每台机型具体的挂载目录参考默认挂载内容。命令示例如下:
ls /dev | grep davinci* && ls /dev | grep devmm_svm && ls /dev | grep hisi_hdc && ls /usr/local/Ascend/driver && ls /usr/local/ |grep dcmi && ls /usr/local/bin
ls /dev/davinci*
ls /dev/vdavinci*
参数 |
说明 |
举例 |
---|---|---|
ASCEND_VISIBLE_DEVICES |
必须使用ASCEND_VISIBLE_DEVICES环境变量指定被挂载至容器中的NPU设备,否则挂载NPU设备失败;使用设备序号指定设备,支持单个和范围指定且支持混用;使用芯片名称指定设备,支持同时指定多个同类型的芯片名称。 |
|
ASCEND_ALLOW_LINK |
是否允许挂载的文件或目录中存在软链接,在Atlas 500 A2 智能小站、Atlas 200I A2 AI加速模块和Atlas 200I DK A2 开发者套件场景下需要指定该参数。
说明:
其他设备如Atlas 训练系列产品、Atlas A2 训练系列产品和Atlas 200I SoC A1 核心板等产品可以使用该参数,但因其默认挂载内容中不存在软链接,所以无需额外指定该参数。 |
|
ASCEND_RUNTIME_OPTIONS |
对参数ASCEND_VISIBLE_DEVICES中指定的芯片ID作出限制:
|
|
ASCEND_RUNTIME_MOUNTS |
读取配置文件中的挂载内容。 |
|
ASCEND_VNPU_SPECS |
从物理NPU设备中切分出一定数量的AI Core,指定为虚拟设备。支持的取值为(vir01,vir02,vir02_1c,vir04,vir04_3c,vir08,vir16、vir04_4c_dvpp、vir04_3c_ndvpp)。
需配合参数“ASCEND_VISIBLE_DEVICES”一起使用,参数“ASCEND_VISIBLE_DEVICES”指定用于切分的物理NPU设备。
说明:
参数ASCEND_RUNTIME_OPTIONS的取值包含VIRTUAL时,ASCEND_VNPU_SPECS参数将不再生效。 |
ASCEND_VNPU_SPECS=vir04表示切分4个AI Core作为虚拟设备,挂载至容器中。
说明:
|