![Google Compute 上的无头 OpenGL 渲染](https://linux22.com/image/721865/Google%20Compute%20%E4%B8%8A%E7%9A%84%E6%97%A0%E5%A4%B4%20OpenGL%20%E6%B8%B2%E6%9F%93.png)
我在 Google Compute Engine 上创建了一个 GPU 实例,并连接了 NVIDIA Tesla K80。我已在此基础上安装了 GPU 驱动程序和 CUDA指导。
nvidia-smi 检查 -好的。
nvcc-V 检查-好的
现在我正在尝试确保我可以使用 OpenGL 运行无头渲染。
我尝试过这个:
sudo nvidia-xconfig -a --use-display-device=none
配置 xconfig。
然后:
export DISPLAY=:0
最后,运行glxgears:
glxinfo | grep OpenGL
我收到此错误:
未指定协议错误:无法打开显示:0
我的 xorg.conf 文件如下所示:
# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig: version 390.30 (buildmeister@swio-display-x64-rhel04-14) Wed Jan 31 22:46:17 PST 2018
Section "ServerFlags"
Option "IgnoreABI" "True"
Option "nolisten" "True"
Option "AutoAddDevices" "False"
EndSection
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "nvidia" 0 0
EndSection
Section "Files"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "Tesla K80"
BusID "PCI:0:4:0"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
Option "UseDisplayDevice" "none"
EndSection
我的配置缺少什么?
我的操作系统:Ubuntu 16.04
答案1
我不确定同样的事情是否适用于您完全无头运行的情况,但我最近为 VNC 设置了一个云计算实例,并且为了使 OpenGL 正常工作,我必须遵循本指南并安装 VirtualGL。 https://virtualgl.org/Documentation/HeadlessNV
对于您来说,您可能只需要执行以下操作:
sudo nvidia-xconfig -a --allow-empty-initial-configuration --virtual=1920x1200 --busid PCI:0:4:0