Glmark2
glmark2 is a rather simple free OpenGL ES 2.0 graphics performance benchmark tool for GNU/Linux. It has a variety of "scenes" it renders in order to give you a broad ball-park idea of your graphics performance. It really does not tell you very much at all on modern computers.
Contents
Getting and running glmark2
You can install it with dnf -y install glmark2
on Fedora and by clicking here to install on Ubuntu.
glmark2 is best started from a terminal because that's where it outputs the results. It will by default render to a 800x600 window. You may want to use the -s
argument to change that to something like glmark2 -s 1920x1050
glmark2 will, after drawing simple animations on the screen while never loading a GPU like the RX570 more than 25% at 1920x1080, have filled the terminal with some results which do not really tell you anything. The frames-per-seconds numbers will be in the many hundreds. glmark2 does produce a "glmark2 Score" but this will also not tell you much. For example, a RX 570 at 1920x1050 scores 528 and a Intel HD 5500 integrated GPU scores 427. While somewhat apart they are much closer than they are in more meaningful benchmarks.
The reason glmark2's scores for low-end and high-end GPUs are relatively close has to do with how much, or little, stress it places on the GPU. A Intel iGPU at 90% load does not perform all that differently from a RX 570 at 25% of it's capacity. There appears to be a limitation in either glmark2 or Mesa which limits GPU utilization above a certain FPS.
Other variants
There is a variant of glmark2 called vkmark. It is a Vulkan implementation of the exact same benchmark. It has the exact same tests and limitations as glmark2.
Review and conclusion
Overall, it's a pretty useless benchmark tool. A better way to do benchmarks would be to HOWTO See A Games Frames Per Second And Other Data In A HUD Overlay.
There are, sadly, no good free software alternatives but there are some way more advanced proprietary freeware alternatives like UNIGINE Superposition and [[Basemark GPU] which run on GNU/Linux. Tests like that those produce useful and comparable and meaningful results. glmark2 simply doesn't.
Example results
RX570
======================================================= glmark2 2017.07 ======================================================= OpenGL Information GL_VENDOR: X.Org GL_RENDERER: Radeon RX 570 Series (POLARIS10, DRM 3.27.0, 5.0.9-Jinsol, LLVM 8.0.0) GL_VERSION: 4.5 (Compatibility Profile) Mesa 19.0.3 ======================================================= [build] use-vbo=false: FPS: 509 FrameTime: 1.965 ms [build] use-vbo=true: FPS: 560 FrameTime: 1.786 ms [texture] texture-filter=nearest: FPS: 551 FrameTime: 1.815 ms [texture] texture-filter=linear: FPS: 549 FrameTime: 1.821 ms [texture] texture-filter=mipmap: FPS: 578 FrameTime: 1.730 ms [shading] shading=gouraud: FPS: 543 FrameTime: 1.842 ms [shading] shading=blinn-phong-inf: FPS: 593 FrameTime: 1.686 ms [shading] shading=phong: FPS: 589 FrameTime: 1.698 ms [shading] shading=cel: FPS: 594 FrameTime: 1.684 ms [bump] bump-render=high-poly: FPS: 573 FrameTime: 1.745 ms [bump] bump-render=normals: FPS: 576 FrameTime: 1.736 ms [bump] bump-render=height: FPS: 539 FrameTime: 1.855 ms [effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 556 FrameTime: 1.799 ms [effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 564 FrameTime: 1.773 ms [pulsar] light=false:quads=5:texture=false: FPS: 520 FrameTime: 1.923 ms [desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 537 FrameTime: 1.862 ms [desktop] effect=shadow:windows=4: FPS: 561 FrameTime: 1.783 ms [buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 407 FrameTime: 2.457 ms [buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 463 FrameTime: 2.160 ms [buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 409 FrameTime: 2.445 ms [ideas] speed=duration: FPS: 505 FrameTime: 1.980 ms [jellyfish] <default>: FPS: 561 FrameTime: 1.783 ms [terrain] <default>: FPS: 464 FrameTime: 2.155 ms [shadow] <default>: FPS: 602 FrameTime: 1.661 ms [refract] <default>: FPS: 584 FrameTime: 1.712 ms [conditionals] fragment-steps=0:vertex-steps=0: FPS: 613 FrameTime: 1.631 ms [conditionals] fragment-steps=5:vertex-steps=0: FPS: 607 FrameTime: 1.647 ms [conditionals] fragment-steps=0:vertex-steps=5: FPS: 588 FrameTime: 1.701 ms [function] fragment-complexity=low:fragment-steps=5: FPS: 560 FrameTime: 1.786 ms [function] fragment-complexity=medium:fragment-steps=5: FPS: 579 FrameTime: 1.727 ms [loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 525 FrameTime: 1.905 ms [loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 565 FrameTime: 1.770 ms [loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 567 FrameTime: 1.764 ms ======================================================= glmark2 Score: 548 =======================================================
What, if anything, these numbers mean in terms of performance is unclear.
Intel(R) HD Graphics 5500 (Broadwell GT2)
======================================================= glmark2 2017.07 ======================================================= OpenGL Information GL_VENDOR: Intel Open Source Technology Center GL_RENDERER: Mesa DRI Intel(R) HD Graphics 5500 (Broadwell GT2) GL_VERSION: 3.0 Mesa 19.0.3 ======================================================= [build] use-vbo=false: FPS: 542 FrameTime: 1.845 ms [build] use-vbo=true: FPS: 550 FrameTime: 1.818 ms [texture] texture-filter=nearest: FPS: 541 FrameTime: 1.848 ms [texture] texture-filter=linear: FPS: 541 FrameTime: 1.848 ms [texture] texture-filter=mipmap: FPS: 544 FrameTime: 1.838 ms [shading] shading=gouraud: FPS: 487 FrameTime: 2.053 ms [shading] shading=blinn-phong-inf: FPS: 486 FrameTime: 2.058 ms [shading] shading=phong: FPS: 488 FrameTime: 2.049 ms [shading] shading=cel: FPS: 476 FrameTime: 2.101 ms [bump] bump-render=high-poly: FPS: 483 FrameTime: 2.070 ms [bump] bump-render=normals: FPS: 544 FrameTime: 1.838 ms [bump] bump-render=height: FPS: 539 FrameTime: 1.855 ms [effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 440 FrameTime: 2.273 ms [effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 219 FrameTime: 4.566 ms [pulsar] light=false:quads=5:texture=false: FPS: 484 FrameTime: 2.066 ms [desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 228 FrameTime: 4.386 ms [desktop] effect=shadow:windows=4: FPS: 318 FrameTime: 3.145 ms [buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 355 FrameTime: 2.817 ms [buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 322 FrameTime: 3.106 ms [buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 386 FrameTime: 2.591 ms [ideas] speed=duration: FPS: 478 FrameTime: 2.092 ms [jellyfish] <default>: FPS: 391 FrameTime: 2.558 ms [terrain] <default>: FPS: 60 FrameTime: 16.667 ms [shadow] <default>: FPS: 195 FrameTime: 5.128 ms [refract] <default>: FPS: 94 FrameTime: 10.638 ms [conditionals] fragment-steps=0:vertex-steps=0: FPS: 499 FrameTime: 2.004 ms [conditionals] fragment-steps=5:vertex-steps=0: FPS: 489 FrameTime: 2.045 ms [conditionals] fragment-steps=0:vertex-steps=5: FPS: 489 FrameTime: 2.045 ms [function] fragment-complexity=low:fragment-steps=5: FPS: 491 FrameTime: 2.037 ms [function] fragment-complexity=medium:fragment-steps=5: FPS: 490 FrameTime: 2.041 ms [loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 491 FrameTime: 2.037 ms [loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 490 FrameTime: 2.041 ms [loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 490 FrameTime: 2.041 ms ======================================================= glmark2 Score: 427 =======================================================<
Alternatives
- vkmark is a Vulkan port of glmark2. It has the same limitations as glmark: It doesn't actually place any big load on the GPU. But it does do the same benchmark glmark2 does using Vulkan.
- Basemark GPU and UNIGINE Superposition are proprietary freeware programs that work on Linux (And Windows).
Enable comment auto-refresher
Anonymous user #1
Permalink |
Anonymous user #2
Permalink |
Anonymous user #3
Permalink |