All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrea Arcangeli <andrea@suse.de>
To: Dan Aloni <da-x@monatomic.org>
Cc: Nick Piggin <npiggin@suse.de>, Hugh Dickins <hugh@veritas.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Linux Memory Management List <linux-mm@kvack.org>,
	tee@sgi.com, holt@sgi.com,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [rfc] no ZERO_PAGE?
Date: Wed, 4 Apr 2007 16:14:57 +0200	[thread overview]
Message-ID: <20070404141457.GF19587@v2.random> (raw)
In-Reply-To: <20070404135530.GA29026@localdomain>

On Wed, Apr 04, 2007 at 04:55:32PM +0300, Dan Aloni wrote:
> How about applications that perform mmap() and R/W random-access on 
> large *sparse* files? (e.g. a scientific app that uses a large sparse 
> file as a big database look-up table). As I see it, these apps would
> need to keep track of what's sparse and what's not...

That's not anonymous memory if those are read page faults on
_files_. I'm only talking about anonymous memory and
do_anonymous_page, i.e. no file data at all. In more clear words, the
only thing we're discussing here is char = malloc(1); *char.

Your example _already_ allocates zeroed pagecache instead of the zero
page, so your example (random access over sparse files with mmap, be
it MAP_PRIVATE or MAP_SHARED no difference for reads) has never had
anything to do with the zero page. If something we could optimize your
example to _start_ using for the first time ever the ZERO_PAGE, it
would make more sense to use it to be mapped where the lowlevel fs
finds holes. ZERO_PAGE in do_anonymous_page instead doesn't make much
sense to me, but it has always been there as far as I can
remember. The thing is that it never hurted until the huge systems
with nightmare cacheline bouncing reported heavy stalls on some
testcase, which make it look like a DoS because of the ZERO_PAGE,
hence now that it hurts I guess it can go.

WARNING: multiple messages have this Message-ID (diff)
From: Andrea Arcangeli <andrea@suse.de>
To: Dan Aloni <da-x@monatomic.org>
Cc: Nick Piggin <npiggin@suse.de>, Hugh Dickins <hugh@veritas.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Linux Memory Management List <linux-mm@kvack.org>,
	tee@sgi.com, holt@sgi.com,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [rfc] no ZERO_PAGE?
Date: Wed, 4 Apr 2007 16:14:57 +0200	[thread overview]
Message-ID: <20070404141457.GF19587@v2.random> (raw)
In-Reply-To: <20070404135530.GA29026@localdomain>

On Wed, Apr 04, 2007 at 04:55:32PM +0300, Dan Aloni wrote:
> How about applications that perform mmap() and R/W random-access on 
> large *sparse* files? (e.g. a scientific app that uses a large sparse 
> file as a big database look-up table). As I see it, these apps would
> need to keep track of what's sparse and what's not...

That's not anonymous memory if those are read page faults on
_files_. I'm only talking about anonymous memory and
do_anonymous_page, i.e. no file data at all. In more clear words, the
only thing we're discussing here is char = malloc(1); *char.

Your example _already_ allocates zeroed pagecache instead of the zero
page, so your example (random access over sparse files with mmap, be
it MAP_PRIVATE or MAP_SHARED no difference for reads) has never had
anything to do with the zero page. If something we could optimize your
example to _start_ using for the first time ever the ZERO_PAGE, it
would make more sense to use it to be mapped where the lowlevel fs
finds holes. ZERO_PAGE in do_anonymous_page instead doesn't make much
sense to me, but it has always been there as far as I can
remember. The thing is that it never hurted until the huge systems
with nightmare cacheline bouncing reported heavy stalls on some
testcase, which make it look like a DoS because of the ZERO_PAGE,
hence now that it hurts I guess it can go.

--
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:[~2007-04-04 14:15 UTC|newest]

Thread overview: 85+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-29  7:58 [rfc][patch 1/2] mm: dont account ZERO_PAGE Nick Piggin
2007-03-29  7:58 ` [rfc][patch 2/2] mips: reinstate move_pte Nick Piggin
2007-03-29 17:49   ` Linus Torvalds
2007-03-29 13:10 ` [rfc][patch 1/2] mm: dont account ZERO_PAGE Hugh Dickins
2007-03-30  1:46   ` Nick Piggin
2007-03-30  2:59     ` Robin Holt
2007-03-30  3:09       ` Nick Piggin
2007-03-30  9:23         ` Robin Holt
2007-03-30  2:40   ` Nick Piggin
2007-04-04  3:37     ` [rfc] no ZERO_PAGE? Nick Piggin
2007-04-04  3:37       ` Nick Piggin
2007-04-04  9:45       ` Hugh Dickins
2007-04-04  9:45         ` Hugh Dickins
2007-04-04 10:24         ` Nick Piggin
2007-04-04 10:24           ` Nick Piggin
2007-04-04 12:27           ` Andrea Arcangeli
2007-04-04 12:27             ` Andrea Arcangeli
2007-04-04 13:55             ` Dan Aloni
2007-04-04 13:55               ` Dan Aloni
2007-04-04 14:14               ` Andrea Arcangeli [this message]
2007-04-04 14:14                 ` Andrea Arcangeli
2007-04-04 14:44                 ` Dan Aloni
2007-04-04 14:44                   ` Dan Aloni
2007-04-04 15:03                   ` Hugh Dickins
2007-04-04 15:03                     ` Hugh Dickins
2007-04-04 15:34                     ` Andrea Arcangeli
2007-04-04 15:34                       ` Andrea Arcangeli
2007-04-04 15:41                       ` Hugh Dickins
2007-04-04 15:41                         ` Hugh Dickins
2007-04-04 16:07                         ` Andrea Arcangeli
2007-04-04 16:07                           ` Andrea Arcangeli
2007-04-04 16:14                         ` Linus Torvalds
2007-04-04 16:14                           ` Linus Torvalds
2007-04-04 15:27                   ` Andrea Arcangeli
2007-04-04 15:27                     ` Andrea Arcangeli
2007-04-04 16:15                     ` Dan Aloni
2007-04-04 16:15                       ` Dan Aloni
2007-04-04 16:48                       ` Andrea Arcangeli
2007-04-04 16:48                         ` Andrea Arcangeli
2007-04-04 12:45           ` Hugh Dickins
2007-04-04 12:45             ` Hugh Dickins
2007-04-04 13:05             ` Andrea Arcangeli
2007-04-04 13:05               ` Andrea Arcangeli
2007-04-04 13:32               ` Hugh Dickins
2007-04-04 13:32                 ` Hugh Dickins
2007-04-04 13:40                 ` Andrea Arcangeli
2007-04-04 13:40                   ` Andrea Arcangeli
2007-04-04 15:35       ` Linus Torvalds
2007-04-04 15:35         ` Linus Torvalds
2007-04-04 15:48         ` Andrea Arcangeli
2007-04-04 15:48           ` Andrea Arcangeli
2007-04-04 16:09           ` Linus Torvalds
2007-04-04 16:09             ` Linus Torvalds
2007-04-04 16:23             ` Andrea Arcangeli
2007-04-04 16:23               ` Andrea Arcangeli
2007-04-04 16:10           ` Hugh Dickins
2007-04-04 16:10             ` Hugh Dickins
2007-04-04 16:31             ` Andrea Arcangeli
2007-04-04 16:31               ` Andrea Arcangeli
2007-04-04 22:07           ` Valdis.Kletnieks
2007-04-04 16:32         ` Eric Dumazet
2007-04-04 16:32           ` Eric Dumazet
2007-04-04 17:02           ` Linus Torvalds
2007-04-04 17:02             ` Linus Torvalds
2007-04-04 19:15         ` Andrew Morton
2007-04-04 19:15           ` Andrew Morton
2007-04-04 20:11         ` David Miller
2007-04-04 20:11           ` David Miller, Linus Torvalds
2007-04-04 20:50           ` Andrew Morton
2007-04-04 20:50             ` Andrew Morton
2007-04-05  2:03           ` Nick Piggin
2007-04-05  2:03             ` Nick Piggin
2007-04-05  5:23           ` Andrea Arcangeli
2007-04-05  5:23             ` Andrea Arcangeli
2007-04-04 22:05         ` Valdis.Kletnieks
2007-04-05  0:27           ` Linus Torvalds
2007-04-05  0:27             ` Linus Torvalds
2007-04-05  1:25             ` Valdis.Kletnieks
2007-04-05  2:30             ` Nick Piggin
2007-04-05  2:30               ` Nick Piggin
2007-04-05  5:37               ` William Lee Irwin III
2007-04-05  5:37                 ` William Lee Irwin III
2007-04-05 17:23                 ` Valdis.Kletnieks
2007-04-05  4:47         ` Nick Piggin
2007-04-05  4:47           ` 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=20070404141457.GF19587@v2.random \
    --to=andrea@suse.de \
    --cc=akpm@linux-foundation.org \
    --cc=da-x@monatomic.org \
    --cc=holt@sgi.com \
    --cc=hugh@veritas.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=npiggin@suse.de \
    --cc=tee@sgi.com \
    --cc=torvalds@linux-foundation.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.