Merge lp:~vanvugt/compiz/fix-1086779 into lp:compiz/0.9.9

Proposed by Daniel van Vugt
Status: Merged
Approved by: Daniel van Vugt
Approved revision: 3501
Merged at revision: 3508
Proposed branch: lp:~vanvugt/compiz/fix-1086779
Merge into: lp:compiz/0.9.9
Diff against target: 22 lines (+0/-5)
1 file modified
plugins/opengl/src/screen.cpp (+0/-5)
To merge this branch: bzr merge lp:~vanvugt/compiz/fix-1086779
Reviewer Review Type Date Requested Status
Sam Spilsbury Approve
PS Jenkins bot (community) continuous-integration Approve
Review via email: mp+138138@code.launchpad.net

Commit message

Remove calls to eglWaitGL which are likely to hinder performance on GLES/ARM
platforms. The calls seem to be pointless and have a significant potential
impact on performance. Also remove XFlush in the same location, apparently
pointless.
(LP: #1086779)

Description of the change

In case you're wondering, the calls to eglSwapBuffers and eglPostSubBufferNV ahead of the deleted code both do an implicit glFlush already.

The difference is that eglWaitGL is equivalent to a glFinish, which is completely synchronous and usually has a massive impact on performance. It will prevent the CPU and GPU from being able to operate in parallel.

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Sam Spilsbury (smspillaz) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'plugins/opengl/src/screen.cpp'
2--- plugins/opengl/src/screen.cpp 2012-11-14 10:17:09 +0000
3+++ plugins/opengl/src/screen.cpp 2012-12-05 13:00:35 +0000
4@@ -1882,8 +1882,6 @@
5 EGLDoubleBuffer::swap () const
6 {
7 eglSwapBuffers (eglGetDisplay (mDpy), mSurface);
8- eglWaitGL ();
9- XFlush (mDpy);
10 }
11
12 bool
13@@ -1908,9 +1906,6 @@
14 r.width (),
15 r.height ());
16 }
17-
18- eglWaitGL ();
19- XFlush (screen->dpy ());
20 }
21
22 bool

Subscribers

People subscribed via source and target branches