对于我的工作,我们正在寻找一个允许我们进行导出显示的应用程序。规范为:
目前,我们在服务器上使用 TurboVNC(带有一个名为“vncviewer”并由 ssh 隧道保护的 vnc 客户端)和 virtualGL 来使用“vglrun name_application”命令启动 OpenGL 应用程序(类型 paraview)。
有人可以给我一些替代解决方案的建议吗?
我看到了 XDCMP 解决方案,但它不是安全的。
我们不能使用 ssh X 转发,因为它的工具很慢。
顺便问一下,客户端分配的资源和服务器分配的资源之间的导出显示比例是多少?
TurboVNC 似乎在服务器上分配了更多的资源:这是否意味着客户端不管理图形处理而只从服务器接收原始数据,这些数据显示在客户端?
那么,当我执行“ssh -X”时不会出现这种情况? (这应该是在本地处理 OpenGL 处理的客户端)
任何澄清都会很棒,
谢谢
最佳答案
您愿意等待多长时间才能将其投入生产?
现在 Linux 图形堆栈是围绕 Xorg 构建的。 Xorg 有一个不方便的缺点,即您不能运行使用 GPU 的纯屏幕外 X 服务器。如果您只能与一个使用 GPU 的用户和持有 VT 的 GPU 一起生活,那么您可能需要查看 Xpra
您从使用 GPU 而不是 dummy
的 X 服务器配置开始。司机。
如果您愿意再等两年(希望如此),所有驱动程序都将完全支持 KMS 和 DRM 内核接口(interface);尽管我不喜欢 Wayland 的某些方面,但它也是一个巨大的游戏规则改变者,它给 NVidia 带来了很大的同行压力,以最终绕过并使用“标准”API。现在您可以使用 libgbm
使用支持它且不运行显示服务器的 GPU 创建纯粹的屏幕外 OpenGL 渲染上下文;即在 Mesa3D 树中具有开源驱动程序的 GPU(英特尔和 AMD,但目前只有 OpenGL-3,没有 OpenCL)。再过 2 年,API 和工具就会稳定下来,您可以在生产中方便地使用它。
关于opengl - 导出展示应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23455503/