How to configure an OpenVINO app container and HDDL Daemon container to run on an HDDL card
Encountered errors when running an OpenVINO app container or HDDL daemon container with an HDDL card:
Error: shm_open() failed: errno=2 (No such file or directory)
Error: share memory buffer(‘hddl_9841_140599233988480_0’) mapping failed
Error: map inputTensor failed, device10.2 taskID=1
Error: loadTensor(1) failed, rc=-118
- Use OpenNESS* or Kubernetes* to orchestrate each container status.
- Create single-capability containers for easier management:
- Ubuntu*-based container with app based on OpenVINO 2020 R4 (4.287)
- Ubuntu-based container executing the HDDL Daemon based on OpenVINO 2020 R4 (4.287)
- Compile the HDDL Daemon and OpenVINO app with the same version of OS and kernel driver.
- OpenVINO installer will install the right RPM package for the HDDL Daemon based on the OS version.
- HDDL driver will be compiled with the appropriate kernel header files based on the kernel version.
- OpenVINO companion libraries, such as OpenCV, are pre-compiled based on the OS and kernel version.
- The user in the docker file needs to be the same as the user that runs on the host or other docker container.
Example: root user is used in HDDL Daemon container, so root needs to be used in the OpenVINO app container as well.
- Arguments for executing HDDL in container:
-
OpenVINO app container:
--ipc=“host”
-v /var/tmp:/var/tmp -
HDDL Daemon container:
--ipc=“host”
-v /var/tmp:/var/tmp
--privileged
[--device=/dev/ion:/dev/ion] or [-v /dev:/dev]
-
Share memory and other errors occur if the OpenVINO app and the HDDL Daemon use different versions of OS and Kernel drivers. For example:
- [OpenVINO app container in Ubuntu*] and [HDDL-Daemon container in CentOS*]
- [HDDL Daemon container in Ubuntu] and [OpenVINO-App container in CentOS]
- [OpenVINO app container in Ubuntu] has a different kernel version than [HDDL Daemon container in Ubuntu]
- [OpenVINO app container in CentOS] has a different kernel version than [HDDL Daemon container in CentOS]
OpenVINO Visual Processing Unit (VPU) Plugins enable inferencing of deep learning models on the following supported VPUs:
- Intel® Neural Compute Stick 2 powered by the Intel® Movidius™ Myriad™ X — supported by the MYRIAD Plugin
- Intel® Vision Accelerator Design with Intel® Movidius VPUs — supported by the HDDL Plugin
Reference guides
Create Docker* Images with Intel® Distribution of OpenVINO™ toolkit for Linux* OS to build the Docker* Image for Intel® Vision Accelerator Design with Intel® Movidius VPUs.
Use a Docker* Image for Intel® Vision Accelerator Design with Intel® Movidius VPUs