宿主机目录挂载至容器
在容器部署过程中,用户无需在容器内安装驱动,只需根据不同产品类型将如下目录挂载至容器内,并在容器内安装CANN软件,完成容器部署。
可参考如下示例命令启动容器,具体挂载信息请根据产品类型和实际路径进行修改。
docker run -it \ --device=/dev/davinci0 \ --device=/dev/davinci_manager \ --device=/dev/devmm_svm \ --device=/dev/hisi_hdc \ -v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi \ -v /usr/local/Ascend/driver/lib64/common:/usr/local/Ascend/driver/lib64/common \ -v /usr/local/Ascend/driver/lib64/driver:/usr/local/Ascend/driver/lib64/driver \ -v /etc/ascend_install.info:/etc/ascend_install.info \ -v /usr/local/Ascend/driver/version.info:/usr/local/Ascend/driver/version.info \ docker_image_id /bin/bash
docker_image_id 为镜像ID,用户需自行替换,可以使用docker images命令查看镜像信息。
请根据以下产品类型,将对应的目录挂载至容器内。
Atlas 300I Pro、Atlas 300V Pro、Atlas 300V、Atlas 300I Duo
参数 |
参数说明 |
---|---|
--device |
表示映射的设备,可以挂载一个或者多个设备。 需要挂载的设备如下:
|
-v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi |
将宿主机npu-smi工具“/usr/local/bin/npu-smi”挂载到容器中,请根据实际情况修改。 |
-v /usr/local/Ascend/driver/lib64/common:/usr/local/Ascend/driver/lib64/common |
将宿主机目录“/usr/local/Ascend/driver/lib64/common”和“/usr/local/Ascend/driver/lib64/driver”挂载到容器中。请根据驱动所在实际路径修改。 |
-v /usr/local/Ascend/driver/lib64/driver:/usr/local/Ascend/driver/lib64/driver |
|
-v /etc/ascend_install.info:/etc/ascend_install.info |
将宿主机安装信息文件“/etc/ascend_install.info”挂载到容器中。 |
-v /usr/local/Ascend/driver/version.info:/usr/local/Ascend/driver/version.info |
将宿主机版本信息文件“/usr/local/Ascend/driver/version.info”挂载到容器中,请根据实际情况修改。 |
A300T-9000、Atlas 300T Pro、A800-9000、A800-9010、A900-9000
参数 |
参数说明 |
---|---|
--device |
表示映射的设备,可以挂载一个或者多个设备。 需要挂载的设备如下:
|
-v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi |
将宿主机npu-smi工具“/usr/local/bin/npu-smi”挂载到容器中,请根据实际情况修改。 |
-v /usr/local/Ascend/driver/lib64/common:/usr/local/Ascend/driver/lib64/common |
将宿主机目录“/usr/local/Ascend/driver/lib64/common”和“/usr/local/Ascend/driver/lib64/driver”挂载到容器中。请根据驱动所在实际路径修改。 |
-v /usr/local/Ascend/driver/lib64/driver:/usr/local/Ascend/driver/lib64/driver |
|
-v /etc/ascend_install.info:/etc/ascend_install.info |
将宿主机安装信息文件“/etc/ascend_install.info”挂载到容器中。 |
-v /usr/local/Ascend/driver/version.info:/usr/local/Ascend/driver/version.info |
将宿主机版本信息文件“/usr/local/Ascend/driver/version.info”挂载到容器中,请根据实际情况修改。 |
--pids-limit 409600 |
当host宿主机系统为CentOS和BC-linux时,docker内的线程数最大为4092,无法满足训练要求,启动容器时需要添加该参数以配置CentOS/BC-linux下docker的最大线程。 |
Atlas 200I SoC A1
参数 |
参数说明 |
---|---|
--device |
表示映射的设备可以挂载一个或者多个设备。 需要挂载的设备如下:
|
-v /etc/sys_version.conf:/etc/sys_version.conf:ro |
将宿主机驱动版本配置文件“/etc/sys_version.conf”以只读方式挂载到容器中。 |
-v /usr/local/bin/npu-smi:/usr/local/bin/npu-smi:ro |
将宿主机npu-smi工具“/usr/local/bin/npu-smi”以只读方式挂载到容器中,请根据实际情况修改。 |
-v /var/dmp_daemon:/var/dmp_daemon:ro |
将宿主机dcmi服务进程文件“/var/dmp_daemon”以只读方式挂载到容器中。 |
-v /var/slogd:/var/slogd:ro |
将宿主机日志进程文件“/var/slogd”以只读方式挂载到容器中。 |
-v /var/log/npu/conf/slog/slog.conf:/var/log/npu/conf/slog/slog.conf:ro |
将宿主机日志守护进程配置文件“/var/log/npu/conf/slog/slog.conf”以只读方式挂载到容器中。 |
-v /etc/hdcBasic.cfg:/etc/hdcBasic.cfg:ro |
将宿主机hdc配置文件“/etc/hdcBasic.cfg”以只读方式挂载到容器中。 |
-v /usr/local/Ascend/driver/tools:/usr/local/Ascend/driver/tools |
将宿主机驱动相关工具目录“/usr/local/Ascend/driver/tools”挂载到容器中。 |
-v /usr/local/Ascend/driver/lib64:/usr/local/Ascend/driver/lib64 |
将宿主机驱动依赖动态库目录“/usr/local/Ascend/driver/lib64”挂载到容器中。 |
-v /usr/lib64/aicpu_kernels:/usr/lib64/aicpu_kernels:ro |
将宿主机aicpu lib库目录“/usr/lib64/aicpu_kernels”以只读方式挂载到容器中。 |
-v /usr/lib64/libtensorflow.so:/usr/lib64/libtensorflow.so:ro |
将宿主机tensorflow的aicpu算子库文件“/usr/lib64/libtensorflow.so”以只读方式挂载到容器中。 |
-v /sys/fs/cgroup/memory:/sys/fs/cgroup/memory:ro |
将宿主机查询内存占用率所需依赖目录“/sys/fs/cgroup/memory”以只读方式挂载到容器中。 |
-v /etc/ascend_install.info:/etc/ascend_install.info |
将宿主机安装信息文件“/etc/ascend_install.info”挂载到容器中。 |
-v /usr/local/Ascend/driver/version.info:/usr/local/Ascend/driver/version.info |
将宿主机版本信息文件“/usr/local/Ascend/driver/version.info”挂载到容器中,请根据实际情况修改。 |