Posts: 31
Joined: Tue May 08, 2012 9:17 pm

Re: GL performance

Sat May 12, 2012 12:06 am


I guess this topic has already many flavours (i.e. xorg, opengl), however I'm interested in the performance people are getting when running glxgears (with no arguments).

On archlinux one needs mesa-demos package, on debian.. dunno

On my archlinux it is around 27.2 FPS...

What are the other results? I guess the huge benefit will be once someone manages to get the right drivers/access to the GPU but from my understanding this is not currently possible and all the results should be around 27 FPS.



Posts: 248
Joined: Tue Jan 24, 2012 4:54 am

Re: GL performance

Sat May 12, 2012 1:05 am

Why would anyone be interested in glxgears? It is software rendering.

All the action is happening with OpenGL ES.

Pick a shader demo from or and if it will run at all I can tell you how many frames at full hd running on the Pi.

Posts: 220
Joined: Tue Nov 29, 2011 9:26 pm

Re: GL performance

Sat May 12, 2012 9:36 am

glxgears is a lousy benchmark.

Read this if you'"re unconvinced..

That link is the number one Google hit when you type glxgears into the search prompt.

User avatar
Posts: 21
Joined: Mon May 21, 2012 11:14 am
Location: Rotherham, England
Contact: Website

Re: GL performance

Mon May 21, 2012 11:28 am

The problem with running glxgears is that it'll be using the unaccelerated X driver so it will be incredibly slow. A better benchmark would be to compile and run the sample hello_triangle application in /opt/vc/src/hello_pi as that uses the bcm_host lib and will therefore use accelerated graphics.

User avatar
Posts: 235
Joined: Fri Jun 01, 2012 5:12 pm

Re: GL performance

Sun Jun 10, 2012 9:04 pm

To answer the question, The GPU is showing promise. Quake3 60 FPS @1080p! That is impressive! But I am finding some unexpected bottle necks so I expect with some driver updates it will get quicker.

In short, it punches well above it's weight.

Posts: 141
Joined: Sun Feb 26, 2012 6:58 pm
Location: Germany
Contact: Website

Re: GL performance

Mon Jun 11, 2012 8:04 am

Any benchmark is good as long as you know what exactly you are measuring.

As people already said, glxgears is software-ony and the X driver isn't optimized, either. So this benchmarks is some kind of a simple real world benchmark for completely unaccelerated 3D.

Low-level benchmarks may reveal the power of the hardware and quality of drivers, giving you an idea of what is theoretically possible. But user acceptance is based rather on real world performance.

Posts: 135
Joined: Thu May 31, 2012 1:05 pm

Re: GL performance

Mon Jun 11, 2012 8:14 am

I'm getting really good performance using my own library. I do matrix calculations on the CPU and then send to a shader on the GPU, here is a video ... ature=plcp showing it in action with very little code optimisation (I'm basically trying to break the gpu at present to see what the limits are)

These are the full Stanford models so very high poly, the Buddha and dragon are 100000 triangles each, the bunny 69666 and the troll 36512 the rest are created procedurally and each one is sent to the GPU as a Vertex Buffer Object. In this case I've allocated the max GPU memory (128 / 128 CPU/GPU split). The shader is doing basic per vertex Phong model with one static light.

I will release the code later this week just need to add texture support.


User avatar
Jim Manley
Posts: 1600
Joined: Thu Feb 23, 2012 8:41 pm
Location: SillyCon Valley, California, and Powell, Wyoming, USA, plus The Universe
Contact: Website

Re: GL performance

Wed Jul 04, 2012 6:24 am

Hi Jon,

I'm really glad to see your work and am following it. Have you gotten a chance to finish up the Pi port of your code to include the texture support per your last post, above?

The best things in life aren't things ... but, a Pi comes pretty darned close! :D
"Education is not the filling of a pail, but the lighting of a fire." -- W.B. Yeats
In theory, theory & practice are the same - in practice, they aren't!!!

Posts: 135
Joined: Thu May 31, 2012 1:05 pm

Re: GL performance

Wed Jul 04, 2012 6:31 am

yes texture support is now in the lib, it uses ImageMagick for loading (which is in the apt repo). The latest code is now available on google code (with a demo of loading an textured model .obj in the downloads section)

The only thing I need to complete now is the text rendering (I decided to use freetype for this) It does the basic glyph loading but the font metric / layouts are not quite correct, will work on this soon once all the exam marking / boards are over at the end of this week ;-)

Return to “OpenGLES”