| From: |
| Keika Kobayashi <kobayashi.kk@ncos.nec.co.jp> |
| To: |
| linux-kernel@vger.kernel.org, linux-mm@kvack.org |
| Subject: |
| [PATCH 0/3 v2] per-task-delay-accounting: add memory reclaim delay |
| Date: |
| Thu, 5 Jun 2008 16:27:59 -0700 |
| Message-ID: |
| <20080605162759.a6adf291.kobayashi.kk@ncos.nec.co.jp> |
| Cc: |
| akpm@linux-foundation.org, nagar@watson.ibm.com, balbir@in.ibm.com,
sekharan@us.ibm.com, kosaki.motohiro@jp.fujitsu.com,
kamezawa.hiroyu@jp.fujitsu.com |
| Archive-link: |
| Article,
Thread
|
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