[GLES] GLWindow::glDrawTexture is called at least 5X more often in gles2 compared to trunk

Bug #1029806 reported by Daniel van Vugt
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Compiz
Fix Released
High
Daniel van Vugt

Bug Description

Comparing relative numbers of calls between gles2 and trunk, I find:
   # calls to GLWindow::glDraw relative to GLScreen::glPaintOutput is unchanged.
but
   # calls to GLWindow::glDrawTexture relative to anything else is at least 5 times higher in gles2.

This excessive calling of glDrawTexture appears to be the main cause of compiz using more CPU to render fewer frames in gles2 compared to trunk.

Looking at the gles2 diff, it's apparent lots of calls to glDrawTexture used to be conditional inside if statements. They are no longer conditional.

This may explain why the gles2 branch often seems so much slower than trunk.

Tags: gles
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

The main locations where the number of calls to GLWindow::glDrawTexture has increased are:

1. DecorWindow::glDecorate
2. GLWindow::glDraw

While these functions are called with the same frequency as in trunk, they are calling glDrawTexture MUCH more often in gles2 than in trunk.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Fix committed to gles2 at revision 3299.

Changed in compiz:
status: Triaged → Fix Committed
Changed in compiz:
milestone: 0.9.8.0 → none
Changed in compiz:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.