Peter Zijlstra
9763b67fb9
sched, cgroup: Optimize load_balance_fair()
...
Use for_each_leaf_cfs_rq() instead of list_for_each_entry_rcu(), this
achieves that load_balance_fair() only iterates those task_groups that
actually have tasks on busiest, and that we iterate bottom-up, trying to
move light groups before the heavier ones.
No idea if it will actually work out to be beneficial in practice, does
anybody have a cgroup workload that might show a difference one way or
the other?
[ Also move update_h_load to sched_fair.c, loosing #ifdef-ery ]
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Reviewed-by: Paul Turner <pjt@google.com>
Link: http://lkml.kernel.org/r/1310557009.2586.28.camel@twins
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2011-07-21 18:01:46 +02:00
..
2011-03-31 11:26:23 -03:00
2011-06-04 12:13:06 +02:00
2011-06-15 20:04:01 -07:00
2011-07-07 16:02:26 +00:00
2011-07-06 20:15:23 +02:00
2011-06-21 16:32:28 -07:00
2011-06-09 08:42:15 -04:00
2011-03-31 11:26:23 -03:00
2011-03-14 09:15:23 -04:00
2011-03-03 10:55:40 -08:00
2011-03-03 10:55:40 -08:00
2011-04-27 15:11:03 +02:00
2011-03-23 19:46:28 -07:00
2011-05-19 18:51:57 +10:00
2011-05-26 17:12:34 -07:00
2011-05-26 17:12:34 -07:00
2011-05-25 15:35:32 -07:00
2011-03-31 11:26:23 -03:00
2011-05-28 17:02:57 +02:00
2011-03-23 19:47:19 -07:00
2011-05-27 10:25:02 -07:00
2011-06-15 20:04:01 -07:00
2011-05-20 08:56:56 +02:00
2011-05-29 11:32:28 -07:00
2011-05-17 23:19:17 +02:00
2011-03-23 19:47:08 -07:00
2011-04-15 16:34:32 +02:00
2011-03-23 19:47:08 -07:00
2011-05-25 15:31:58 -07:00
2011-04-28 09:13:17 +02:00
2011-06-29 09:59:17 -04:00
2011-03-25 17:52:22 -07:00
2011-04-10 17:01:05 +02:00
2011-06-10 15:15:40 +02:00
2011-05-11 21:37:15 +02:00
2011-06-17 09:40:48 -07:00
2011-04-19 16:45:51 -07:00
2011-05-28 17:02:57 +02:00
2011-03-31 11:26:23 -03:00
2011-03-23 13:54:47 +01:00
2011-06-07 12:25:50 +02:00
2011-05-26 17:12:34 -07:00
2011-05-23 12:49:28 -07:00
2011-04-14 08:52:33 +02:00
2011-04-14 08:52:33 +02:00
2011-05-25 08:39:17 -07:00
2011-04-14 08:52:33 +02:00
2011-05-26 17:12:34 -07:00
2011-03-31 11:26:23 -03:00
2011-03-22 17:44:11 -07:00
2011-05-19 16:55:28 +09:30
2011-03-23 19:46:58 -07:00
2011-04-18 10:35:30 -07:00
2011-05-29 11:18:09 -07:00
2011-05-23 13:59:54 +02:00
2011-05-24 12:10:51 +02:00
2011-05-25 08:39:48 -07:00
2011-05-26 17:12:37 -07:00
2011-05-25 19:20:21 +02:00
2011-05-05 23:16:57 -07:00
2011-05-05 23:16:58 -07:00
2011-05-20 12:50:29 -07:00
2011-05-05 23:16:57 -07:00
2011-07-20 10:50:12 -07:00
2011-06-15 23:07:21 -07:00
2011-07-13 08:17:56 -07:00
2011-06-16 16:12:05 -07:00
2011-03-23 19:46:22 -07:00
2011-07-06 10:54:08 -07:00
2011-02-22 22:07:22 +01:00
2011-03-31 11:26:23 -03:00
2011-07-01 10:39:08 +02:00
2011-04-24 13:18:38 +02:00
2011-07-21 18:01:46 +02:00
2011-07-20 18:32:41 +02:00
2011-04-14 08:52:36 +02:00
2011-07-01 10:39:08 +02:00
2011-05-28 17:02:54 +02:00
2011-04-14 08:52:36 +02:00
2011-07-21 18:01:46 +02:00
2011-07-20 11:04:54 -07:00
2011-06-17 10:17:12 +02:00
2011-07-20 10:50:12 -07:00
2011-03-22 17:44:01 -07:00
2011-05-20 13:53:02 -07:00
2011-05-19 18:24:11 -07:00
2011-03-14 09:15:28 -04:00
2011-03-23 19:46:51 -07:00
2011-06-04 12:22:04 +02:00
2011-06-27 18:00:13 -07:00
2011-03-15 18:53:35 -07:00
2011-06-03 15:02:32 +02:00
2011-04-04 12:48:08 -04:00
2011-03-23 19:47:08 -07:00
2011-03-31 11:26:23 -03:00
2011-03-23 19:46:59 -07:00
2011-05-10 14:35:35 -07:00
2011-03-31 11:26:23 -03:00
2011-05-23 21:07:40 -07:00
2011-05-24 11:53:42 -07:00