1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/openvinotoolkit-prc-docker_ci

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
configure_gpu_ubuntu20.md 6.4 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 29.11.2024 00:57 78c2453

Руководство по настройке Intel® Graphics Compute Runtime для OpenCL™ на Ubuntu* 20.04

Для использования графического процессора (GPU) и создания пользовательских слоёв в интегрированной графике Intel®, необходимы компоненты драйвера Intel® Graphics Compute Runtime for OpenCL™.

Драйвер установлен в образе Docker OpenVINO™, но если у вас на хосте установлена Ubuntu 20.04, то его необходимо активировать в контейнере для пользователя без прав администратора.

Чтобы получить доступ к возможностям GPU, вам необходимо иметь правильные разрешения на хост-компьютере и в контейнере Docker. Выполните следующие команды, чтобы вывести список групп, которым принадлежат права на рендеринг на вашем хосте:

$ stat -c "group_name=%G group_id=%g" /dev/dri/render*
group_name=render group_id=134

В образах OpenVINO™ Docker нет группы рендеринга для пользователей openvino без прав администратора, поскольку группа рендеринга не имеет строгого идентификатора группы, в отличие от видеогруппы. Выберите один из следующих вариантов, чтобы настроить доступ к устройству GPU из контейнера.

1. Настройка доступа пользователя без прав администратора на хост к устройству GPU в контейнере OpenVINO на хосте Ubuntu 20

Чтобы запустить контейнер OpenVINO с пользователем без прав администратора (openvino) с доступом к устройству GPU, необходимо создать пользователя без прав администратора с тем же идентификатором, что и у пользователя openvino внутри контейнера: По умолчанию пользователь openvino имеет идентификатор пользователя #1000. Создайте пользователя без прав администратора, например, host_openvino, на хосте с тем же идентификатором пользователя и доступом к группам video, render, docker:

$ useradd -u 1000 -G users,video,render,docker host_openvino

Теперь вы можете использовать контейнер OpenVINO с доступом к GPU под пользователем без прав администратора.

$ docker run -it --rm --device /dev/dri  <image_name>

2. Настройка доступа к устройству GPU в контейнере на хосте Ubuntu 20 под пользователем без прав администратора

Чтобы запустить контейнер OpenVINO как пользователь без прав администратора с доступом к устройству GPU, укажите идентификатор группы рендеринга с вашего хоста:

$ docker run -it --rm --device /dev/dri --group-add=<render_group_id_on_host> <image_name> 

Например, получите идентификатор группы рендеринга на своём хосте:

$ docker run -it --rm --device /dev/dri --group-add=$(stat -c "%g" /dev/dri/render*) <image_name> 

Теперь вы можете использовать контейнер с доступом к GPU под пользователем без прав администратора.

3. Настройка образа для доступа к устройству GPU на хосте Ubuntu 20 и сохранение его

Чтобы запустить контейнер OpenVINO от имени пользователя root с доступом к устройству GPU, используйте следующую команду:

$ docker run -it --rm --user root --device /dev/dri --name my_container <image_name>

Проверьте группы для устройства GPU в контейнере:

$ ls -l /dev/dri/

Вывод должен выглядеть следующим образом:

crw-rw---- 1 root video  226,   0 Feb 20 14:28 card0
crw-rw---- 1 root   134  226, 128 Feb 20 14:28 renderD128

Создайте группу render в контейнере с тем же идентификатором группы, что и на вашем хосте:

$ addgroup --gid 134 render

Проверьте группы для устройства GPU в контейнере:

$ ls -l /dev/dri/

Вывод должен выглядеть следующим образом:

crw-rw---- 1 root video  226,   0 Feb 20 14:28 card0
crw-rw---- 1 root render 226, 128 Feb 20 14:28 renderD128

Добавьте пользователя без прав администратора в группу render:

$ usermod -a -G render openvino
$ id openvino

Убедитесь, что теперь группа содержит пользователя:

uid=1000(openvino) gid=1000(openvino) groups=1000(openvino),44(video),100(users),134(render)

Затем выполните повторный вход от имени пользователя без прав администратора:

$ su openvino

Теперь вы можете использовать контейнер с доступом к GPU под пользователем без прав администратора или сохранить этот контейнер как образ и отправить его в свой реестр. Откройте другой терминал и выполните следующие команды:

$ docker commit my_container my_image
$ docker run -it --rm --device /dev/dri --user openvino  my_image

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/openvinotoolkit-prc-docker_ci.git
git@api.gitlife.ru:oschina-mirror/openvinotoolkit-prc-docker_ci.git
oschina-mirror
openvinotoolkit-prc-docker_ci
openvinotoolkit-prc-docker_ci
master