Unity8 wakes up the CPU continuously at around 5Hz on a phone
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
The Ubuntu Power Consumption Project |
New
|
Undecided
|
Unassigned | ||
qtmir (Ubuntu) |
Triaged
|
High
|
Unassigned | ||
unity8 (Ubuntu) |
New
|
High
|
Unassigned |
Bug Description
top reports the unity8 process is consuming about 1% CPU even when the phone is idle (screen on):
11688 phablet 20 0 482184 101352 44872 S 1.0 5.4 0:37.10 unity8
This makes unity8 the top consumer of CPU. 1% on modern CPUs like you find in phones is actually a very large amount of work going on (~10 million clock ticks spent executing instructions per second on a 1GHz core).
$ system-image-cli -i
current build number: 272
device name: mako
channel: ubuntu-
last update: 2015-07-29 05:53:01
version version: 272
version ubuntu: 20150729
version device: 20150708
version custom: 20150729
Running eventstat shows this CPU time is being used in 5 events per second:
Event/s PID Task Init Function Callback
36.36 0 [swapper/0] hrtimer_
5.05 11688 unity8 hrtimer_
So it sounds like QtMir's frame dropper is the culprit.
Related branches
- Gerry Boland (community): Approve
- PS Jenkins bot (community): Needs Fixing (continuous-integration)
-
Diff: 15 lines (+6/-0)1 file modifiedsrc/modules/Unity/Application/mirsurface.cpp (+6/-0)
description: | updated |
tags: | added: power-management |
tags: | added: phone |
tags: |
added: phablet removed: phone |
Changed in qtmir: | |
status: | New → Confirmed |
Changed in qtmir (Ubuntu): | |
status: | New → Confirmed |
status: | Confirmed → In Progress |
Changed in qtmir: | |
status: | Confirmed → In Progress |
Changed in qtmir (Ubuntu): | |
importance: | Undecided → High |
Changed in qtmir: | |
importance: | Undecided → Medium |
Changed in qtmir (Ubuntu): | |
assignee: | nobody → Daniel van Vugt (vanvugt) |
Changed in qtmir: | |
assignee: | nobody → Daniel van Vugt (vanvugt) |
Changed in qtmir (Ubuntu): | |
status: | Fix Released → Triaged |
tags: | added: performance |
no longer affects: | qtmir |
My attached branch only solves half the problem, so this bug needs to stay open till the other half is investigated.