From: Rik van Riel <riel@surriel.com>
To: Al Boldi <a1426z@gawab.com>
Cc: linux-kernel@vger.kernel.org
Subject: Re: [RFC] kswapd: Kernel Swapper performance
Date: Sat, 28 Oct 2006 17:43:56 -0400 [thread overview]
Message-ID: <4543CF1C.7070604@surriel.com> (raw)
In-Reply-To: <200610282031.17451.a1426z@gawab.com>
Al Boldi wrote:
> One thing that has improved in 2.6, wrt 2.4, is swapper performance. And the
> difference isn't small either: ~5 fold increase in swapin performance.
>
> But swapin performance still lags swapout performance by 50%, which is a bit
> odd, considering swapin to be a read from disk, usually faster, and swapout
> to be a write to disk, usually slower.
Ahhhhhh, but there's a catch...
You can queue up multiple writes, because the data you want
to write to disk is already in memory.
However, at swapin time you need to read the first bit of
data from disk, after which the program can continue, and
only when the next page fault happens you know what data
to read in next.
Linux does some swapin clustering, but there simply is no
way to know which data will be needed next.
This means reads are serialized and synchronous wrt. program
execution, while writes can overlap and be done asynchronously.
It's a miracle reads are going at 50% of the speed of writes...
> Improving this ratio could possibly yield a dramatic improvement in system
> performance under memory load (think tmpfs/swsusp/...).
Let me know when you figure out how to look into the future.
Actually, Keir Fraser and Fay Chang came up with a cool trick.
"Operating System I/O Speculation:
How Two Invocations Are Faster Than One"
http://www.usenix.org/publications/library/proceedings/usenix03/tech/fraser.html
It is somewhat complex though...
--
Who do you trust?
The people with all the right answers?
Or the people with the right questions?
next prev parent reply other threads:[~2006-10-28 21:43 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-10-28 17:31 [RFC] kswapd: Kernel Swapper performance Al Boldi
2006-10-28 21:43 ` Rik van Riel [this message]
2006-10-30 15:45 ` Al Boldi
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=4543CF1C.7070604@surriel.com \
--to=riel@surriel.com \
--cc=a1426z@gawab.com \
--cc=linux-kernel@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox