Ascend Docker Runtime场景主要通过结合Ascend Docker Runtime(容器引擎插件)使用,将vNPU挂载到容器。
需要先获取“Ascend-docker-runtime_{version}_linux-{arch}.run”,并安装容器引擎插件,方法可参见安装Ascend Docker Runtime。
选择以下两种方式之一进行使用:
docker run -it -e ASCEND_VISIBLE_DEVICES=100 -e ASCEND_RUNTIME_OPTIONS=VIRTUAL image-name:tag /bin/bash
docker run -it --rm -e ASCEND_VISIBLE_DEVICES=0 -e ASCEND_VNPU_SPECS=vir04 image-name:tag /bin/bash
ls /dev/davinci*
ls /dev/vdavinci*
参数 |
说明 |
举例 |
---|---|---|
ASCEND_VISIBLE_DEVICES |
使用ASCEND_VISIBLE_DEVICES环境变量指定被挂载至容器的NPU设备,使用设备序号指定设备,支持单个和范围指定且支持混用。 |
ASCEND_VISIBLE_DEVICES=100表示将id为100的vNPU挂载到容器。 |
ASCEND_RUNTIME_OPTIONS |
对参数ASCEND_VISIBLE_DEVICES中指定的芯片ID作出限制:
|
|
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_VNPU_SPECS=vir04表示划分4个AI Core作为vNPU,挂载至容器。 |