Re: [RFC][PATCH] the proposal of improve page reclaim by throttle

From: minchan Kim
Date: Thu Feb 21 2008 - 07:29:52 EST


On Thu, Feb 21, 2008 at 7:55 PM, KOSAKI Motohiro
<kosaki.motohiro@xxxxxxxxxxxxxx> wrote:
> Hi Kim-san,
>
> Thank you very much.
> btw, what different between <test 1> and <test 2>?

<test 1> have no swap device with 200 tasks by hackbench.
But <test 2> have swap device(32M) with 240 tasks by hackbench.
If <test2> have no swap device without your patch, <test2> is killed by OOM.

<test 1> - NO SWAP
Running with 5*40 (== 200) tasks.
...
<test 2> - SWAP
Running with 6*40 (== 240) tasks.
...

>
> > It was a very interesting result.
> > In embedded system, your patch improve performance a little in case
> > without noswap(normal case in embedded system).
> > But, more important thing is OOM occured when I made 240 process
> > without swap device and vanilla kernel.
> > Then, I applied your patch, it worked very well without OOM.
>
> Wow, it is very interesting result!
> I am very happy.
>
>
> > I think that's why zone's page_scanned was six times greater than
> > number of lru pages.
> > At result, OOM happened.
>
> please repost question with change subject.
> i don't know reason of vanilla kernel behavior, sorry.

Normally, embedded linux have only one zone(DMA).

If your patch isn't applied, several processes can reclaim memory in parallel.
then, DMA zone's pages_scanned is suddenly increased largely. Because
embedded linux have no swap device, kernel can't stop to scan lru
list until meeting page cache page. so if zone->pages_scanned is
greater six time than lru list pages, kernel make the zone with
unreclaimable state, As a result, OOM will kill it, too.

--
Thanks,
barrios
--
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/