All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nick Piggin <nickpiggin@yahoo.com.au>
To: Rik van Riel <riel@redhat.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	"KOSAKI Motohiro" <kosaki.motohiro@jp.fujitsu.com>,
	"Johannes Weiner" <hannes@saeurebad.de>,
	"Peter Zijlstra" <peterz@infradead.org>,
	Nossum <vegard.nossum@gmail.com>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH -mm] mm: more likely reclaim MADV_SEQUENTIAL mappings
Date: Tue, 22 Jul 2008 13:49:28 +1000	[thread overview]
Message-ID: <200807221349.28641.nickpiggin@yahoo.com.au> (raw)
In-Reply-To: <200807221343.40017.nickpiggin@yahoo.com.au>

On Tuesday 22 July 2008 13:43, Nick Piggin wrote:
> On Tuesday 22 July 2008 13:04, Rik van Riel wrote:
> > On Tue, 22 Jul 2008 12:54:28 +1000

> > > But we are not doing nothing because we already know and have coded
> > > for the fact that the mapping will be accessed once, sequentially.
> > > Now that we have gone this far, we should actually do it properly and
> > > 1. unmap after use, 2. POSIX_FADV_DONTNEED after use. This will give
> > > you much better performance and cache behaviour than any automatic
> > > detection scheme, and it doesn't introduce any regressions for existing
> > > code.
> >
> > If you run just one instance of the application!
> >
> > Think about something like an ftp server or a media server,
> > where you want to cache the data that is served up many
> > times, while evicting the data that got served just once.
> >
> > The kernel has much better knowledge of what the aggregate
> > of all processes in the system are doing than any individual
> > process has.
>
> That's true, but this case isn't really very good anyway. The information
> goes away after you drop the mapping anyway. Or did you hope that the
> backup program or indexer keeps all those mappings open until all the pages
> have filtered through? Or maybe we can add yet more branches into the unmap
> path to test for this flag as well?
>
> I don't think it is a good idea to add random things just because they seem
> at first glance like a good idea.

BTW. in the backup of a busy fileserver or some case like that, I'd
bet that even using FADV_DONTNEED would be much faster than leaving
these mappings around to try to drop them due to the decreased churn
on the LRUs overall anyway.


WARNING: multiple messages have this Message-ID (diff)
From: Nick Piggin <nickpiggin@yahoo.com.au>
To: Rik van Riel <riel@redhat.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>,
	Johannes Weiner <hannes@saeurebad.de>,
	Peter Zijlstra <peterz@infradead.org>,
	Nossum <vegard.nossum@gmail.com>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH -mm] mm: more likely reclaim MADV_SEQUENTIAL mappings
Date: Tue, 22 Jul 2008 13:49:28 +1000	[thread overview]
Message-ID: <200807221349.28641.nickpiggin@yahoo.com.au> (raw)
In-Reply-To: <200807221343.40017.nickpiggin@yahoo.com.au>

On Tuesday 22 July 2008 13:43, Nick Piggin wrote:
> On Tuesday 22 July 2008 13:04, Rik van Riel wrote:
> > On Tue, 22 Jul 2008 12:54:28 +1000

> > > But we are not doing nothing because we already know and have coded
> > > for the fact that the mapping will be accessed once, sequentially.
> > > Now that we have gone this far, we should actually do it properly and
> > > 1. unmap after use, 2. POSIX_FADV_DONTNEED after use. This will give
> > > you much better performance and cache behaviour than any automatic
> > > detection scheme, and it doesn't introduce any regressions for existing
> > > code.
> >
> > If you run just one instance of the application!
> >
> > Think about something like an ftp server or a media server,
> > where you want to cache the data that is served up many
> > times, while evicting the data that got served just once.
> >
> > The kernel has much better knowledge of what the aggregate
> > of all processes in the system are doing than any individual
> > process has.
>
> That's true, but this case isn't really very good anyway. The information
> goes away after you drop the mapping anyway. Or did you hope that the
> backup program or indexer keeps all those mappings open until all the pages
> have filtered through? Or maybe we can add yet more branches into the unmap
> path to test for this flag as well?
>
> I don't think it is a good idea to add random things just because they seem
> at first glance like a good idea.

BTW. in the backup of a busy fileserver or some case like that, I'd
bet that even using FADV_DONTNEED would be much faster than leaving
these mappings around to try to drop them due to the decreased churn
on the LRUs overall anyway.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2008-07-22  3:49 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-19 17:31 [PATCH -mm] mm: more likely reclaim MADV_SEQUENTIAL mappings Johannes Weiner
2008-07-19 17:31 ` Johannes Weiner
2008-07-19 17:59 ` Rik van Riel
2008-07-19 17:59   ` Rik van Riel
2008-07-21  0:09 ` KOSAKI Motohiro
2008-07-21  0:09   ` KOSAKI Motohiro
2008-07-21  1:48   ` Andrew Morton
2008-07-21  1:48     ` Andrew Morton
2008-07-21  3:53     ` KOSAKI Motohiro
2008-07-21  3:53       ` KOSAKI Motohiro
2008-07-21  5:49     ` Nick Piggin
2008-07-21  5:49       ` Nick Piggin
2008-07-21 15:14       ` Rik van Riel
2008-07-21 15:14         ` Rik van Riel
2008-07-22  2:02         ` Nick Piggin
2008-07-22  2:02           ` Nick Piggin
2008-07-22  2:36           ` Rik van Riel
2008-07-22  2:36             ` Rik van Riel
2008-07-22  2:54             ` Nick Piggin
2008-07-22  2:54               ` Nick Piggin
2008-07-22  3:04               ` Rik van Riel
2008-07-22  3:04                 ` Rik van Riel
2008-07-22  3:43                 ` Nick Piggin
2008-07-22  3:43                   ` Nick Piggin
2008-07-22  3:49                   ` Nick Piggin [this message]
2008-07-22  3:49                     ` Nick Piggin

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=200807221349.28641.nickpiggin@yahoo.com.au \
    --to=nickpiggin@yahoo.com.au \
    --cc=akpm@linux-foundation.org \
    --cc=hannes@saeurebad.de \
    --cc=kosaki.motohiro@jp.fujitsu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=peterz@infradead.org \
    --cc=riel@redhat.com \
    --cc=vegard.nossum@gmail.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 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.