How to measure the performance of our GPU

Already KZKG ^ Gaara showed us how measure the performance of our hard drives or the CPU of our computers, and now I show you how to measure the performance of the GPU (aka Graphics Processor Unit), or Graphic Processing Unit in Spanish.

For this we can use two tools glmark2 y glx-gear, which is included in the package table-utils. 

GLX-Gear

GLX-Gear as I said before is part of the mesa-utils package and let's say that it is of the two options that I show today the best known or popular, however, it is not the best for that. Once we have installed the mesa-utils package we launch it by executing in a terminal:

$ glxgears

which will show us some cog wheels moving, something like this:

GLX-Gears

Meanwhile in the terminal it is throwing the statistics, which in my case were:

Running synchronized to the vertical refresh. The framerate should be approximately the same as the monitor refresh rate. 467 frames in 5.0 seconds = 93.200 FPS 385 frames in 5.0 seconds = 76.835 FPS 300 frames in 5.0 seconds = 59.873 FPS 406 frames in 5.0 seconds = 80.952 FPS 438 frames in 5.0 seconds = 87.493 FPS 399 frames in 5.0 seconds = 79.626 FPS 300 frames in 5.0 seconds = 59.871 FPS 300 frames in 5.0 seconds = 59.873 FPS 300 frames in 5.0 seconds = 59.869 FPS 300 frames in 5.0 seconds = 59.868 FPS 413 frames in 5.0 seconds = 82.424 FPS 324 frames in 5.0 seconds = 64.662 FPS

GL Mark 2

From what I was testing, it is much more complete than GLX-Gear and measures parameters such as buffer, construction, textures, lighting, shadows, terrain… etc. This tool was developed by the team of a distribution focused on ARM processors called Linaro.

To install it in Ubuntu and derivatives we just have to execute:

$ sudo apt-get install glmark2

and in the case of ArchLinux and derivatives we must do it from AUR:

$ yaourt -S glmark2

later we open a terminal and launch the test by typing:

$ glmark2

GLMark2 is showing us a series of sequences while it is printing the statistics on the console.

GLMark2

In my particular case, with an Intel integrated GPU it returned:

================================================= ===== glmark2 2014.03 ========================================= ============ OpenGL Information GL_VENDOR: Intel Open Source Technology Center GL_RENDERER: Intel DRI Table (R) Ivybridge Mobile GL_VERSION: 3.0 Table 10.6.1 ============= =========================================== [build] use-vbo = false: FPS: 640 FrameTime: 1.562 ms [build] use-vbo = true: FPS: 641 FrameTime: 1.560 ms [texture] texture-filter = nearest: FPS: 768 FrameTime: 1.302 ms [texture] texture-filter = linear: FPS: 786 FrameTime: 1.272 ms [texture] texture-filter = mipmap: FPS: 866 FrameTime: 1.155 ms [shading] shading = gouraud: FPS: 506 FrameTime: 1.976 ms [shading] shading = blinn-phong-inf: FPS: 536 FrameTime: 1.866 ms [shading] shading = phong: FPS: 496 FrameTime: 2.016 ms [shading] shading = cel: FPS: 525 FrameTime: 1.905 ms [bump] bump-render = high-poly: FPS: 226 FrameTime: 4.425 ms [bump] bump-render = normals: FPS: 915 FrameTime: 1.093 ms [bump] bump-render = height: FPS: 898 FrameT ime: 1.114 ms [effect2d] kernel = 0,1,0, 1, -4,1, 0,1,0 ;: FPS: 559 FrameTime: 1.789 ms [effect2d] kernel = 1,1,1,1,1 ; 1,1,1,1,1; 1,1,1,1,1 ;: FPS: 260 FrameTime: 3.846 ms [press] light = false: quads = 5: texture = false: FPS: 646 FrameTime: 1.548 ms [desktop] blur-radius = 5: effect = blur: passes = 1: separable = true: windows = 4: FPS: 188 FrameTime: 5.319 ms [desktop] effect = shadow: windows = 4: FPS: 365 FrameTime: 2.740 ms [buffer] columns = 200: interleave = false: update-dispersion = 0.9: update-fraction = 0.5: update-method = map: FPS: 363 FrameTime: 2.755 ms [buffer] columns = 200: interleave = false: update- dispersion = 0.9: update-fraction = 0.5: update-method = subdata: FPS: 498 FrameTime: 2.008 ms [buffer] columns = 200: interleave = true: update-dispersion = 0.9: update-fraction = 0.5: update-method = map: FPS: 385 FrameTime: 2.597 ms [ideas] speed = duration: FPS: 537 FrameTime: 1.862 ms [jellyfish]: FPS: 361 FrameTime: 2.770 ms [terrain]: FPS: 48 FrameTime: 20.833 ms [shadow]: FPS : 270 FrameTime: 3.704 ms [refract]: FPS: 73 FrameTime: 13.699 ms [conditionals] fragment-steps = 0: vertex-steps = 0: FPS: 750 FrameTime: 1.333 ms [conditionals] fragment-steps = 5: vertex-steps = 0: FPS: 800 FrameTime: 1.250 ms [conditionals] fragment- steps = 0: vertex-steps = 5: FPS: 774 FrameTime: 1.292 ms [function] fragment-complexity = low: fragment-steps = 5: FPS: 791 FrameTime: 1.264 ms [function] fragment-complexity = medium: fragment- steps = 5: FPS: 811 FrameTime: 1.233 ms [loop] fragment-loop = false: fragment-steps = 5: vertex-steps = 5: FPS: 794 FrameTime: 1.259 ms [loop] fragment-steps = 5: fragment- uniform = false: vertex-steps = 5: FPS: 798 FrameTime: 1.253 ms [loop] fragment-steps = 5: fragment-uniform = true: vertex-steps = 5: FPS: 764 FrameTime: 1.309 ms ===== ================================================= glmark2 Score: 564 ============================================= =========

Of course, I suppose that the higher the FPS (Frames per Seconds), the better chances we will have of playing games or watching videos in high resolutions, but I'm not very knowledgeable on the subject.

Other options to measure the performance of our GPU

Actually we have a third option, but it is to perform much more violent tests so to speak. For it we must download some tools that he offers us for free Unigine.


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.

  1.   AdrianArroyoStreet said

    Very well. Just a note, Linaro is not really a distribution. It is a project to improve Linux on ARM. Ubuntu, for example, is part of Linaro. The GCC that comes with Ubuntu actually puts Linaro in its version name.

  2.   Jorge said

    Good 😀

    You missed mentioning another tool: glxspheres, also part of the table-utils. I use it to measure my performance on my Nvidia Optimus 😀

  3.   Nonamed said

    a question, in glxgears fps, does having an ssd as root disk influence or has nothing to do with it?

    1.    Sli said

      Well I do not think it affects, we are measuring the performance of the GPU has nothing to do with the hard disk

  4.   carlesa25 said

    Hello: If you have more than one GPU, is it possible to see the performance of each one of them? In my case there are three NVIDIA.

  5.   niphosio said

    Unless you have the vsync property of the GPU enabled, then whatever GPU you have it will give you 60FPS

    1.    Anonymous said

      Well in xfce if I remove the screen panel the vsybc is deactivated and in my gpu it reaches 5362 fps

  6.   NaM3leSS said

    I will leave you a tip that has to do with the FPS in case it helps someone (I do not advise it having 2 GPUs (intel + Nvidia)) since for example with steam I had problems.

    It is about deactivating the vertical synchronization with which many FPS are gained; D
    and the desktop is super fluid!

    Well taken from the arch wiki https://wiki.archlinux.org/index.php/Intel_graphics
    I explain the matter:

    edit the intel file:

    vi /etc/X11/xorg.conf.d/20-intel.conf

    or another file in my case I made a manual one putting the option «TearFree».

    Section "Device" Identifier "Intel Graphics" Driver "intel" Option "TearFree" "true" <----- edit (TearFree) EndSection

    then create the file on home

    ~/.drirc

    and include the following:

    <device screen = "0" driver = "dri2"> <application name = "Default"> <option name = "vblank_mode" value = "0" /> </ application> </ device>

    then reboot and that's it!

    another thing not to forget optirun or primusrun for dedicated GPUs.

    Regards!

    1.    NaM3leSS said

      the .drirc file was not visible

      Maybe it's because of the tag issue, well it's on the arch wiki just in case.

  7.   Alvarin said

    Glxgears, having the vertical synchronization activated only measures the fps of the screen (that is, the refresh rate of the screen, about 60), to measure the performance of the graph, you have to deactivate the vertical synchronization, I think it is with :
    vblank_mode = 0 glxgears, which will make numbers much higher