Рендеринг Nvidia на Docker

У меня есть сервер ubuntu 20.04 с установленными и работающими драйверами nvidia. Сервер безголовый. Если я запускаю nvidia-smi на хост-машине, я получаю

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 455.38       Driver Version: 455.38       CUDA Version: 11.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  TITAN X (Pascal)    Off  | 00000000:01:00.0 Off |                  N/A |
| 23%   35C    P8    16W / 250W |     51MiB / 12192MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A       963      G   /usr/lib/xorg/Xorg                 49MiB |
+-----------------------------------------------------------------------------+

, а если я запускаю glxgears -display 0 , я могу через nvidia-smi, что графический процессор работает. Большой! Теперь я хочу сделать то же самое на докере! В качестве примера я буду использовать стандартный образ nvidia-docker:

sudo docker run -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY =: 0 --rm --gpus all --entrypoint / bin / bash -it nvidia / cuda: 11.0-base

в контейнере докера, я получаю glxgears: apt update apt install mesa-utils -y

Однако nvidia-smi здесь выглядит не так хорошо:

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 455.38       Driver Version: 455.38       CUDA Version: 11.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  TITAN X (Pascal)    Off  | 00000000:01:00.0 Off |                  N/A |
| 23%   34C    P8    16W / 250W |     51MiB / 12192MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
+-----------------------------------------------------------------------------+

И на самом деле glxgears не работает:

root@75776a0b57b1:/# glxgears -display :0
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
X Error of failed request:  GLXBadContext
  Major opcode of failed request:  151 (GLX)
  Minor opcode of failed request:  6 (X_GLXIsDirect)
  Serial number of failed request:  43
  Current serial number in output stream:  42

что я делаю не так?

0
задан 24 November 2020 в 20:27

0 ответов

Другие вопросы по тегам:

Похожие вопросы: