Merge lp:~vanvugt/qtmir/deepsleep into lp:qtmir

Proposed by Daniel van Vugt
Status: Merged
Approved by: Gerry Boland
Approved revision: 369
Merged at revision: 372
Proposed branch: lp:~vanvugt/qtmir/deepsleep
Merge into: lp:qtmir
Diff against target: 15 lines (+6/-0)
1 file modified
src/modules/Unity/Application/mirsurface.cpp (+6/-0)
To merge this branch: bzr merge lp:~vanvugt/qtmir/deepsleep
Reviewer Review Type Date Requested Status
Gerry Boland (community) Approve
PS Jenkins bot (community) continuous-integration Needs Fixing
Review via email: mp+269487@code.launchpad.net

Commit message

Stop waking up every 200ms if there's nothing to wake up for.
It's just wasting battery.

This solves at least half of LP: #1479250. Although the regular
wakeup problem is solved by this, Unity8 continues to use noticeable
CPU while idle (obviously in much less frequent intervals now).

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
lp:~vanvugt/qtmir/deepsleep updated
368. By Daniel van Vugt

Merge latest trunk and fix massive conflicts :(

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
lp:~vanvugt/qtmir/deepsleep updated
369. By Daniel van Vugt

Ping Jenkins

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
Gerry Boland (gerboland) wrote :

Makes sense, and I am not seeing any visual impact. Approved

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/modules/Unity/Application/mirsurface.cpp'
2--- src/modules/Unity/Application/mirsurface.cpp 2015-08-26 11:38:50 +0000
3+++ src/modules/Unity/Application/mirsurface.cpp 2015-09-08 06:12:34 +0000
4@@ -280,6 +280,12 @@
5 << "buffer dropped."
6 << framesPending-1
7 << "left.";
8+ } else {
9+ // The client can't possibly be blocked in swap buffers if the
10+ // queue is empty. So we can safely enter deep sleep now. If the
11+ // client provides any new frames, the timer will get restarted
12+ // via scheduleTextureUpdate()...
13+ m_frameDropperTimer.stop();
14 }
15 }
16

Subscribers

People subscribed via source and target branches