首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检查OpenGL/EGL是否检测到无头服务器上的GPU?

如何检查OpenGL/EGL是否检测到无头服务器上的GPU?
EN

Stack Overflow用户
提问于 2021-03-31 17:21:21
回答 1查看 1.2K关注 0票数 2

我正在尝试使用NVIDIA的EGL库在无头模式下渲染一个基于OpenGL的模拟器。但是,我发现使用EGL在服务器上呈现的速度与使用xvfb在服务器上呈现的速度相同,而xvfb只执行基于软件的呈现。我想知道我的EGL可能没有正确地检测到我的NVIDIA GPU。

检查EGL和OpenGL是否正确地检测到我的GPU的最佳方法是什么?

我尝试了下面的命令,发现呈现器被设置为基于软件的,而不是基于GPU的,但是我不确定这是否是因为我用xvfb调用glxinfo:

xvfb-run -a -s "-screen 0 1400x900x24 +extension RANDR -noreset" -- glxinfo | grep "renderer"

输出OpenGL renderer string: llvmpipe (LLVM 10.0.0, 256 bits)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-01 10:04:11

但是,

发现,使用EGL在服务器上呈现的速度与使用xvfb在服务器上呈现的速度相同,

如果您的程序使用的是EGL,那么如果您在X服务器上运行它,那么它就没有任何区别。EGL的全部目的是完全绕过X服务器的必要性。对于一个支持屏幕外EGL的程序来说,它在X环境中运行并不重要(无论是Xvfb还是带有nvidia驱动程序的Xorg ),因为它不关心X。

我用xvfb调用glxinfo:

glxinfo永远不会告诉您EGL支持。

在您自己的程序中,在建立OpenGL上下文之后,使用glGetString获取有关正在运行的OpenGL实现的信息。

如果在您自己的程序中,使用EGL、glGetString(GL_VENDOR)glGetString(GL_RENDERER)告诉您Nvidia,那么您将加速GPU。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66892412

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档