From: Matt Mackall <mpm@selenic.com>
To: Andrew Morton <akpm@osdl.org>
Cc: Andi Kleen <ak@suse.de>,
linux-kernel@vger.kernel.org, kenneth.w.chen@intel.com
Subject: Re: Limit hash table size
Date: Fri, 6 Feb 2004 00:22:35 -0600 [thread overview]
Message-ID: <20040206062235.GK31138@waste.org> (raw)
In-Reply-To: <20040205190904.0cacd513.akpm@osdl.org>
On Thu, Feb 05, 2004 at 07:09:04PM -0800, Andrew Morton wrote:
> Andi Kleen <ak@suse.de> wrote:
> >
> > Andrew Morton <akpm@osdl.org> writes:
> >
> > > Ken, I remain unhappy with this patch. If a big box has 500 million
> > > dentries or inodes in cache (is possible), those hash chains will be more
> > > than 200 entries long on average. It will be very slow.
> >
> > How about limiting the global size of the dcache in this case ?
>
> But to what size?
>
> The thing is, any workload which touches a huge number of dentries/inodes
> will, if it touches them again, touch them again in exactly the same order.
> This triggers the worst-case LRU behaviour.
>
> So if you limit dcache to 100MB and you happen to have a workload which
> touches 101MB's worth, you get a 100% miss rate. You suffer a 100000%
> slowdown on the second pass, which is unhappy. It doesn't seem worth
> crippling such workloads just because of the updatedb thing.
A less strict approach to LRU might serve. Probabilistically dropping
something in the first half of the LRU rather than the head would go a
long way to gracefully degrading the "working set slightly larger than
cache" effect. There are a couple different ways to do this that are
reasonably efficient.
--
Matt Mackall : http://www.selenic.com : Linux development and consulting
next prev parent reply other threads:[~2004-02-06 6:22 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <B05667366EE6204181EABE9C1B1C0EB5802441@scsmsx401.sc.intel.com.suse.lists.linux.kernel>
[not found] ` <20040205155813.726041bd.akpm@osdl.org.suse.lists.linux.kernel>
2004-02-06 1:54 ` Limit hash table size Andi Kleen
2004-02-05 2:38 ` Steve Lord
2004-02-06 3:12 ` Andrew Morton
2004-02-05 4:06 ` Steve Lord
2004-02-06 4:39 ` Andi Kleen
2004-02-06 4:59 ` Andrew Morton
2004-02-06 5:34 ` Maneesh Soni
2004-02-06 3:19 ` Andi Kleen
2004-02-06 3:23 ` Nick Piggin
2004-02-06 3:34 ` Andrew Morton
2004-02-06 3:38 ` Nick Piggin
2004-02-18 12:41 ` Pavel Machek
2004-02-06 3:09 ` Andrew Morton
2004-02-06 3:18 ` Andi Kleen
2004-02-06 3:30 ` Andrew Morton
2004-02-06 4:45 ` Martin J. Bligh
2004-02-06 6:22 ` Matt Mackall [this message]
2004-02-06 20:20 ` Taneli Vähäkangas
2004-02-06 20:27 ` Andrew Morton
2004-02-06 21:46 ` Taneli Vähäkangas
2004-02-06 6:32 Manfred Spraul
-- strict thread matches above, loose matches on Subject: below --
2004-01-12 16:50 Manfred Spraul
2004-01-08 23:12 Chen, Kenneth W
2004-01-08 23:12 ` Chen, Kenneth W
2004-01-09 9:25 ` Andrew Morton
2004-01-09 9:25 ` Andrew Morton
2004-01-09 14:25 ` Anton Blanchard
2004-01-09 14:25 ` Anton Blanchard
2004-01-09 19:05 ` Chen, Kenneth W
2004-01-09 19:05 ` Chen, Kenneth W
2004-01-12 13:32 ` Anton Blanchard
2004-01-12 13:32 ` Anton Blanchard
2004-01-14 22:29 ` Chen, Kenneth W
2004-01-14 22:29 ` Chen, Kenneth W
2004-01-14 22:31 ` Chen, Kenneth W
2004-01-14 22:31 ` Chen, Kenneth W
2004-01-18 14:25 ` Anton Blanchard
2004-01-18 14:25 ` Anton Blanchard
2004-02-05 23:58 ` Andrew Morton
2004-02-05 23:58 ` Andrew Morton
2004-02-06 0:10 ` Chen, Kenneth W
2004-02-06 0:10 ` Chen, Kenneth W
2004-02-06 0:23 ` Andrew Morton
2004-02-06 0:23 ` Andrew Morton
2004-02-09 23:12 ` Jes Sorensen
2004-02-09 23:12 ` Jes Sorensen
2004-02-17 22:24 ` Chen, Kenneth W
2004-02-17 22:24 ` Chen, Kenneth W
2004-02-17 23:24 ` Andrew Morton
2004-02-17 23:24 ` Andrew Morton
2004-02-18 0:16 ` Chen, Kenneth W
2004-02-18 0:16 ` Chen, Kenneth W
2004-02-18 0:45 ` Chen, Kenneth W
2004-02-18 0:45 ` Chen, Kenneth W
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20040206062235.GK31138@waste.org \
--to=mpm@selenic.com \
--cc=ak@suse.de \
--cc=akpm@osdl.org \
--cc=kenneth.w.chen@intel.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.