如何进行详细而快速的3D性能测试

我想知道如何快速测试我的3D图形性能。由于glxgears不是一个基准测试,我应该使用什么呢?而且glxgears有时会卡在60FPS,你甚至无法在驱动程序更新之前/之后进行比较(例如添加xorg-edgers PPA)。即使glxgears在开箱即用的情况下也并不真正有效。
一种可能性是屏幕保护程序,但你看不到FPS。如果我正在运行Live-CD,我也不愿意安装600MB的nexuiz。其他3D游戏也非常大... Unigine测试对于开源驱动程序来说要求太高(OpenGL和纹理压缩(S3TC...)过低的问题)。我还想测试OpenGL 2.x扩展。
如何快速测试您的3D性能?
7个回答

Ubuntu自11.04版本开始,内置了一些很好用的基准测试工具glmark2和glmark2-es2,它们非常适合进行简单的着色器基准测试,并且下载量很小。
glmark2由Linaro团队积极开发,每次发布都会带来新的、更具挑战性的基准测试。https://launchpad.net/glmark2 这些基准测试也可以在设备上(基于ARM和OpenGL-ES2)运行得很好,因此非常适合进行硬件跨平台比较。glmark2-es2在OMAP4/powervr Pandaboard上的运行效果可以参考http://www.youtube.com/watch?v=G5jg9D1lH5Y

1这些结果意味着什么?如果我想确定我的系统是否具有硬件加速功能,我要如何解读 glmark2 的结果以得出答案? - Eyal
非常好的3D基准测试很难制作,但是glmark2比glxgears更好,尽管仍然简单。 - gsedej
415.10版本,在安装了nvidia-352驱动后出现了段错误:https://bugs.launchpad.net/ubuntu/+source/glmark2/+bug/1475902 - Ciro Santilli OurBigBook.com
1nvidia-375和bug仍然存在。启动时崩溃。 - neves
@neves现在在我的Ubuntu 16.10上工作正常,使用的是NVIDIA 375.39驱动程序,glmark版本为2014.03,显卡分别是NVIDIA GTX 1080和NVS 5400M。 - Ciro Santilli OurBigBook.com
在搭载Intel Skylake处理器和HD 530显卡的情况下,没有任何问题。glmark2得分:1924,同时在全高清模式下运行Youtube。令人惊讶的是,得分竟然与GTX 1080如此接近???而在我自己的系统上,GTX 970M在调整窗口大小时会出现延迟,所以我将其关闭了。 - WinEunuuchs2Unix

Unigine有一个Linux版本的基准测试,支持不同的着色器级别,值得一试:

http://unigine.com/download/

这也包含在Phoronix测试套件中,该套件还有许多其他自动化图形(和其他)测试选项。

http://www.phoronix-test-suite.com/

简而言之,使用软件中心安装php5-cli作为Phoronix的依赖项,然后下载Phoronix压缩包并解压缩。详细的使用手册可以在Phoronix网站上找到。

我自己试了一下使用Lucid和Radeon驱动的圣殿演示版。有很多关于缺失功能的抱怨。在启动批处理文件中欺骗引擎后,只得到一个空白窗口。以下是缺失的Mesa实现列表:

欺骗测试以弥补Mesa的不足

export MESA_EXTENSION_OVERRIDE=+GL_ARB_map_buffer_range,GL_ARB_vertex_array_object,GL_ARB_half_float_vertex,GL_ARB_half_float_pixel,GL_EXT_texture_swizzle,GL_ARB_shader_object,GL_ARB_vertex_shader,GL_ARB_fragment_shader,GL_ARB_framebuffer_object,GL_EXT_framebuffer_multisample
- Joni Nevalainen
Unity是一个非常好的基准测试工具,但它与开源驱动程序不兼容。我想要测试一下我的旧ATI 9600m GPU。无论如何,感谢你的建议。我知道PTS,但它只是另一层,更多关于报告而不是实际测试。在Ubuntu软件仓库中已经有一些应用程序可供使用。 - gsedej
在Ubuntu 15.10上,使用sudo apt-get install phoronix-test-suite可以帮助自动化事务。详情请参考:https://askubuntu.com/a/820264/52975 - Ciro Santilli OurBigBook.com

在Ubuntu中,chromium-bsugltron游戏的安装占用空间要比nexuiz小得多,并且两者都具有FPS计数器。如果我想快速测试,我会选择这种方式。

谢谢回答!GL测试很好,但还是太简单了。 - gsedej

glxgears卡在60fps可能是由于VSync信号同步引起的。希望其他基准测试应用程序不会有相同的结果,但根据您的显卡,您可以绕过这个问题(但屏幕上可能会出现撕裂)。

如果您想继续,请参考这个讨论

要禁用Vsync,请像这样运行glxgears:

vblank_mode=0 glxgears

2__GL_SYNC_TO_VBLANK=0 glxgears 对于NVIDIA驱动程序:http://stackoverflow.com/questions/17196117/disable-vertical-sync-for-glxgears/29329265#29329265 - Ciro Santilli OurBigBook.com
glxgears不是一个真正的基准测试!它在所有现代图形硬件上完全受限于CPU性能! - Ruslan

gfxbench

Kishonti Ltd.开发的gfxbench被认为是业界的黄金标准。

您可以在https://gfxbench.com/linux-download/下载他们的免费基准测试版本。

然后运行他们的脚本:

sh gfxbench_gl-linux-qt-4.0.13+community_64bit.sh
./gfxbench_gl

Kishonti通过销售更专业的基准测试版本以及源代码(如果您购买了昂贵的许可证)来赚钱。

Youtube包含大多数高级基准测试的渲染,例如Car Chase:https://www.youtube.com/watch?v=kJ9FyMtNdV4

phoronix-test-suite

https://askubuntu.com/a/33841/52975提到过,但这里有更多详细信息。

在Ubuntu 16.10上:

sudo apt-get install phoronix-test-suite
phoronix-test-suite list-available-suites

这提供了套件ID、描述和类型。所以只需选择一个graphics套件,比如pts/mesapts == Phoronix Test Suite),然后运行它:
phoronix-test-suite run pts/mesa

PTS似乎是几个基准测试的前端。 pts/mesa下载并以全屏模式运行实际的FPS游戏,因此结果可能比较有代表性。
glmark2入门指南
https://askubuntu.com/a/194468/52975中提到了它,这里还有一些要点。安装:
sudo apt install glmark2
帮助显示了所有基准测试及其选项:
glmark2 -l
例如,要以1秒的持续时间而不是默认的10秒来运行基准测试terrain:
glmark2 -b terrain:duration=1

或者有多个选择:

glmark2 -b build:duration=1:model=bunny

每个测试在命令行上输出一个“glmark2 Score”行,例如在Ubuntu 23.04上:
=======================================================
    glmark2 2021.02
=======================================================
    OpenGL Information
    GL_VENDOR:     NVIDIA Corporation
    GL_RENDERER:   Quadro M1200/PCIe/SSE2
    GL_VERSION:    4.6.0 NVIDIA 515.105.01
=======================================================
[build] duration=1:model=bunny: FPS: 2780 FrameTime: 0.360 ms
=======================================================
                                  glmark2 Score: 2780 
=======================================================

根据https://github.com/glmark2/glmark2/issues/31,该数字仅仅是:
引用: 所有运行基准测试的FPS的平均值
因此我们很高兴地看到它不受屏幕刷新率的限制。
他们的源代码位于:https://github.com/glmark2/glmark2,许可证为GPL-3.0。

嗨 看看SPEC.org:
标准性能评估公司(SPEC)是一个非营利性组织,旨在建立、维护和认可一套适用于最新一代高性能计算机的标准化基准。SPEC开发基准套件,并审核并发布来自我们的成员组织和其他基准许可方提交的结果。

谢谢回答,但是我对这个问题无能为力。他们确实提供GPU测试,但是其他一些程序(比如Maya等)也可以做到。 - gsedej