From: Andrea Arcangeli <andrea@suse.de>
To: Victor Yodaiken <yodaiken@fsmlabs.com>
Cc: Ingo Molnar <mingo@elte.hu>, Benjamin LaHaise <bcrl@redhat.com>,
Rik van Riel <riel@conectiva.com.br>,
linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: mempool design
Date: Mon, 17 Dec 2001 17:10:18 +0100 [thread overview]
Message-ID: <20011217171018.D2431@athlon.random> (raw)
In-Reply-To: <20011215134711.A30548@redhat.com> <Pine.LNX.4.33.0112152235340.26748-100000@localhost.localdomain> <20011217160426.U2431@athlon.random> <20011217083802.A25219@hq2>
In-Reply-To: <20011217083802.A25219@hq2>; from yodaiken@fsmlabs.com on Mon, Dec 17, 2001 at 08:38:02AM -0700
On Mon, Dec 17, 2001 at 08:38:02AM -0700, Victor Yodaiken wrote:
> On Mon, Dec 17, 2001 at 04:04:26PM +0100, Andrea Arcangeli wrote:
> > If somebody wants such 1% of ram back he can buy another dimm of ram and
> > plug it into his hardware. I mean such 1% of ram lost is something that
> > can be solved by throwing a few euros into the hardware (and people buys
> > gigabyte boxes anyways so they don't need all of the 100% of ram), the
> > other complexy cannot be solved with a few euros, that can only be
> > solved with lots braincycles and it would be a maintainance work as
> > well. Abstraction and layering definitely helps cutting down the
> > complexity of the code.
>
> I agree with all your arguments up to here. But being able to run Linux
> in 4Meg or even 8M is important to a very large class of applications.
> Even if you are concerned mostly about bigger systems, making sure NT
> remains at a serious disadvantage in the embedded boxes is key because
> MS will certainly hope to use control of SOHO routers, set-top boxes
> etc to set "standards" that will improve their competitivity in desktop
> and beyond. It would be a delicious irony if MS were able to re-use
> against Linux the "first control low end" strategy that allowed them
> vaporize the old line UNIXes, but irony is not as satisfying as winning.
I may been misleading mentionin a 1%, the 1% doesn't mean a 1% of ram is
wasted (otherwise adding a new dimm couldn't solve it because you would
waste even more ram :). As Ingo also mentioned, it's a fixed amount of
ram that is wasted in the mempool.
For very low end machines you can simply define a very small mempool, it
will potentially reduce scalability during heavy I/O with mem shortage
but it will waste very very little ram (potentially in the simpler case
you only need 1 entry in the pool to guarantee deadlock avoidance). And
there's nearly nothing to worry about, we always had those mempools
since 2.0 at least, look at buffer.c and search for the async argument
to the functions allocating the bhs. Now with the bio we have more
mempools because lots of people still uses the bh, so in the short term
(before 2.6) we can waste some more byte, but once the bh and
ll_rw_block will be dead most of the bio overhead will go away and we'll
only hold the advantages of doing I/O in more than one page with a
single metadata entity (2.6). The other obvious advantage of the mempool
code is that we share it across all the mempool users, so we'll save
some byte of icache too by avoiding code duplication compared to 2.4 too :).
Infact the solution 2) cannot solve your 4M/8M boot problem either,
since such memory would need to be resrved anyways, and it could act
only as clean filesystem cache. So in short the only difference between 1) and
2) would be a little more of fs cache in solution 2) but with an huge
implementation complexity and local_save_irq all over the place in the
VM so with lower performance. It wouldn't make a difference in
functionality (boot or not boot, this is the real problem you worry
about :).
Andrea
next prev parent reply other threads:[~2001-12-17 16:11 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-12-15 19:40 mempool design Ingo Molnar
2001-12-15 18:47 ` Benjamin LaHaise
2001-12-15 22:18 ` Ingo Molnar
2001-12-17 15:04 ` Andrea Arcangeli
2001-12-17 15:38 ` Victor Yodaiken
2001-12-17 16:10 ` Andrea Arcangeli [this message]
2001-12-17 17:33 ` kernel panic Geoffrey
2001-12-18 16:55 ` mempool design Ingo Molnar
2001-12-18 16:06 ` Victor Yodaiken
2001-12-17 17:21 ` Ingo Molnar
2001-12-17 15:58 ` Andrea Arcangeli
2001-12-18 0:32 ` Rik van Riel
2001-12-18 15:21 ` Alan Cox
-- strict thread matches above, loose matches on Subject: below --
2001-12-15 9:01 Ingo Molnar
2001-12-15 15:39 ` Rik van Riel
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=20011217171018.D2431@athlon.random \
--to=andrea@suse.de \
--cc=bcrl@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=riel@conectiva.com.br \
--cc=yodaiken@fsmlabs.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