sched: per-entity load-tracking
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest16 patches 37 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/16 | sched: track the runnable average on a per-task entitiy basisinclude/ kernel/ kernel/ +1 more | +150 | 5 replies | |
| 2/16 | sched: maintain per-rq runnable averageskernel/ kernel/ kernel/ | +26 | 4 replies | |
| 3/16 | sched: aggregate load contributed by task entities on parenting cfs_rqinclude/ kernel/ kernel/ +1 more | +60 | 1 reply | |
| 4/16 | sched: maintain the load contribution of blocked entitiesinclude/ kernel/ kernel/ +2 more | +118 | 1 reply | |
| 5/16 | sched: add an rq migration call-back to sched_classinclude/ kernel/ kernel/ | +15 | 1 reply | |
| 6/16 | sched: account for blocked load waking back upkernel/ kernel/ | +78 | 2 replies | |
| 7/16 | sched: aggregate total task_group loadkernel/ kernel/ kernel/ | +30 | 1 reply | |
| 8/16 | sched: compute load contribution by a group entitykernel/ | +27 | 1 reply | |
| 9/16 | sched: normalize tg load contributions against runnable timekernel/ kernel/ kernel/ | +62 | 1 reply | |
| 10/16 | sched: maintain runnable averages across throttled periodskernel/ kernel/ | +42 | 1 reply | |
| 11/16 | sched: replace update_shares weight distribution with per-entity computationkernel/ kernel/ kernel/ | +34 | 4 replies | |
| 12/16 | sched: refactor update_shares_cpu() -> update_blocked_avgs()kernel/ | +23 | 1 reply | |
| 13/16 | sched: update_cfs_shares at period edgekernel/ | +10 | 3 replies | |
| 14/16 | sched: make __update_entity_runnable_avg() fastkernel/ | +99 | 3 replies | |
| 15/16 | sched: implement usage trackinginclude/ kernel/ kernel/ +1 more | +34 | 1 reply | |
| 16/16 | sched: introduce temporary FAIR_GROUP_SCHED dependency for load-trackinginclude/ kernel/ kernel/ +1 more | +32 | 1 reply |
Reviews trailers per patch
All 16 patches have a Reviewed-by or Acked-by.
| Patch | Ben Segall | Paul Turner |
|---|---|---|
| 1/16 | R-b R-b | |
| 2/16 | R-b R-b | |
| 3/16 | R-b R-b | |
| 4/16 | R-b R-b | |
| 5/16 | R-b R-b | |
| 6/16 | R-b R-b | |
| 7/16 | R-b R-b | |
| 8/16 | R-b R-b | |
| 9/16 | R-b R-b | |
| 10/16 | R-b R-b | |
| 11/16 | R-b R-b | |
| 12/16 | R-b R-b | |
| 13/16 | R-b R-b | |
| 14/16 | R-b R-b | |
| 15/16 | R-b | |
| 16/16 | R-b R-b |
Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.
Cover letter [patch 00/16] sched: per-entity load-tracking
Hi all,
Please find attached the latest version for CFS load-tracking.
It implements load-tracking on a per-sched_entity (currently SCHED_NORMAL, but could be extended to RT as well) basis. This results in a bottom-up load-computation in which entities contribute to their parents' load, as opposed to the current top-down where the parent averages its children. In particular this allows us to correctly migrate load with their accompanying entities and provides the necessary inputs for intelligent load-balancing and power-management.
We've been running this internally for some time now and modulo any gremlins from rebasing it, I think things have been shaken out and we're touching mergeable state.
Special thanks to Namhyung Kim and Peter Zijlstra for comments on the last round series.
For more background and prior discussion please review the previous posting:
https://lkml.org/lkml/2012/6/27/644
- Paul