From: Fengguang Wu <wfg@mail.ustc.edu.cn>
To: Voluspa <lista1@comhem.se>
Cc: Andrew Morton <akpm@osdl.org>,
Valdis.Kletnieks@vt.edu, diegocg@gmail.com,
linux-kernel@vger.kernel.org
Subject: adaptive readahead overheads
Date: Thu, 8 Jun 2006 19:37:31 +0800 [thread overview]
Message-ID: <349766648.27054@ustc.edu.cn> (raw)
Message-ID: <20060608113731.GA5813@mail.ustc.edu.cn> (raw)
In-Reply-To: <20060608100444.5212162d.lista1@comhem.se>
I'd like to show some numbers on the pure software overheads come with
the adaptive readahead in daily operations.
SEQUENTIAL ACCESS OVERHEADS, or: PER-PAGE OVERHEADS
===================================================
SUMMARY
user sys cpu total
ARA 0.13 5.30 92.0% 5.87
STOCK 0.12 5.34 91.8% 5.91
It shows about 0.8% overhead.
They are mainly contributed by:
- debug/accounting code
- smooth aging accounting for the stateful method
- readahead hit feedback
However, if necessary, each of the obove can be seperated out
and made a kconfig option. They won't affect the main
functionality of ARA.
DETAILS
% time cp work/sparse /dev/null # repeat 5 times each
/proc/sys/vm/readahead_ratio = 1
cp work/sparse /dev/null 0.13s user 5.30s system 93% cpu 5.780 total
cp work/sparse /dev/null 0.13s user 5.29s system 92% cpu 5.847 total
cp work/sparse /dev/null 0.13s user 5.27s system 92% cpu 5.860 total
cp work/sparse /dev/null 0.13s user 5.32s system 91% cpu 5.961 total
cp work/sparse /dev/null 0.12s user 5.32s system 92% cpu 5.902 total
/proc/sys/vm/readahead_ratio = 100
cp work/sparse /dev/null 0.12s user 5.39s system 93% cpu 5.888 total
cp work/sparse /dev/null 0.13s user 5.32s system 92% cpu 5.923 total
cp work/sparse /dev/null 0.11s user 5.32s system 91% cpu 5.901 total
cp work/sparse /dev/null 0.12s user 5.35s system 92% cpu 5.952 total
cp work/sparse /dev/null 0.12s user 5.30s system 91% cpu 5.900 total
SMALL FILES OVERHEADS, or: PER-FILE OVERHEADS
=============================================
SUMMARY
user sys cpu total
ARA 405.90 326.54 97% 12:27.59
stock 407.53 322.02 97% 12:27.52
No obvious overhead.
There is overhead in calling readahead_close() on each file.
However, the small-io-go-all-down-to-lowlevel events are
sucessfully reduced, making up for the overhead.
DETAILS
In a qemu with 156M memory and a host system with 4G memory,
traverse a whole tree of 434M /usr, and do this repeatedly.
So that the 2+ runs do not involve true disk I/O.
# time find /usr -type f -exec md5sum {} \; >/dev/null
ARA
406.00s user 325.16s system 97% cpu 12:28.17 total
403.35s user 325.15s system 97% cpu 12:23.86 total
403.00s user 325.03s system 97% cpu 12:23.61 total
406.43s user 327.64s system 97% cpu 12:30.64 total
407.03s user 325.46s system 97% cpu 12:28.17 total
406.46s user 326.89s system 98% cpu 12:26.31 total
405.96s user 328.45s system 98% cpu 12:27.08 total
409.05s user 328.55s system 97% cpu 12:32.85 total
STOCK(vanilla kernel)
408.64s user 321.55s system 97% cpu 12:27.68 total
406.39s user 320.55s system 97% cpu 12:24.58 total
408.41s user 321.22s system 97% cpu 12:27.91 total
409.10s user 324.72s system 97% cpu 12:33.16 total
406.60s user 321.81s system 97% cpu 12:26.48 total
405.60s user 322.49s system 97% cpu 12:25.29 total
408.13s user 322.19s system 97% cpu 12:27.92 total
407.35s user 321.66s system 97% cpu 12:27.11 total
Thanks,
Wu
next prev parent reply other threads:[~2006-06-08 11:37 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-05-30 3:36 Adaptive Readahead V14 - statistics question Voluspa
[not found] ` <20060530064026.GA4950@mail.ustc.edu.cn>
2006-05-30 6:40 ` Wu Fengguang
2006-05-30 16:49 ` Valdis.Kletnieks
2006-05-31 21:06 ` Diego Calleja
2006-05-31 21:50 ` Voluspa
[not found] ` <20060601055143.GA5216@mail.ustc.edu.cn>
2006-06-01 5:51 ` Fengguang Wu
2006-06-01 6:35 ` Voluspa
2006-06-08 8:04 ` Voluspa
[not found] ` <20060608113731.GA5813@mail.ustc.edu.cn>
2006-06-08 11:37 ` Fengguang Wu [this message]
2006-06-08 12:25 ` adaptive readahead overheads Voluspa
[not found] ` <20060608123900.GA6885@mail.ustc.edu.cn>
2006-06-08 12:39 ` Fengguang Wu
2006-06-08 13:05 ` Andi Kleen
2006-06-08 14:00 ` Jens Axboe
[not found] ` <448493E9.9030203@samwel.tk>
[not found] ` <20060606033436.GB6071@mail.ustc.edu.cn>
2006-06-06 3:34 ` Adaptive Readahead V14 - statistics question Wu Fengguang
[not found] <20060604073415.GB5405@mail.ustc.edu.cn>
2006-06-04 7:34 ` [PATCH] readahead: initial method - expected read size - fix fastcall Fengguang Wu
2006-06-04 9:07 ` Andrew Morton
2006-06-04 9:25 ` Arjan van de Ven
2006-06-05 1:17 ` Voluspa
2006-06-05 8:00 ` Arjan van de Ven
[not found] ` <20060606022606.GA6071@mail.ustc.edu.cn>
2006-06-06 2:26 ` Fengguang Wu
2006-06-08 7:31 ` Voluspa
[not found] ` <20060608075722.GA5515@mail.ustc.edu.cn>
2006-06-08 7:57 ` Fengguang Wu
[not found] ` <20060606025728.GA6365@mail.ustc.edu.cn>
2006-06-06 2:57 ` Fengguang Wu
2006-06-08 7:43 ` Voluspa
[not found] ` <20060608081352.GB5515@mail.ustc.edu.cn>
2006-06-08 8:13 ` Fengguang Wu
2006-06-08 8:28 ` Voluspa
[not found] ` <20060608085055.GA5917@mail.ustc.edu.cn>
2006-06-08 8:50 ` Fengguang Wu
2006-06-08 10:04 ` Voluspa
[not found] ` <20060604121328.GA6686@mail.ustc.edu.cn>
2006-06-04 12:13 ` [PATCH] readahead: call scheme - fix fastcall readahead_cache_hit() Fengguang Wu
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=349766648.27054@ustc.edu.cn \
--to=wfg@mail.ustc.edu.cn \
--cc=Valdis.Kletnieks@vt.edu \
--cc=akpm@osdl.org \
--cc=diegocg@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lista1@comhem.se \
/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