glxinfo是类 Unix 系统上一款用于查询 OpenGL 与 GLX(OpenGL 扩展)实现情况的命令行工具,可以显示图形驱动、渲染器、版本号与可用扩展等信息,常被用来判断系统是否启用了三维硬件加速。它由 Brian Paul 编写,随 Mesa 示例程序集一同分发,在 X 窗口系统环境下作为 OpenGL 诊断工具使用。
定义
glxinfo 是一个在命令行中运行的程序,用于查看指定 X 显示上的 OpenGL 与 GLX 实现信息。它输出的内容包括服务端与客户端的 GLX 实现细节、OpenGL 与 GLU 实现细节,以及当前可用的 GLX 视觉(visual)列表[1]。
另一份手册把它描述为列出 GLX 扩展、支持 OpenGL 的视觉以及 X 服务器上 OpenGL 渲染器信息的工具,其中 GLX 与渲染器信息包含版本和扩展属性,视觉信息则列出每个可支持 OpenGL 的视觉所具备的 GLX 属性,例如是否支持双缓冲、各颜色分量大小、Z 缓冲深度等[2]。
该工具的手册页由 Thierry Reding 为 Debian 项目撰写,程序本身由 Brian Paul 编写[1]。
原理
glxinfo 通过 X 显示连接向 X 服务器发起查询,进而取得 GLX 扩展、渲染器与视觉配置等信息。程序默认使用环境变量 DISPLAY 确定主机、显示编号与屏幕;用户也可以用 -display 选项显式指定要查询的显示[2]。
程序在 X 服务器上创建 GLX 上下文后读取实现属性。默认情况下它使用直接渲染连接,若加上 -i 选项则强制只使用间接渲染连接;两种连接方式下报告的能力可能不同[1]。
输出形式上,视觉信息默认以较紧凑的表格呈现,-t 选项会让表格更宽、更易读,-v 选项则给出类似 xdpyinfo 的详细列表;-b 选项打印屏幕 0 上“最佳”视觉的编号,-l 选项打印 OpenGL 的各项实现限制,例如 GL_MAX_TEXTURE_SIZE 一类上限值[2]。
发展历程
glxinfo 属于 Mesa 示例程序集,与 glxgears 同源,其源码位于该程序集的 xdemos 目录中,软件包在不同的发行版中分别以 mesa-utils、glx-utils 等名称提供[3]。
从提交记录看,该工具由 Brian Paul 长期维护并持续扩充:2001 年 4 月加入 -i 与 -h 选项,2002 年 9 月加入 -l 选项以打印 OpenGL 限制,2006 年 5 月扩充了 -l 所输出的顶点与片段程序、着色器相关限制,2008 年 7 月增加了 GLSL 版本字符串的查询与输出[4]。
2010 年 5 月,该工具增加了对浮点颜色缓冲与 sRGB 缓冲类型的查询和报告;2014 年 7 月,参数解析等非 GLX 部分被提取为公共代码,以便与 Windows 平台上的同类工具 wglinfo 共用;2015 年 5 月,加入 -B 简要输出模式。
2016 年 2 月,该工具开始测试并输出 GL_ATI_meminfo 与 GL_NVX_gpu_memory_info 这两组显存信息扩展。
应用
最常见的用途是检查系统是否启用了三维加速。在 Linux 上把输出过滤出“direct rendering:”一行,若结果为 Yes,说明本地系统正在使用三维加速,OpenGL 通常也应能正常工作[5]。
另一个常见检查对象是渲染器。输出中的“OpenGL renderer string”会给出实际承担渲染的图形设备名称;如果这里出现软件光栅化器而非显卡型号,意味着渲染由处理器完成,可能出现性能问题[5]。
在混合显卡与远程桌面等场景中,该工具也被用于确认渲染路径。例如在双显卡机器上可以用它比对 DRI_PRIME 环境变量开启前后的 OpenGL 供应商、渲染器与版本,判断是否切换到了目标显卡;在虚拟桌面基础设施中,它被用来判断服务器上配置的是 OpenGL 硬件渲染还是 Mesa 软件渲染[6][7]。
此外,它的输出常被用于核对某项扩展或版本是否可用,例如通过检索扩展列表或 OpenGL 版本号来判断是否支持特定功能[8]。
局限
该工具依赖 X 服务器连接,其查询结果取决于驱动与实际配置;使用间接渲染时报告的能力可能与直接渲染不同[9]。在 Wayland 环境下,它需要通过 XWayland 提供的 X 兼容层才能工作,因此反映的未必是原生 Wayland 会话下的完整情况[9]。
它只输出静态的能力与配置信息,并不提供渲染性能的测量结果,也不能替代对具体应用运行状况的测试。当输出显示软件光栅化时,该工具本身无法指出问题成因,仍需进一步检查显卡连接与驱动状态[5]。
手册中的部分选项存在平台差异,例如 -s 等选项并非在全部实现中都有定义,实际可用选项取决于所用版本与发行版打包情况[9]。
参见
参考资料
- glxinfo(1) — mesa-utils — Debian unstable [引用日期2026-10-14]
- glxinfo - man pages section 1: User Commands [引用日期2026-10-14]
- graphics/glx-utils - The NetBSD Packages Collection [引用日期2026-10-14]
- bnf's mesa-demos repository - index : ~bnf/mesa-demos [引用日期2026-10-14]
- opengl-check-working [引用日期2026-10-14]
- BLFS-12.0-fr-systemd(PDF) [引用日期2026-10-14]
- dcv-ag(PDF) [引用日期2026-10-14]
- Revision d2807b35-5ba6-4f65-9333-f423ea3c58fe [引用日期2026-10-14]
- glxinfo man | Linux Command Library [引用日期2026-10-14]