Using cgroups/cpusets to save power

Registered by Amit Kucheria

Alternative to sched_mc and hotplug

Blueprint information

Status:
Complete
Approver:
Daniel Lezcano
Priority:
High
Drafter:
Daniel Lezcano
Direction:
Approved
Assignee:
Daniel Lezcano
Definition:
Approved
Series goal:
None
Implementation:
Implemented
Milestone target:
None
Started by
Daniel Lezcano
Completed by
Daniel Lezcano

Related branches

Sprints

Whiteboard

Discussion results:
* identify all interrupts waking up a cpu
  => https://wiki.linaro.org/WorkingGroups/PowerManagement/Doc/WakeUpSources
* reduce the number of interrupt
  * timer irq affinity
  => https://blueprints.launchpad.net/linaro-power-kernel/+spec/cpuidle-dynamic-timer-irq-affinity
  * timer and workqueue migration to non idle cpus
  => https://blueprints.launchpad.net/linaro-big-little-system/+spec/timer-workqueue-cpu-quiescent
* solution is suitable when:
   * cpuset groups cpus per cluster
   * cpuidle supports deep idle state (powerdown)
* solution is suitable for b.L to:
   * move the policy in the userspace
   * low latency to switch the cluster is not critical
* a prototype has been made
* a study has been done:
   => elinux.org/images/a/a3/Lcjp2013_nakagawa.pdf‎

(?)

Work Items