Re: [PATCH 0/3 v2] per-task-delay-accounting: add memory reclaimdelay

From: KAMEZAWA Hiroyuki
Date: Thu Jun 05 2008 - 23:15:51 EST


On Fri, 06 Jun 2008 07:48:25 +0530
Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx> wrote:

> Keika Kobayashi wrote:
> > Hi.
> >
> > This is v2 of accounting memory reclaim patch series.
> > Thanks to Kosaki-san, Kamezawa-san, Andrew for comments and advice!
> > These patches were fixed about the following.
> >
> > Against: next-20080605
> >
> > 1) Change Log
> >
> > o Add accounting memory reclaim delay from memcgroup.
> > For accounting both global and cgroup memory reclaim,
> > accounting point was moved from try_to_free_pages() to do_try_to_free_pages.
> >
> > o Drop the patch regarding /proc export for memory reclaim delay.
> > Because it seems that two separate ways to report are not necessary,
> > this patch series supports only NETLINK and doesn't add a field to /proc/<pid>/stat.
> >
> >
> > 2) Confirm the fix regarding memcgroup.
> >
> > o Previous patch can't catch memory reclaim delay from memcgroup.
> >
> > $ echo 10M > /cgroups/0/memory.limit_in_bytes
> >
> > $ ls -s test.dat
> > 500496 test.dat
> >
> > $ time tar cvf test.tar test.dat
> > real 0m21.957s
> > user 0m0.032s
> > sys 0m2.348s
> >
> > $ ./delayget -d -p <pid>
> > CPU count real total virtual total delay total
> > 2441 2288143000 2438256954 22371958
> > IO count delay total
> > 2444 18745251314
> > SWAP count delay total
> > 0 0
> > RECLAIM count delay total
> > 0 0
> >
> > o Current patch can catch memory reclaim delay from memcgroup.
> >
> > $ echo 10M > /cgroups/0/memory.limit_in_bytes
> >
> > $ ls -s test.dat
> > 500496 test.dat
> >
> > $ time tar cvf test.tar test.dat
> > real 0m22.563s
> > user 0m0.028s
> > sys 0m2.440s
> >
> > $ ./delayget -d -p <pid>
> > CPU count real total virtual total delay total
> > 2640 2456153500 2478353004 28366219
> > IO count delay total
> > 2628 19894214188
> > SWAP count delay total
> > 0 0
> > RECLAIM count delay total
> > 6600 10682486085
> >
>
> Looks interesting, this data is for the whole system or memcgroup? If it is for
> memcgroup, we should be using cgroupstats.
>
This patch itself is for per-task-stat. And it seems cgroup_stat doesn't handle
delay accounting now. It just counts # of processes in some status.

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/