From: Matthew Dillon <dillon@apollo.backplane.com>
To: Rik van Riel <riel@conectiva.com.br>
Cc: linux-mm@kvack.org
Subject: Re: [RFC] 2.3/4 VM queues idea
Date: Wed, 24 May 2000 13:57:19 -0700 (PDT) [thread overview]
Message-ID: <200005242057.NAA77059@apollo.backplane.com> (raw)
In-Reply-To: <Pine.LNX.4.21.0005241458250.24993-100000@duckman.distro.conectiva>
Virtual page scanning will help with clustering, but unless you
already have a good page candidate to base your virtual scan on
you will not be able to *find* a good page candidate to base the
clustering around. Or at least not find one easily. Virtual
page scanning has severe scaleability problems over physical page
scanning. For example, what happens when you have an oracle database
running with a hundred independant (non-threaded) processes mapping
300MB+ of shared memory?
On the swap allocation -- I think there are several approaches to this
problem, all equally viable. If you do not do object clustering for
pageouts then allocating the swap at unmap time is viable -- due to
the time delay between unmap and the actual I/O & page-selection
for cleaning, your pageouts will be slower but you *will* get locality
of reference on your pageins (pageins will be faster).
If you do object clustering then you get the benefit of both worlds.
FreeBSD delays swap allocation until it actually decides to swap
something, which means that it can take a collection of unrelated
pages to be cleaned and assign contiguous swap to them. This results
in a very fast, deterministic pageout capability but, without clustering,
there will be no locality of reference for pageins. So pageins would
be slow.
With clustering, however, the at-swap-time allocation tends to have more
locality of reference due to there being additional nearby pages
selected from the objects in the mix. It still does not approach the
performance you can get from an object-oriented swap allocation scheme,
but at least it would no longer be considered 'slow'.
So it can be a toss-up. I don't think *anyone* (linux, freebsd, solaris,
or anyone else) has yet written the definitive swap allocation algorithm!
-Matt
Matthew Dillon
<dillon@backplane.com>
--
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.eu.org/Linux-MM/
next prev parent reply other threads:[~2000-05-24 20:57 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2000-05-24 16:16 Matthew Dillon
2000-05-24 18:51 ` Rik van Riel
2000-05-24 20:57 ` Matthew Dillon [this message]
2000-05-24 22:44 ` Rik van Riel
2000-05-25 9:52 ` Jamie Lokier
2000-05-25 16:18 ` Matthew Dillon
2000-05-25 16:50 ` Jamie Lokier
2000-05-25 17:17 ` Rik van Riel
2000-05-25 17:53 ` Matthew Dillon
2000-05-26 11:38 ` Jamie Lokier
2000-05-26 11:08 ` Stephen C. Tweedie
2000-05-26 11:22 ` Jamie Lokier
2000-05-26 13:15 ` Stephen C. Tweedie
2000-05-26 14:31 ` Jamie Lokier
2000-05-26 14:38 ` Stephen C. Tweedie
2000-05-26 15:59 ` Matthew Dillon
2000-05-26 16:36 ` Jamie Lokier
2000-05-26 16:40 ` Stephen C. Tweedie
2000-05-26 16:55 ` Matthew Dillon
2000-05-26 17:05 ` Jamie Lokier
2000-05-26 17:35 ` Matthew Dillon
2000-05-26 17:46 ` Stephen C. Tweedie
2000-05-26 17:02 ` Jamie Lokier
2000-05-26 17:15 ` Stephen C. Tweedie
2000-05-26 20:41 ` Jamie Lokier
2000-05-28 22:42 ` Stephen Tweedie
2000-05-26 15:45 ` Matthew Dillon
2000-05-26 12:04 ` Rik van Riel
-- strict thread matches above, loose matches on Subject: below --
2000-05-24 19:37 Mark_H_Johnson
2000-05-24 20:35 ` Matthew Dillon
2000-05-24 15:11 Rik van Riel
2000-05-24 22:44 ` Juan J. Quintela
2000-05-24 23:32 ` Rik van Riel
2000-05-26 11:11 ` Stephen C. Tweedie
2000-05-26 11:49 ` 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=200005242057.NAA77059@apollo.backplane.com \
--to=dillon@apollo.backplane.com \
--cc=linux-mm@kvack.org \
--cc=riel@conectiva.com.br \
/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