Re: [PATCH RFC v2 3/4] memcg: rework usage of stats by soft limit

From: Kirill A. Shutemov
Date: Tue Dec 15 2009 - 02:48:18 EST


On Tue, Dec 15, 2009 at 3:35 AM, KAMEZAWA Hiroyuki
<kamezawa.hiroyu@xxxxxxxxxxxxxx> wrote:
> On Sat, 12 Dec 2009 21:46:08 +0200
> "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx> wrote:
>
>> On Sat, Dec 12, 2009 at 4:34 PM, Daisuke Nishimura
>> <d-nishimura@xxxxxxxxxxxxxxxxx> wrote:
>> > On Sat, 12 Dec 2009 15:06:52 +0200
>> > "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx> wrote:
>> >
>> >> On Sat, Dec 12, 2009 at 5:50 AM, Daisuke Nishimura
>> >> <d-nishimura@xxxxxxxxxxxxxxxxx> wrote:
>> >> > And IIUC, it's the same for your threshold feature, right ?
>> >> > I think it would be better:
>> >> >
>> >> > - discard this change.
>> >> > - in 4/4, rename mem_cgroup_soft_limit_check to mem_cgroup_event_check,
>> >> > Âand instead of adding a new STAT counter, do like:
>> >> >
>> >> > Â Â Â Âif (mem_cgroup_event_check(mem)) {
>> >> > Â Â Â Â Â Â Â Âmem_cgroup_update_tree(mem, page);
>> >> > Â Â Â Â Â Â Â Âmem_cgroup_threshold(mem);
>> >> > Â Â Â Â}
>> >>
>> >> I think that mem_cgroup_update_tree() and mem_cgroup_threshold() should be
>> >> run with different frequency. How to share MEM_CGROUP_STAT_EVENTS
>> >> between soft limits and thresholds in this case?
>> >>
>> > hmm, both softlimit and your threshold count events at the same place(charge and uncharge).
>> > So, I think those events can be shared.
>> > Is there any reason they should run in different frequency ?
>>
>> SOFTLIMIT_EVENTS_THRESH is 1000. If use the same value for thresholds,
>> a threshold can
>> be exceed on 1000*nr_cpu_id pages. It's too many. I think, that 100 is
>> a reasonable value.
>>
>
> Hmm, then what amount of costs does this code add ?
>
> Do you have benchmark result ?

I've post some numbers how the patchset affects performance:
http://article.gmane.org/gmane.linux.kernel.mm/41880

Do you need any other results?
--
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/