Glxgears is not a Benchmark
glxgears is an OpenGL program that reports FPS (frames per second) numbers. However, it is a very limited 'test'. Unlike most modern 3D games, glxgears:
- has an extremely low vertex/polygon count
- does no texturing at all
- only simple, flat shading is used (except inside the hole in each gear is simple smooth shading)
- all vertex data is stored in a display list, so almost nothing passes between host CPU and video card once rendering is started. This mostly implies video card fill rate is limited. But, see next point.
- the default window size is 300x300, a large part of which is not even rendered into, so it's not even a good fill rate test
- the entire render step consists of only 21 OpenGL functions calls, of which only 6 are unique. This is not a very good OpenGL API stress test. Something like glean would be better.
So to summarize, glxgears only tests a small part of what you typically see in a 3D game. You could have glxgears FPS performance increase, but your 3D game performance decrease. Likewise, you could have glxgears performance decrease and your 3D game performance increase.
(Information taken from posts by Septor and dataangel - Thanks!).
Hello! ekkfeag interesting ekkfeag site! I'm really like it! Very, very ekkfeag good!
Very nice site!
Debunking the Myth (glxgears is a benchmark)
glxgears is not a benchmark.
You can use it to show that DRI works, but it does not even test that well. There's glxinfo or your Xorg.0.log to tell you if DRI was enabled as well.
And for the people who're wondering why CPU usage is 100%, while glxgears seems to be giving quite a lot of fps: yes, this is normal, because it tries to get the max number of frames per second. Checking CPU usage for glxgears is not a way to see if direct rendering works.
Check fglrx install status
# fglrxinfo # glxinfo # vi /var/log/Xorg.0.log # dmesg
Use any of those commands to view the status of the fglrx module. Did it initilize correctly? Did it load DRI? Look in those files. If glxinfo reports direct rendering as "no" or the OpenGL renderer as "Mesa", then you are currently using software (un-accelerated) rendering.
- Gtkperf - offered by any major distribution's repository.