public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: William Lee Irwin III <wli@holomorphy.com>
To: Linus Torvalds <torvalds@transmeta.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>,
	"Martin J. Bligh" <Martin.Bligh@us.ibm.com>,
	"M. Edward Borasky" <znmeb@aracnet.com>,
	linux-kernel@vger.kernel.org, andrea@suse.de, riel@surriel.com,
	akpm@zip.com.au
Subject: Re: Have the 2.4 kernel memory management problems on large machines been fixed?
Date: Wed, 22 May 2002 13:30:24 -0700	[thread overview]
Message-ID: <20020522203024.GZ2035@holomorphy.com> (raw)
In-Reply-To: <E17AaR0-0002QM-00@the-village.bc.nu> <Pine.LNX.4.33.0205221048570.23621-100000@penguin.transmeta.com>

On Wed, May 22, 2002 at 11:08:27AM -0700, Linus Torvalds wrote:
> The solution really is a "don't do it then" kind of thing. If you have 
> 5000 processes that all want to map a big shared memory area, and you 
> don't want to upgrade your CPU's, it's a _whole_ lot easier to just have a 
> magic "map_large_page()" system call, and start using the 2MB page support 
> of the x86.

map_large_page() sounds decent, though I don't really know how easy
it'll be to get apps to cooperate. I suspect it's easier when the
answer is "the app crashed" as opposed to "the kernel crashed".

Okay, someone told me "upgrade my cpu", and even though it was you,
here it is:

It still requires the cooperation of userspace to prevent the system from
being taken down. At the very least resource accounting and prevention
of the deadlock based on it are additionally required. Furthermore,
64-bit address spaces do not reduce the sizes of pagetables, and they
face the same memory exhaustion issues as 32-bit machines in the presence
of shared mappings performed by large numbers of tasks. A larger pagesize
just increases the number of processes and/or the size of the mapping
required to trigger this, where the size of the mapping is likely the
compensator on 64-bit machines. Last, but not least, "upgrade your cpu"
is a very strange (and perplexing) answer to a software problem, and
one with several well-known techniques for solving it, and it's
certainly not solved by upgrading the cpu. mmap a 16TB space in 4MB
pages with 8-byte pte's in 4K tasks on a 64GB 64-bit machine, with your
favorite number of cpu's (the cpu count is irrelevant; assume 1 cpu per
task if you wish, I certainly can't afford that), and it happens again.
As far as I can tell, it's only worse on 64-bit machines, and that has
motivated many of the 64-bit cpu vendors to use either pagetables which
are not radix trees or software-fill TLB's.


Cheers,
Bill

  parent reply	other threads:[~2002-05-22 20:30 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-05-22  6:51 2.4.19pre*: IO statistics in /proc/partitions corrupt Jochen Suckfuell
2002-05-22 14:00 ` Have the 2.4 kernel memory management problems on large machines been fixed? M. Edward Borasky
2002-05-22 14:08   ` bert hubert
2002-05-22 14:55     ` Alan Cox
2002-05-22 15:56       ` Martin J. Bligh
2002-05-22 16:23         ` Alan Cox
2002-05-22 21:46         ` Doug Ledford
2002-05-22 14:36   ` William Lee Irwin III
2002-05-22 15:44     ` Martin J. Bligh
2002-05-22 15:53       ` Martin J. Bligh
2002-05-22 16:07       ` William Lee Irwin III
2002-05-22 16:36         ` Martin J. Bligh
2002-05-22 17:21           ` Andrea Arcangeli
2002-05-22 18:18             ` Martin J. Bligh
2002-05-22 18:02         ` Alan Cox
2002-05-22 18:08           ` Linus Torvalds
2002-05-22 18:30             ` Rik van Riel
2002-05-22 18:40               ` Linus Torvalds
2002-05-22 18:48               ` Martin J. Bligh
2002-05-22 18:34             ` Have the 2.4 kernel memory management problems on large machines Alan Cox
2002-05-22 18:27               ` Linus Torvalds
2002-05-22 20:30             ` William Lee Irwin III [this message]
2002-05-22 21:18               ` Have the 2.4 kernel memory management problems on large machines been fixed? Martin J. Bligh
2002-05-22 21:23                 ` Linus Torvalds
2002-05-22 22:35                   ` Andrea Arcangeli
2002-05-22 22:44                   ` Martin J. Bligh
2002-05-28  2:08                 ` Wim Coekaerts
2002-05-31 20:39                   ` Andrea Arcangeli
2002-05-23 14:16             ` Bill Davidsen
2002-05-23 17:18               ` Linus Torvalds
2002-05-23 19:34                 ` Bill Davidsen
2002-05-23 19:46                   ` Linus Torvalds
2002-05-22 18:38           ` Martin J. Bligh
2002-05-22 17:50       ` Alan Cox
2002-05-22 17:54         ` J Sloan
2002-05-22 18:22           ` Have the 2.4 kernel memory management problems on large machines Alan Cox
2002-05-22 22:14             ` J Sloan
2002-05-22 18:24         ` Have the 2.4 kernel memory management problems on large machines been fixed? Martin J. Bligh
2002-05-22 22:05           ` Alan Cox
  -- strict thread matches above, loose matches on Subject: below --
2002-05-22 14:29 Alastair Stevens
     [not found] <E17AaR0-0002QM-00@the-village.bc.nu.suse.lists.linux.kernel>
     [not found] ` <Pine.LNX.4.33.0205221048570.23621-100000@penguin.transmeta.com.suse.lists.linux.kernel>
2002-05-22 20:23   ` Andi Kleen
2002-05-22 20:58     ` Linus Torvalds
2002-05-23 12:40       ` Mike Jagdis

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=20020522203024.GZ2035@holomorphy.com \
    --to=wli@holomorphy.com \
    --cc=Martin.Bligh@us.ibm.com \
    --cc=akpm@zip.com.au \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=andrea@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=riel@surriel.com \
    --cc=torvalds@transmeta.com \
    --cc=znmeb@aracnet.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