Messages in this thread | | | Date | Wed, 02 Dec 2015 13:48:31 -0500 | From | Waiman Long <> | Subject | Re: [RFC PATCH 3/3] sched/fair: Use different cachelines for readers and writers of load_avg |
| |
On 12/01/2015 03:49 AM, Peter Zijlstra wrote: > On Mon, Nov 30, 2015 at 10:55:02PM -0500, Waiman Long wrote: >> On 11/30/2015 05:09 PM, Peter Zijlstra wrote: >>> On Mon, Nov 30, 2015 at 02:13:32PM -0500, Waiman Long wrote: >>>>> This begs the question tough; why are you running a global load in a >>>>> cgroup; and do we really need to update this for the root cgroup? It >>>>> seems to me we don't need calc_tg_weight() for the root cgroup, it >>>>> doesn't need to normalize its weight numbers. >>>>> >>>>> That is; isn't this simply a problem we should avoid? >>>> I didn't use any cgroup in my test setup. Autogroup was enabled, though. >>>> Booting up a 4.4-rc2 kernel caused sched_create_group() to be called 56 >>>> times. >>> Yeah, can you kill autogroup and see if that helps? If not, we probably >>> should add some code to avoid calculating things for the root group. >> I will try that out tomorrow. However, SCHED_AUTOGROUP was enabled in the >> distribution kernels. So we still need to look at that with autogroup >> enabled. > Meh, or just tell the people that have stupid large machines to use > noautogroup on boot (its of questionable benefit in the first place imo, > esp. on servers).
Yes, I was able to recover most of the lost performance by disabling autogroup. I did send out a new patch to disable load_avg update for root_task_group. I need that for backporting to earlier kernels which was forced to update load_avg for every clock tick even for root_task_group.
Cheers, Longman
| |