所有英特尔 GPU 都仅使用软件渲染 (Mesa) 吗?

所有英特尔 GPU 都仅使用软件渲染 (Mesa) 吗?

我在看:-

$ glxinfo | grep OpenGL
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Haswell Mobile 
OpenGL core profile version string: 3.3 (Core Profile) Mesa 11.0.7
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 11.0.7
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 11.0.7
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
OpenGL ES profile extensions:

从上面来看,这一点——

OpenGL renderer string: Mesa DRI Intel(R) Haswell Mobile

好像都是用软件渲染,如果要的话如何开启硬件渲染?

答案1

您可能使用硬件渲染,请检查以下内容:

$ glxinfo | fgrep direct
direct rendering: Yes

上面的“直接渲染”是这样解释的维基百科作为:

直接渲染基础设施 (DRI)是一个允许以安全、高效的方式直接访问 X Window 系统下的图形硬件的框架。 DRI的主要用途是为OpenGL的Mesa实现提供硬件加速。

正如 @Ruslan 所指出的,Mesa 包含一个软件渲染器,可在没有可用的图形硬件加速器时用作后备。它被称为OpenGL renderer string。但您的输出显示正在使用英特尔渲染器,而不是软件渲染器。

答案2

你肯定使用硬件渲染。软件渲染器还有另一个名字:

$ LIBGL_ALWAYS_SOFTWARE=1 glxinfo|grep '\<renderer\>'
OpenGL renderer string: Gallium 0.4 on llvmpipe (LLVM 3.5, 256 bits)

为了轻松检查,您可以简单地将上述命令的输出与没有LIBGL_ALWAYS_SOFTWARE=1.如果它提供相同的输出,则默认情况下您正在使用软件渲染器。否则它很可能是硬件加速的。

相关内容