From: Andrea Arcangeli <andrea@suse.de>
To: "D . W . Howells" <dhowells@astarte.free-online.co.uk>
Cc: torvalds@transmeta.com, linux-kernel@vger.kernel.org,
dhowells@redhat.com, davem@redhat.com
Subject: Re: [PATCH] rw_semaphores, optimisations try #3
Date: Mon, 23 Apr 2001 23:34:35 +0200 [thread overview]
Message-ID: <20010423233435.N19938@athlon.random> (raw)
In-Reply-To: <01042321353400.00801@orion.ddi.co.uk>
In-Reply-To: <01042321353400.00801@orion.ddi.co.uk>; from dhowells@astarte.free-online.co.uk on Mon, Apr 23, 2001 at 09:35:34PM +0100
[-- Attachment #1: Type: text/plain, Size: 1623 bytes --]
On Mon, Apr 23, 2001 at 09:35:34PM +0100, D . W . Howells wrote:
> This patch (made against linux-2.4.4-pre6) makes a number of changes to the
> rwsem implementation:
>
> (1) Everything in try #2
>
> plus
>
> (2) Changes proposed by Linus for the generic semaphore code.
>
> (3) Ideas from Andrea and how he implemented his semaphores.
I benchmarked try3 on top of pre6 and I get this:
----------------------------------------------
RWSEM_GENERIC_SPINLOCK y in rwsem-2.4.4-pre6 + your latest #try3
rw
reads taken: 5842496
writes taken: 3016649
reads taken: 5823381
writes taken: 3006773
r1
reads taken: 13309316
reads taken: 13311722
r2
reads taken: 5010534
reads taken: 5023185
ro
reads taken: 3850228
reads taken: 3845954
w1
writes taken: 13012701
writes taken: 13021716
wo
writes taken: 1825789
writes taken: 1802560
----------------------------------------------
RWSEM_XCHGADD y in rwsem-2.4.4-pre6 + your latest #try3
rw
reads taken: 5789542
writes taken: 2989478
reads taken: 5801777
writes taken: 2995669
r1
reads taken: 16922653
reads taken: 16946132
r2
reads taken: 5650211
reads taken: 5647272
ro
reads taken: 4956250
reads taken: 4959828
w1
writes taken: 15431139
writes taken: 15439790
wo
writes taken: 813756
writes taken: 816005
graph updated attached. so in short my fast path is still quite faster (r1/w1),
slow path is comparable now (I still win in all tests but wo which is probably
the less interesting one in real life [write contention]). I still have room to
improve the wo test [write contention] by spending more icache btw but it
probably doesn't worth.
Andrea
[-- Attachment #2: rwsem2.png --]
[-- Type: image/png, Size: 7414 bytes --]
next prev parent reply other threads:[~2001-04-23 21:35 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-04-23 20:35 [PATCH] rw_semaphores, optimisations try #3 D.W.Howells
2001-04-23 21:34 ` Andrea Arcangeli [this message]
2001-04-24 4:56 ` rwsem benchmark [was Re: [PATCH] rw_semaphores, optimisations try #3] Andrea Arcangeli
2001-04-24 8:56 ` David Howells
2001-04-24 9:49 ` Andrea Arcangeli
2001-04-24 10:25 ` David Howells
2001-04-24 10:44 ` Andrea Arcangeli
2001-04-24 13:07 ` David Howells
2001-04-24 13:59 ` Andrea Arcangeli
2001-04-24 15:49 ` Linus Torvalds
2001-04-24 10:17 ` Andrea Arcangeli
2001-04-24 10:33 ` David Howells
2001-04-24 10:46 ` Andrea Arcangeli
2001-04-24 12:19 ` Andrea Arcangeli
2001-04-24 13:10 ` Andrea Arcangeli
2001-04-23 22:23 ` [PATCH] rw_semaphores, optimisations try #3 Linus Torvalds
2001-04-24 10:05 ` David Howells
2001-04-24 15:40 ` Linus Torvalds
2001-04-24 16:37 ` David Howells
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=20010423233435.N19938@athlon.random \
--to=andrea@suse.de \
--cc=davem@redhat.com \
--cc=dhowells@astarte.free-online.co.uk \
--cc=dhowells@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@transmeta.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.