Research idle cycle injection versus hotplug

Registered by Michael Turquette on 2011-06-08

This blueprint is covered by subissues of the epic https://cards.linaro.org/browse/CARD-805

Measure effectiveness of SMP CPUidle (without any forced idleness) versus algorithmic Hotplug Policy implementation versus Idle Cycle injection.

Blueprint information

Status:
Complete
Approver:
Amit Kucheria
Priority:
Low
Drafter:
Michael Turquette
Direction:
Approved
Assignee:
Daniel Lezcano
Definition:
Superseded
Series goal:
Accepted for trunk
Implementation:
Not started
Milestone target:
milestone icon backlog
Completed by
Serge Broslavsky on 2013-09-19

Related branches

Sprints

Whiteboard

These items will not be done as cpuoffline is not seen as a way to do power savings upstream.
[vincent-guittot] implement Ux500 support for CPUoffline: TODO
[amitdanielk] implement Samsung support for CPUoffline: TODO
[amitdanielk] analyze power savings with and without CPUoffline support: TODO

Idle injector info:
http://lwn.net/Articles/383368/
http://thread.gmane.org/gmane.linux.kernel/973551

Comparative analysis on SMP CPUidle versus SMP CPUidle + hotplug:
Compare power savings on VDD_MPU using some benchmarks
Compare power savings on ~VBAT using some benchmarks

The item "forward port idle cycle injector patches to linaro-2.6.39: was BLOCKED", but in reality it will never happen. Google has decided to drop these patches and not support them publicly.

[daniel-lezcano, 2013-01-15] Intel has posted a patch series for "Intel power clamp":
    * http://lwn.net/Articles/524668/
It is worth study the approach as it could fit our needs to 'sync' the cpus for idling a package.

[ototo, 2013-02-01] Moving unfinished items to 2013.02.

[daniel-lezcano, 2013-02-04] Study generic idle injection with the cpuidle driver to retrieve the cpuidle states.

[daniel-lezcano, 2013-03-12] As discussed at Connect with Amit, this is not a must-have right now, I changed the priority to undefined.

(?)

Work Items

Work items for 2011.07:
[mturquette] design cpuoffline framework: DONE
[mturquette] separate hotplug policy implementation from TI's cpufreq-hotplug governor: DONE
[mturquette] implement cpuoffline framework: DONE
[mturquette] implement OMAP4 support for cpuoffline framework: DONE
[mturquette] implement avg-load governor for cpuoffline framework: DONE
[mturquette] post cpuoffline patches to linux-pm list: DONE

Work items for 2011.08:
[mturquette] integrate review comments from list: DONE
[mturquette] Publish git tree with cpuoffline framework patches for integration: DONE
[mturquette] define relevant measurements to compare across implementations: DONE
[vincent-guittot] analyze power savings with and without CPUoffline support: DONE
[mturquette] compare "raw" SMP CPUidle on Panda with the separated hotplug policy; publish the results for further discussion: DONE

Work items for 2013.02:
[daniel-lezcano] study intel power clamp (idle injection) : DONE

Work items for 2013.03:
[daniel-lezcano] investigate with intel using the cpuidle driver instead of a probe function : TODO
[daniel-lezcano] find common code between ARM and Intel : TODO
[daniel-lezcano] write a idle injection for ARM : TODO

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.