VirtualGL和TurboVNC:扩展" GLX"显示屏上缺少":0.0"

时间:2016-01-15 07:01:18

标签: ubuntu opengl nvidia

我在AWS上有一台带有Nvidia GRID卡K520的远程计算机,并希望远程渲染3D图形。我使用Ubuntu 14.04 - 64位。远程和本地。 对于远程连接和OpenGL渲染,我们使用VirtualGL和TurboVNC(* amd64.deb)。

我正确安装了VirtualGL和TurboVNC,并且我有Nvidia驱动程序。

据我所知,VirtualGL使用display:0和TurboVNC在远程机器上使用display:1。

当我连接到远程计算机并且我想运行3D应用程序(通过vglrun)时,它给了我错误:

扩展" GLX"显示屏上缺少":0.0"。

我不会动摇VirtualGL如何在使用TurboVNC的远程机器上工作,它如何使用显示器:0以及它是否正常。

我需要设置一些东西(.conf,图形驱动程序)。我试着一遍又一遍地安装它,尝试了解答,但我没有找到解决方案。

1 个答案:

答案 0 :(得分:8)

找到解决方案

<强>予。小结

AWS上的远程计算机(EC2 gl2.2xlarge)在64位Ubuntu 14.04上运行。我正确安装了VirtualGL,TurboVNC和Nvidia 352.63驱动程序(cuda 7.0)。

  1. 我远程连接到aws实例。

  2. 运行TurboVNC服务器: /opt/TurboVNC/bin/vncserver

  3. 运行TurboVNC客户端并连接到远程计算机: /opt/TurboVNC/bin/vncviewer

  4. 当我想在远程PC上运行应用程序时出现错误。 /opt/VirtualGL/bin/vglrun <application>

  5. 错误:显示“:0.0”

    时缺少扩展名“GLX”

    <强> II。溶液

    1. 远程PC上的第一个类型: sudo xinit &

    2. 在远程PC上运行应用程序 /opt/VirtualGL/bin/vglrun <application>

    3. 实施例: /opt/VirtualGL/bin/vglrun glxgears

      sudo xinit&amp;

      sudo xinit &是什么?

      要让OpenGL应用程序在远程计算机上运行,​​我需要启动第二个X服务器,VirtualGL使用该服务器与NVIDIA gpu通信。第二个X服务器将以sudo xinit &开头。

      一些有用的检查

      1. 检查comp上的VGA设备:lspci | grep VGA
      2. 这在AWS(EC2 gl2.2xlarge)上展示了Nvidia GRID卡K520:

        00:02.0 VGA compatible controller: Cirrus Logic GD 5446
        00:03.0 VGA compatible controller: NVIDIA Corporation GK104GL [GRID K520] (rev a1)
        
        1. 检查司机:nvidia-smi
        2. 如果它显示了一些有用的信息,那么驱动程序正在运行:

          NVIDIA-SMI 352.63

          驱动程序版本:352.63

          来自xorg.conf的一些有用信息(/etc/X11/xorg.conf)

          Section "Device"
          Identifier     "Device0"
          Driver         "nvidia"
          VendorName     "NVIDIA Corporation"
          BusID          "0:3:0"
          EndSection
          
          Section "Device"
          Identifier     "Device1"
          Driver         "vesa"
          BusID          "0:2:0"
          EndSection
          
          Section "Screen"
          Identifier     "Screen0"
          Device         "Device0"
          Monitor        "Monitor0"
          DefaultDepth    24
          Option         "UseDisplayDevice" "none"
          SubSection     "Display"
          Depth       24
          EndSubSection
          EndSection