Compiz frame rate decreases if application frame rates are too high (unthrottled)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Compiz |
Fix Released
|
High
|
Daniel van Vugt | ||
compiz (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
When a graphics app is rendering at a sensible frame rate close to the monitor refresh rate or within a couple hundred FPS, compiz keeps up and renders the screen perfectly smoothly. If however a graphics app is allowed to render unthrottled then compiz can slow down and its frame rate can halve.
A simple example, that works with intel graphics for me is glxgears. By default, the intel graphics driver enables sync to vblank, so glxgears only renders 60 FPS. And compiz can keep up perfectly. If however I allow glxgears to render as fast as possible:
env vblank_mode=0 glxgears
then glxgears reports 5500 FPS, and compiz (benchmark) slows to 30 FPS.
The same is true for OpenGL benchmarks and games. Such apps are typically designed to render as fast as possible. And even if they're not they often still will render unthrottled because many drivers disable sync to vblank by default (nouveau, fglrx, and more recently nvidia).
Related branches
- Sam Spilsbury: Approve
- Tim Penhey (community): Approve
-
Diff: 86 lines (+15/-3)5 files modifiedplugins/composite/src/privates.h (+3/-0)
plugins/composite/src/screen.cpp (+9/-0)
plugins/composite/src/window.cpp (+1/-1)
plugins/decor/src/decor.cpp (+1/-1)
plugins/opengl/src/texture.cpp (+1/-1)
- Sam Spilsbury: Approve
- Compiz Maintainers: Pending requested
-
Diff: 132 lines (+29/-6)7 files modifiedplugins/annotate/src/annotate.cpp (+1/-1)
plugins/composite/src/privates.h (+4/-0)
plugins/composite/src/screen.cpp (+19/-0)
plugins/composite/src/window.cpp (+1/-1)
plugins/copytex/src/copytex.cpp (+1/-1)
plugins/decor/src/decor.cpp (+2/-2)
plugins/opengl/src/texture.cpp (+1/-1)
Changed in compiz: | |
status: | Fix Committed → Fix Released |
Fix committed into lp:compiz at revision 3239