Re: [patch 1/13] minimal rmap

From: Daniel Phillips (phillips@arcor.de)
Date: Wed Jul 17 2002 - 14:55:41 EST


On Wednesday 17 July 2002 21:41, Rik van Riel wrote:
> On Wed, 17 Jul 2002, Daniel Phillips wrote:
> > On Wednesday 17 July 2002 21:31, Rik van Riel wrote:
> > > On Wed, 17 Jul 2002, Daniel Phillips wrote:
> > > > On Wednesday 17 July 2002 07:29, Andrew Morton wrote:
> > > > > 11: The nightly updatedb run is still evicting everything.
> > > >
> > > > That is not a problem with rmap per se, it's a result of not properly
> > > > handling streaming IO.
> > >
> > > Umm, updatedb isn't exactly streaming...
> >
> > You're right, it's not exactly, it's hitting every directory entry on
> ^^^^^^^^^^^^^^^
> > the system, hopefully just once. Let's not call it streaming, let's
> > call it... err... use-once? ;-)
>
> Nope. If it hits every directory entry once, it'll hit every
> page with directory or inode information multiple times, causing
> that page to enter the active list and push out process pages.
>
> This is exactly what we want to prevent.

Yes, it could get challenging, but it's very desirable to do the
optimization somehow. It's even more desirable to stay focussed on
the immediate issues, imho.

Food for thought: readdir actually picks up the entries 4K-worth at a
time, however that's randomly aligned with respect to directory block
boundaries, meaning that most blocks get two hits, which could well be
the problem.

Inode table blocks present a more difficult problem. It's really hard
to know when to evict them, and just arbitrarily holding them to a
certain percentage of memory isn't nice either.

I think Andrew also mentioned he sees a lot of buffers sitting around
in the morning. His strip-buffers-immediately hack would kill that
one dead.

-- 
Daniel
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Tue Jul 23 2002 - 22:00:24 EST