LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Andrew Morton <akpm@linux-foundation.org>
To: Christoph Lameter <clameter@sgi.com>
Cc: linux-kernel@vger.kernel.org
Subject: Re: Remove constructor from buffer_head
Date: Fri, 4 May 2007 13:42:12 -0700 [thread overview]
Message-ID: <20070504134212.c18d2d65.akpm@linux-foundation.org> (raw)
In-Reply-To: <Pine.LNX.4.64.0705032007540.16627@schroedinger.engr.sgi.com>
On Thu, 3 May 2007 20:08:41 -0700 (PDT)
Christoph Lameter <clameter@sgi.com> wrote:
> Performance tests show a slight improvements in netperf (not a
> strong case for a performance improvement but removing the
> constructor has definitely no negative impact so why keep
> this around?).
>
> TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to localhost (127.0.0.1) port 0 AF_INET
> Recv Send Send
> Socket Socket Message Elapsed
> Size Size Size Time Throughput
> bytes bytes bytes secs. 10^6bits/sec
>
> Before:
> 87380 16384 16384 10.01 6026.04
> 87380 16384 16384 10.01 5992.17
> 87380 16384 16384 10.01 6071.23
>
> After:
> 87380 16384 16384 10.01 6090.20
> 87380 16384 16384 10.01 6078.3
> 87380 16384 16384 10.00 6013.52
>
>
> Signed-off-by: Christoph Lameter <clameter@sgi.com>
>
> ---
> fs/buffer.c | 22 ++++------------------
So I benchmarked this by repeatedly extending (via write()) and truncating
a 10MB file, on ext2. Using create-delete.c from
http://www.zip.com.au/~akpm/linux/patches/stuff/ext3-tools.tar.gz
Machine is a fast 2x4 core Woodcrest. CONFIG_SLAB=y
The command used was
time create-delete -s $((16 * 1024 * 1024)) -n 300 foo
which will allocate and free 300*4096 buffer_heads.
With patch:
akpm2:/mnt/sda2> time create-delete -s $((16 * 1024 * 1024)) -n 300 foo
create-delete -s $((16 * 1024 * 1024)) -n 300 foo 0.00s user 4.56s system 99% cpu 4.565 total
akpm2:/mnt/sda2> time create-delete -s $((16 * 1024 * 1024)) -n 300 foo
create-delete -s $((16 * 1024 * 1024)) -n 300 foo 0.00s user 4.60s system 99% cpu 4.612 total
akpm2:/mnt/sda2> time create-delete -s $((16 * 1024 * 1024)) -n 300 foo
create-delete -s $((16 * 1024 * 1024)) -n 300 foo 0.00s user 4.60s system 99% cpu 4.602 total
akpm2:/mnt/sda2> time create-delete -s $((16 * 1024 * 1024)) -n 300 foo
create-delete -s $((16 * 1024 * 1024)) -n 300 foo 0.00s user 4.56s system 99% cpu 4.567 total
akpm2:/mnt/sda2> time create-delete -s $((16 * 1024 * 1024)) -n 300 foo
create-delete -s $((16 * 1024 * 1024)) -n 300 foo 0.00s user 4.59s system 95% cpu 4.824 total
Without patch:
akpm2:/mnt/sda2> time create-delete -s $((16 * 1024 * 1024)) -n 300 foo
create-delete -s $((16 * 1024 * 1024)) -n 300 foo 0.00s user 4.42s system 99% cpu 4.419 total
akpm2:/mnt/sda2> time create-delete -s $((16 * 1024 * 1024)) -n 300 foo
create-delete -s $((16 * 1024 * 1024)) -n 300 foo 0.00s user 4.42s system 99% cpu 4.421 total
akpm2:/mnt/sda2> time create-delete -s $((16 * 1024 * 1024)) -n 300 foo
create-delete -s $((16 * 1024 * 1024)) -n 300 foo 0.00s user 4.42s system 99% cpu 4.427 total
akpm2:/mnt/sda2> time create-delete -s $((16 * 1024 * 1024)) -n 300 foo
create-delete -s $((16 * 1024 * 1024)) -n 300 foo 0.00s user 4.42s system 99% cpu 4.417 total
akpm2:/mnt/sda2> time create-delete -s $((16 * 1024 * 1024)) -n 300 foo
create-delete -s $((16 * 1024 * 1024)) -n 300 foo 0.00s user 4.42s system 99% cpu 4.435 total
So the patch took the average system time from 4.42 seconds up to 4.582
seconds. Nice slowdown!
It could just be the usual inter-kernel-build noise, dunno.
I'd investigate further, but someone has gone and broken oprofile.
next prev parent reply other threads:[~2007-05-04 20:42 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-04 3:08 Christoph Lameter
2007-05-04 3:21 ` Andrew Morton
2007-05-04 3:34 ` Christoph Lameter
2007-05-04 4:37 ` Andrew Morton
2007-05-04 4:34 ` Christoph Lameter
2007-05-04 6:35 ` William Lee Irwin III
2007-05-04 16:05 ` Christoph Lameter
2007-05-04 20:42 ` Andrew Morton [this message]
2007-05-04 21:33 ` Andrew Morton
2007-05-04 23:22 ` Andi Kleen
2007-05-04 23:45 ` Andrew Morton
2007-05-05 9:31 ` Andi Kleen
2007-05-13 20:38 ` oprofile broken in 2.6.21 SMP (was Re: Remove constructor from buffer_head) Benjamin LaHaise
2007-05-15 3:12 ` Andrew Morton
2007-05-04 21:42 ` Remove constructor from buffer_head Christoph Lameter
2007-05-04 21:47 ` Andrew Morton
2007-05-04 21:52 ` Chuck Ebbert
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=20070504134212.c18d2d65.akpm@linux-foundation.org \
--to=akpm@linux-foundation.org \
--cc=clameter@sgi.com \
--cc=linux-kernel@vger.kernel.org \
--subject='Re: Remove constructor from buffer_head' \
/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
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).