public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@zip.com.au>
To: Linus Torvalds <torvalds@transmeta.com>
Cc: Daniel Phillips <phillips@arcor.de>,
	frankeh@watson.ibm.com, davidm@hpl.hp.com,
	David Mosberger <davidm@napali.hpl.hp.com>,
	"David S. Miller" <davem@redhat.com>,
	gh@us.ibm.com, Martin.Bligh@us.ibm.com, wli@holomorpy.com,
	linux-kernel@vger.kernel.org
Subject: Re: large page patch (fwd) (fwd)
Date: Fri, 09 Aug 2002 14:38:13 -0700	[thread overview]
Message-ID: <3D543645.8EBD2C36@zip.com.au> (raw)
In-Reply-To: Pine.LNX.4.44.0208090854001.1547-100000@home.transmeta.com

Linus Torvalds wrote:
> 
> ...
> Also, I think the jury (ie Andrew) is still out on whether rmap is worth
> it.

The most glaring problem has been the fork/exec/exit overhead.  

Anton had a program which did 10,000 forks and we were looking at
the time it took for them all to exit.  Initial rmap slowed the exitting
by 400%, and we now have that down to 70%.

I've been treating a gcc configure script as the most forky workload
which we're likely to care about.  rmap slowed configure down by 7%
and the work Daniel and I have done has reduced that to 2.8%.

(Not that rmap is the biggest problem for configure:

c013c07c 176      1.93046     __page_add_rmap         
c013c194 225      2.46792     __page_remove_rmap      
c012a274 236      2.58857     free_one_pgd            
c012a7f8 405      4.44225     __constant_c_and_count_memset 
c01055fc 917      10.0581     poll_idle               
c012a6cc 1253     13.7436     __constant_memcpy       

It's that i387 struct copy.)

There don't seem to be any catastrophic failure modes here, and
I expect tests could be concocted against the virtual scan which
_do_ have gross performance problems.

So.  Not great, but OK if the reverse map gives us something back.
And I don't agree that the quality of page replacement is all too
hard to measure.  It's just that nobody has got off their butt
and tried to measure it.

The other worry is the ZONE_NORMAL space consumption of pte_chains.
We've halved that, but it will still make high sharing levels
unfeasible on the big ia32 machines.  We are dependant upon large
pages to solve that problem.  (Resurrection of pte_highmem is in
progress, but it doesn't work yet).

I don't see a sufficient case for reverting rmap at present, and
it's time to move on with other work.  There is nothing in the
queue at present which _requires_ rmap, so if we do hit a
showstopper then going back to a virtual scan will be feasible
for at least the next month.

Two points:

1) It would be most useful to have *some* damn test on the table
   which works better with 2.4-rmap, along with a believable
   description of why it's better.

2) If would be most irritating to reach 2.6.5 before discovering
   that there is some terrible resource consumption problem
   arising from the reverse map.  Now is a good time for people
   with large machines to be testing 2.5, please.  This is 
   happening, and I expect we'll be in better shape in a month
   or so.

  parent reply	other threads:[~2002-08-09 21:36 UTC|newest]

Thread overview: 110+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <E17ahdi-0001RC-00@w-gerrit2>
2002-08-02 19:34 ` large page patch (fwd) (fwd) Linus Torvalds
2002-08-03  3:19   ` David Mosberger
2002-08-03  3:32     ` Linus Torvalds
2002-08-03  4:17       ` David Mosberger
2002-08-03  4:26         ` Linus Torvalds
2002-08-03  4:39           ` David Mosberger
2002-08-03  5:20             ` David S. Miller
2002-08-03 17:35               ` Linus Torvalds
2002-08-03 19:30                 ` David Mosberger
2002-08-03 19:43                   ` Linus Torvalds
2002-08-03 21:18                     ` David Mosberger
2002-08-03 21:54                       ` Hubertus Franke
2002-08-04  0:35                         ` David S. Miller
2002-08-04  2:25                           ` David Mosberger
2002-08-04 17:19                             ` Hubertus Franke
2002-08-09 15:20                               ` Daniel Phillips
2002-08-09 15:56                                 ` Linus Torvalds
2002-08-09 16:15                                   ` Daniel Phillips
2002-08-09 16:31                                     ` Rik van Riel
2002-08-09 18:08                                       ` Daniel Phillips
2002-08-09 16:51                                     ` Linus Torvalds
2002-08-09 17:11                                       ` Daniel Phillips
2002-08-09 16:27                                   ` Rik van Riel
2002-08-09 16:52                                     ` Linus Torvalds
2002-08-09 17:40                                       ` yodaiken
2002-08-09 19:15                                         ` Rik van Riel
2002-08-09 21:20                                           ` Linus Torvalds
2002-08-09 21:19                                         ` Marcin Dalecki
2002-08-09 17:46                                       ` Bill Rugolsky Jr.
2002-08-12  9:23                                     ` Helge Hafting
2002-08-13  3:15                                       ` Bill Davidsen
2002-08-13  3:31                                         ` Rik van Riel
2002-08-13  7:28                                         ` Helge Hafting
2002-08-09 21:38                                   ` Andrew Morton [this message]
2002-08-10 18:20                                     ` Eric W. Biederman
2002-08-10 18:59                                       ` Daniel Phillips
2002-08-10 19:55                                       ` Rik van Riel
2002-08-10 19:54                                         ` Eric W. Biederman
2002-08-09 18:32                                 ` Hubertus Franke
2002-08-09 18:43                                   ` Daniel Phillips
2002-08-09 19:17                                     ` Hubertus Franke
2002-08-11 20:30                                 ` Alan Cox
2002-08-11 22:33                                   ` Daniel Phillips
2002-08-11 22:55                                     ` Linus Torvalds
2002-08-11 22:56                                       ` Linus Torvalds
2002-08-11 23:36                                         ` William Lee Irwin III
2002-08-12  0:46                                         ` Alan Cox
2002-08-11 23:42                                           ` Rik van Riel
2002-08-11 23:50                                             ` Larry McVoy
2002-08-12  8:22                                               ` Daniel Phillips
2002-08-13  8:40                                                 ` Rob Landley
2002-08-13 15:06                                                   ` Alan Cox
2002-08-13 11:36                                                     ` Rob Landley
2002-08-13 16:51                                                       ` Linus Torvalds
2002-08-13 12:53                                                         ` Rob Landley
2002-08-13 17:14                                                         ` Ruth Ivimey-Cook
2002-08-13 17:29                                                         ` Rik van Riel
2002-08-13 13:18                                                           ` Rob Landley
2002-08-13 18:32                                                             ` Linus Torvalds
2002-08-13 13:50                                                               ` Rob Landley
2002-08-13 17:45                                                           ` Alexander Viro
2002-08-13 17:55                                                           ` Linus Torvalds
2002-08-13 17:59                                                             ` Rik van Riel
2002-08-13 13:35                                                               ` Rob Landley
2002-08-13 19:12                                                             ` Daniel Phillips
2002-08-22 12:03                                                           ` bill davidsen
     [not found]                                                       ` <Pine.LNX.4.44.0208130942130.7411-100000@home.transmeta.com >
2002-08-13 18:46                                                         ` large page patch (fwd) Mike Galbraith
2002-08-11 23:44                                           ` large page patch (fwd) (fwd) Daniel Phillips
2002-08-13  8:51                                             ` Rob Landley
2002-08-13 16:47                                               ` Daniel Phillips
2002-08-13 13:09                                                 ` Rob Landley
2002-08-11 23:15                                       ` Larry McVoy
2002-08-12  1:26                                         ` Linus Torvalds
2002-08-12  5:05                                           ` Larry McVoy
2002-08-12 10:31                                           ` Alan Cox
2002-08-04  0:28                 ` David S. Miller
2002-08-04 17:31                   ` Hubertus Franke
2002-08-04 18:38                     ` Linus Torvalds
2002-08-04 19:23                       ` Andrew Morton
2002-08-04 19:28                         ` Linus Torvalds
2002-08-05  5:42                           ` David S. Miller
2002-08-04 19:30                       ` Hubertus Franke
2002-08-04 20:23                         ` William Lee Irwin III
2002-08-05 16:59                         ` David Mosberger
2002-08-05 17:21                           ` Hubertus Franke
2002-08-05 21:10                             ` Jamie Lokier
2002-08-04 19:41                       ` Rik van Riel
2002-08-05  5:40                     ` David S. Miller
2002-08-03 18:41             ` Hubertus Franke
2002-08-03 19:39               ` Linus Torvalds
2002-08-04  0:32                 ` David S. Miller
2002-08-03 19:41               ` David Mosberger
2002-08-03 20:53                 ` Hubertus Franke
2002-08-03 21:26                   ` David Mosberger
2002-08-03 21:50                     ` Hubertus Franke
2002-08-04  0:34                   ` David S. Miller
2002-08-04  0:31                 ` David S. Miller
2002-08-04 17:25                   ` Hubertus Franke
     [not found] <200208041331.24895.frankeh@watson.ibm.com.suse.lists.linux.kernel>
     [not found] ` <Pine.LNX.4.44.0208041131380.10314-100000@home.transmeta.com.suse.lists.linux.kernel>
     [not found]   ` <3D4D7F24.10AC4BDB@zip.com.au.suse.lists.linux.kernel>
2002-08-04 20:20     ` Andi Kleen
2002-08-04 23:51       ` Eric W. Biederman
2002-08-05 23:30 Seth, Rohit
2002-08-06  5:01 ` David Mosberger
2002-08-06  4:58   ` David S. Miller
2002-08-06  5:19     ` David Mosberger
2002-08-06  5:08       ` David S. Miller
2002-08-06  5:32         ` David Mosberger
2002-08-06 19:11 ` Hubertus Franke
  -- strict thread matches above, loose matches on Subject: below --
2002-08-06 20:38 Luck, Tony
2002-08-06 21:03 ` Hubertus Franke
2002-08-09 17:51 Seth, Rohit

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=3D543645.8EBD2C36@zip.com.au \
    --to=akpm@zip.com.au \
    --cc=Martin.Bligh@us.ibm.com \
    --cc=davem@redhat.com \
    --cc=davidm@hpl.hp.com \
    --cc=davidm@napali.hpl.hp.com \
    --cc=frankeh@watson.ibm.com \
    --cc=gh@us.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=phillips@arcor.de \
    --cc=torvalds@transmeta.com \
    --cc=wli@holomorpy.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