Re: [patch 0/6] mm: memcg: statistics implementation cleanups

From: KAMEZAWA Hiroyuki
Date: Tue May 15 2012 - 20:03:46 EST


(2012/05/15 20:03), Johannes Weiner wrote:

> On Tue, May 15, 2012 at 09:19:33AM +0900, KAMEZAWA Hiroyuki wrote:
>> (2012/05/15 3:00), Johannes Weiner wrote:
>>
>>> Before piling more things (reclaim stats) on top of the current mess,
>>> I thought it'd be better to clean up a bit.
>>>
>>> The biggest change is printing statistics directly from live counters,
>>> it has always been annoying to declare a new counter in two separate
>>> enums and corresponding name string arrays. After this series we are
>>> down to one of each.
>>>
>>> mm/memcontrol.c | 223 +++++++++++++++++------------------------------
>>> 1 file changed, 82 insertions(+), 141 deletions(-)
>>
>> to all 1-6. Thank you.
>>
>> Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx>
>
> Thanks!
>
>> One excuse for my old implementation of mem_cgroup_get_total_stat(),
>> which is fixed in patch 6, is that I thought it's better to touch all counters
>> in a cachineline at once and avoiding long distance for-each loop.
>>
>> What number of performance difference with some big hierarchy(100+children) tree ?
>> (But I agree your code is cleaner. I'm just curious.)
>
> I set up a parental group with hierarchy enabled, then created 512
> children and did a 4-job kernel bench in one of them. Every 0.1
> seconds, I read the stats of the parent, which requires reading each
> stat/event/lru item from 512 groups before moving to the next one:
>
> 512stats-vanilla 512stats-patched
> Walltime (s) 62.61 ( +0.00%) 62.88 ( +0.43%)
> Walltime (stddev) 0.17 ( +0.00%) 0.14 ( -3.17%)
>
> That should be acceptable, I think.
>
>


Yes, thank you.
Thanks,
-Kame

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/