[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110729083847.GB1843@barrios-desktop>
Date: Fri, 29 Jul 2011 17:38:47 +0900
From: Minchan Kim <minchan.kim@...il.com>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: Jens Axboe <jaxboe@...ionio.com>,
Shaohua Li <shaohua.li@...el.com>,
"mgorman@...e.de" <mgorman@...e.de>, linux-mm <linux-mm@...ck.org>,
lkml <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH]vmscan: add block plug for page reclaim
On Wed, Jul 27, 2011 at 04:45:23PM -0700, Andrew Morton wrote:
> On Sat, 23 Jul 2011 20:49:10 +0200
> Jens Axboe <jaxboe@...ionio.com> wrote:
>
> > > I can observe the average request size changes. Before the patch, the
> > > average request size is about 90k from iostat (but the variation is
> > > big). With the patch, the request size is about 100k and variation is
> > > small.
> >
> > That's a good win right there, imho.
>
> yup. Reduced CPU consumption on that path isn't terribly exciting IMO,
> but improved request size is significant.
Fair enough.
He didn't write down it in the description.
At least, The description should include request size and variation instead of
CPU consumption thing.
Shaohua, Please rewrite the description although it's annoying.
>
> Using an additional 44 bytes of stack on that path is also
> significant(ly bad). But we need to fix that problem anyway. One way
> we could improve things in mm/vmscan.c is to move the blk_plug into
> scan_control then get the scan_control off the stack in some manner.
> That's easy for kswapd: allocate one scan_control per kswapd at
> startup. Doing it for direct-reclaim would be a bit trickier...
Stack diet in direct reclaim...
Of course, it's a matter as I pointed out in this patch
but frankly speaking, it's very annoying to consider stack usage
whenever we add something in direct reclaim path.
I think better solution is to avoid write in direct reclaim like the approach of Mel.
I vote the approach.
So now I will not complain the stack usage in this patch but focus on Mel's patch
>
>
>
> And I have the usual maintainability whine. If someone comes up to
> vmscan.c and sees it calling blk_start_plug(), how are they supposed to
> work out why that call is there? They go look at the blk_start_plug()
> definition and it is undocumented. I think we can do better than this?
--
Kind regards,
Minchan Kim
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists