SCHED_MC Full Idle support for Android
Tony Mansson (mansson)
Android Platform Team
Supported by Vincent Guittot and Amit ...
Description
● Optimizing multicore scheduling through sched_mc is
a core topic for Linaro's Power Management WG.
However, ...
Clarification of scope
● Sched_mc depends on cpuidle for visible benefits.
Therefore we only consider systems with both
sc...
Goals
● Ideas and proposals for deliverables that can
demonstrate the benefits of sched_mc and cpuidle on
Android and Ubun...
Such as...
● Libraries
● Services (daemons)
● Apps
● Interactive or scriptable ways to change and evaluate
different setti...
cpuidle status
● Freescale: git://git.linaro.org/people/rob_lee/imx_cpuidle.git imx_mx5_mx51
● TI: There is a cpuidle impl...
sched_mc status
● PMWG are polishing sched_mc for upstreaming but it
is not delivered to platforms.
sched_mc status
● PMWG are polishing sched_mc for upstreaming but it
is not delivered to platforms.
sched_mc interface
/sys/devices/system/cpu/
contains a number of tunable settings.
● sched_mc_power_savings. [0..2]
Cpuidle interface
(read-only)
See http://processors.wiki.ti.com/index.php/File:Cpuidle.png
Question: are governors modules...
PM Quality Of Service Interface.
This interface provides a kernel and user mode interface
for registering
performance expe...
Example 1:
● ?
Example 2: Powertutor
Powertutor
● Developed by University of Michigan and
Northwestern University in the “Empathic Systems”
Project
● Available...
Log data format
● time 1319909554393
● localtime_offset 7200000
● model dream
● associate 10047 android.uid.calendar:10047...
Proposal:
● Reinstate log file transfer (now stubbed)
● Provide remote interface for controls
● Make available in Linaro M...
Upcoming SlideShare
Loading in …5
×

Q4.11: Sched_mc full idle support for Android

285
-1

Published on

Resource: Q4.11
Name: Sched_mc full idle support for Android
Date: 28-11-2011
Speaker: Tony Mansson

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
285
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Q4.11: Sched_mc full idle support for Android

  1. 1. SCHED_MC Full Idle support for Android Tony Mansson (mansson) Android Platform Team Supported by Vincent Guittot and Amit Kucheria Power Management Working Group
  2. 2. Description ● Optimizing multicore scheduling through sched_mc is a core topic for Linaro's Power Management WG. However, to prove its benefit, integration into a full UI stack (platform) is necessary. ● We are the Android team, but... alignment with the Developer Platform Team is desirable..
  3. 3. Clarification of scope ● Sched_mc depends on cpuidle for visible benefits. Therefore we only consider systems with both sched_mc and cpuidle. ● Today we talk about the view from user space.
  4. 4. Goals ● Ideas and proposals for deliverables that can demonstrate the benefits of sched_mc and cpuidle on Android and Ubuntu. ● Some good proposals selected as backlog items.
  5. 5. Such as... ● Libraries ● Services (daemons) ● Apps ● Interactive or scriptable ways to change and evaluate different settings ● Use cases ● Test cases ● A deeper understanding of the subject.
  6. 6. cpuidle status ● Freescale: git://git.linaro.org/people/rob_lee/imx_cpuidle.git imx_mx5_mx51 ● TI: There is a cpuidle implementation for Pandaboard, git://gitorious.org/omap-sw-develoment/linux-omap-dev.git by Kevin Hilman, the OMAP power management maintainer. ● Samsung: git://git.linaro.org/people/amitdanielk/linux.git samsung_cpuidle_l2_retention. ● But: Russel King rejects all these and wants a common ARM implementation?
  7. 7. sched_mc status ● PMWG are polishing sched_mc for upstreaming but it is not delivered to platforms.
  8. 8. sched_mc status ● PMWG are polishing sched_mc for upstreaming but it is not delivered to platforms.
  9. 9. sched_mc interface /sys/devices/system/cpu/ contains a number of tunable settings. ● sched_mc_power_savings. [0..2]
  10. 10. Cpuidle interface (read-only) See http://processors.wiki.ti.com/index.php/File:Cpuidle.png Question: are governors modules? => runime replacement. ● /sys/devices/system/cpu/cpuidle ● /sys/devices/system/cpu/cpu<x>/cpuidle/
  11. 11. PM Quality Of Service Interface. This interface provides a kernel and user mode interface for registering performance expectations by drivers, subsystems and user space applications on one of the parameters. Two different PM QoS frameworks are available: 1. PM QoS classes for cpu_dma_latency, network_latency, network_throughput.
  12. 12. Example 1: ● ?
  13. 13. Example 2: Powertutor
  14. 14. Powertutor ● Developed by University of Michigan and Northwestern University in the “Empathic Systems” Project ● Available at google Market ● Logs user behavior ● Sends data back home from all users ● Open source
  15. 15. Log data format ● time 1319909554393 ● localtime_offset 7200000 ● model dream ● associate 10047 android.uid.calendar:10047@10 ● associate 10165 com.radioactiveyak.earthquake@22 ● associate 10104 com.android.inputmethod.norwegian@15 ● begin 1 ● total-power 620 ● LCD 533 ● LCD-brightness 102 ● LCD-screen-on true ● LCD-10132 533 ● CPU 87 ● CPU-sys 26 ● CPU-usr 0
  16. 16. Proposal: ● Reinstate log file transfer (now stubbed) ● Provide remote interface for controls ● Make available in Linaro Market ● Collect real usage data for different governor or other settings ● Create realistic LAVA test suite ● Use log as benchmark for PM improvements
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×