[Mesa-dev] R600 tiling halves the frame rate

Tzvetan Mikov tmikov at jupiter.com
Sun Oct 28 12:50:31 PDT 2012


On 10/27/2012 07:37 PM, Matt Turner wrote:
>>   for ( float angle = 0; ; angle += 0.5 )
>>   {
>>     if (angle >= 360)
>>       angle -= 360;
>>
>>     display( angle );
>>     glFlush();
>>     eglSwapBuffers( dpy, screenSurf );
> 
> Do you actually need glFlush()?
> 
> It might be a case of
> http://www.opengl.org/wiki/Common_Mistakes#glFinish_and_glFlush

You are right, I don't really need the flush (it is a leftover from
previous tests) but it has absolutely no effect on the performance
either way.

What is the theoretical performance that we should be getting out of
these chips? I am measuring what I think are extremely low numbers, with
or without tiling, so I must be doing something very wrong, or my
expectations are unreasonably high.

A simple test with just:
  glClear( GL_COLOR_BUFFER_BIT );
  eglSwapBuffers()
runs only at 232 FPS!

Going further, a loop with only "eglSwapBuffers()", no rendering
whatsoever, runs with only 350 FPS! I was expecting FPS in the
thousands... :-)

Could this be a problem with the page flipping? eglSwapBuffers() itself
does little more than a drm call.

regards,
Tzvetan




More information about the mesa-dev mailing list