mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Daniel Phillips <phillips@bonn-fries.net>
To: Rik van Riel <riel@conectiva.com.br>
Cc: Roger Larsson <roger.larsson@skelleftea.mail.telia.com>,
	"Marc A. Lehmann" <pcg@goof.com>, <linux-kernel@vger.kernel.org>,
	<oesi@plan9.de>
Subject: Re: [resent PATCH] Re: very slow parallel read performance
Date: Fri, 24 Aug 2001 23:11:58 +0200	[thread overview]
Message-ID: <20010824210523Z16096-32383+1216@humbolt.nl.linux.org> (raw)
In-Reply-To: <Pine.LNX.4.33L.0108241713420.31410-100000@duckman.distro.conectiva>
In-Reply-To: <Pine.LNX.4.33L.0108241713420.31410-100000@duckman.distro.conectiva>

On August 24, 2001 10:19 pm, Rik van Riel wrote:
> On Fri, 24 Aug 2001, Daniel Phillips wrote:
> > On August 24, 2001 07:43 pm, Rik van Riel wrote:
> 
> > > 1) under memory pressure, the inactive_dirty list is
> > >    only as large as 1 second of pageout IO, meaning
> > 		      ^^^^^^^^
> > This is the problem.  In the absense of competition and truly
> > active pages, the inactive queue should just grow until it is
> > much larger than the active ring.  Then the replacement policy
> > will naturally become fifo, which is exactly what you want in
> > your example.
> 
> Actually, no.  FIFO would be ok if you had ONE readahead
> stream going on, but when you have multiple readahead
> streams going on you want to evict the data each of the
> streams has already used, and not all the readahead data
> which happened to be read in first.

We will be fine up until the point that the set of all readahead fills the 
entire cache, then we will start dropping *some* of the readahead.  This will 
degrade gracefully: if the set of readahead is twice as large as cache then 
half the readahead will be dropped.  We will drop the readahead in coherent 
chunks so that it can be re-read in one disk seek.  This is not such bad 
behaviour.

All this assuming you don't enforce the 1 second size limit on the inactive 
queue, of course.

We probably could squeeze a little better performance out of this case by 
magically knowing that no input page will ever be reused, as you suggest.  
We risk getting such an improvement at the expensive of other, more typical 
loads.

That said, I think I might be able to come up with something that uses 
specific knowledge about readahead to squeeze a little better performance out 
of your example case without breaking loads that are already working pretty 
well.  It will require another lru list - this is not something we want to do 
right now, don't you agree?

--
Daniel

  reply	other threads:[~2001-08-24 21:05 UTC|newest]

Thread overview: 123+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-08-23 21:35 Lehmann 
2001-08-24  7:35 ` [resent PATCH] " Roger Larsson
2001-08-24 17:43   ` Rik van Riel
2001-08-24 18:28     ` Roger Larsson
2001-08-24 19:02       ` Rik van Riel
2001-08-24 20:37         ` Gérard Roudier
2001-08-24 23:12           ` Rik van Riel
2001-08-25  8:02             ` Gérard Roudier
2001-08-25  9:26               ` Roger Larsson
2001-08-25 11:49                 ` Gérard Roudier
2001-08-25 17:56                   ` Roger Larsson
2001-08-25 19:13                     ` Gérard Roudier
2001-08-25 13:17               ` Rik van Riel
2001-08-24 22:29         ` Daniel Phillips
2001-08-24 23:10           ` Rik van Riel
2001-08-25  0:42             ` Daniel Phillips
2001-08-27  7:08           ` Helge Hafting
2001-08-27 14:31             ` Daniel Phillips
2001-08-27 14:42               ` Alex Bligh - linux-kernel
2001-08-27 15:14                 ` Rik van Riel
2001-08-27 16:04                   ` Daniel Phillips
     [not found]                   ` <Pine.LNX.4.33L.0108271213370.5646-100000@imladris.rielhome.cone ctiva>
2001-08-27 19:34                     ` Alex Bligh - linux-kernel
2001-08-27 20:03                       ` Oliver Neukum
2001-08-27 20:19                         ` Alex Bligh - linux-kernel
2001-08-27 21:38                           ` Oliver.Neukum
2001-08-27 22:26                             ` Alex Bligh - linux-kernel
2001-08-27 21:29                       ` Daniel Phillips
2001-08-27 16:02                 ` Daniel Phillips
2001-08-27 19:36                   ` Alex Bligh - linux-kernel
2001-08-27 20:24                     ` Daniel Phillips
2001-08-27 16:55               ` David Lang
2001-08-27 18:54                 ` Daniel Phillips
2001-08-27 18:37               ` Oliver Neukum
2001-08-27 19:04                 ` Daniel Phillips
2001-08-27 19:43                   ` Oliver Neukum
2001-08-27 20:37                     ` Daniel Phillips
2001-08-27 22:10                       ` Oliver.Neukum
2001-08-27 21:44                     ` Linus Torvalds
2001-08-27 22:30                       ` Daniel Phillips
2001-08-27 23:00                       ` Marcelo Tosatti
2001-08-28  3:10                         ` Linus Torvalds
2001-08-27 19:55                 ` Richard Gooch
2001-08-27 20:09                   ` Oliver Neukum
2001-08-27 21:06                   ` Daniel Phillips
2001-08-24 20:18     ` Daniel Phillips
2001-08-24 20:19       ` Rik van Riel
2001-08-24 21:11         ` Daniel Phillips [this message]
2001-08-24 23:03           ` Rik van Riel
2001-08-25  0:41             ` Daniel Phillips
2001-08-25  1:34               ` Rik van Riel
2001-08-25 15:49                 ` Daniel Phillips
2001-08-25 15:50                   ` Rik van Riel
2001-08-25 16:28                     ` Lehmann 
2001-08-25 16:34                       ` Rik van Riel
2001-08-25 16:41                         ` Lehmann 
2001-08-26 16:55                       ` Daniel Phillips
2001-08-26 18:39                         ` Rik van Riel
2001-08-26 19:46                           ` Daniel Phillips
2001-08-26 19:52                             ` Rik van Riel
2001-08-26 20:08                               ` Daniel Phillips
2001-08-26 22:33                                 ` Russell King
2001-08-26 23:24                                   ` Daniel Phillips
2001-08-26 23:24                                     ` Russell King
2001-08-27  0:07                                     ` Rik van Riel
2001-08-27  0:02                                 ` Rik van Riel
2001-08-27  0:42                                   ` Daniel Phillips
2001-08-25 16:43                     ` Daniel Phillips
2001-08-25 19:15                       ` Alan Cox
2001-08-25 19:35                         ` Lehmann 
2001-08-25 20:52                           ` Rik van Riel
2001-08-26  1:38                             ` Daniel Phillips
2001-08-26  2:49                               ` Lehmann 
2001-08-26 17:29                                 ` Daniel Phillips
2001-08-26 17:37                                   ` Craig I. Hagan
2001-08-26 18:56                                   ` Rik van Riel
2001-08-26 19:18                                   ` Lehmann 
2001-08-26 21:07                                     ` Daniel Phillips
2001-08-26 22:12                                       ` Rik van Riel
2001-08-26 23:24                                       ` Lehmann 
2001-08-26 20:26                                   ` Gérard Roudier
2001-08-26 21:20                                     ` Daniel Phillips
2001-08-26  3:32                               ` Rik van Riel
2001-08-26 13:22                                 ` Lehmann 
2001-08-26 13:48                                   ` Rik van Riel
2001-08-26 14:55                                     ` Lehmann 
2001-08-26 15:06                                       ` Rik van Riel
2001-08-26 15:25                                         ` Lehmann 
2001-08-25 21:33                           ` Alan Cox
2001-08-25 23:34                             ` Lehmann 
2001-08-26  2:02                               ` Rik van Riel
2001-08-26  2:57                                 ` Lehmann 
2001-08-26  0:46                           ` John Stoffel
2001-08-26  1:07                             ` Alan Cox
2001-08-26  3:30                               ` Rik van Riel
2001-08-26  3:40                             ` Rik van Riel
2001-08-26  5:28                               ` Daniel Phillips
2001-08-24 23:23         ` Lehmann 
     [not found]           ` <200108242344.f7ONi0h21270@mailg.telia.com>
2001-08-25  0:28             ` Lehmann 
2001-08-25  3:09           ` Rik van Riel
2001-08-25  9:13             ` Gérard Roudier
2001-08-26 16:54           ` Daniel Phillips
2001-08-26 18:59             ` Victor Yodaiken
2001-08-26 19:38               ` Rik van Riel
2001-08-26 20:05                 ` Victor Yodaiken
2001-08-26 20:34                   ` Rik van Riel
2001-08-26 20:45                     ` Victor Yodaiken
2001-08-26 21:00                       ` Alan Cox
2001-08-26 20:42               ` Daniel Phillips
2001-08-26 19:31             ` Lehmann 
2001-08-24 19:42   ` Lehmann 
2001-08-24 21:42     ` Gérard Roudier
2001-08-25  0:05   ` Craig I. Hagan
2001-08-27  2:03 Rick Hohensee
2001-08-27  2:52 ` Keith Owens
2001-08-28 17:52 ` Kai Henningsen
2001-08-28 21:54   ` Matthew M
2001-08-28  1:08 Dieter Nützel
2001-08-28  0:05 ` Marcelo Tosatti
2001-08-28  1:54   ` Daniel Phillips
2001-08-28  5:01 ` Mike Galbraith
2001-08-28 18:18 ` Andrew Morton
2001-08-28 18:45   ` Hans Reiser
2001-08-28 15:28 Dieter Nützel

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=20010824210523Z16096-32383+1216@humbolt.nl.linux.org \
    --to=phillips@bonn-fries.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=oesi@plan9.de \
    --cc=pcg@goof.com \
    --cc=riel@conectiva.com.br \
    --cc=roger.larsson@skelleftea.mail.telia.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®