public inbox for linux-arch@vger.kernel.org
 help / color / mirror / Atom feed
From: Andi Kleen <ak@suse.de>
To: Christoph Lameter <clameter@sgi.com>
Cc: David Howells <dhowells@redhat.com>,
	Nick Piggin <nickpiggin@yahoo.com.au>,
	Arjan van de Ven <arjan@infradead.org>,
	Dong Feng <middle.fengdong@gmail.com>,
	Paul Mackerras <paulus@samba.org>,
	linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org
Subject: Re: Why Semaphore Hardware-Dependent?
Date: Tue, 29 Aug 2006 20:18:01 +0200	[thread overview]
Message-ID: <200608292018.01602.ak@suse.de> (raw)
In-Reply-To: <Pine.LNX.4.64.0608291033380.19174@schroedinger.engr.sgi.com>

On Tuesday 29 August 2006 19:36, Christoph Lameter wrote:
> On Tue, 29 Aug 2006, Andi Kleen wrote:
> 
> > On Tuesday 29 August 2006 17:56, Christoph Lameter wrote:
> > > On Tue, 29 Aug 2006, David Howells wrote:
> > > 
> > > > Because i386 (and x86_64) can do better by using XADDL/XADDQ.
> > > 
> > > And Ia64 would like to use fetchadd....
> > 
> > This might be a dumb question, but I would expect even on altix 
> > with lots of parallel faulting threads rwsem performance be basically
> > limited by aquiring the cache line and releasing it later to another CPU.
> 
> Correct. However, a cmpxchg may have to acquire that cacheline multiple 
> times in a highly contented situation.

Hmm, thinking about it that sounds unlikely because only the first and the last
user should touch the rwsem head. But ok it might be possible.

BTW maybe it would be a good idea to switch the wait list to a hlist,
then the last user in the queue wouldn't need to 
touch the cache line of the head. Or maybe even a single linked
list then some more cache bounces might be avoidable.

That is really why we need a single C implementation. If we had that 
such optimizations would be pretty easy. Without it it's a big mess.

> We have long tuned that portion of the code and therefore we are 
> skeptical of changes. But if we cannot measure a difference to a 
> generic implemenentation then it would be okay.

Would you be willing to run numbers comparing them? (or provide a benchmark?) 

-Andi

  reply	other threads:[~2006-08-29 18:18 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <a2ebde260608271222x2b51693fnaa600965fcfaa6d2@mail.gmail.com>
     [not found] ` <1156750249.3034.155.camel@laptopd505.fenrus.org>
2006-08-29  1:18   ` Why Semaphore Hardware-Dependent? Nick Piggin
2006-08-29  6:07     ` Andi Kleen
2006-09-13 17:54       ` Nick Piggin
2006-08-29 10:05     ` David Howells
2006-08-29 10:56       ` Andi Kleen
2006-08-29 17:40         ` Andrew Morton
2006-08-29 19:10         ` Benjamin LaHaise
2006-08-29 15:56       ` Christoph Lameter
2006-08-29 16:20         ` Ralf Baechle
2006-08-29 16:25           ` David Howells
2006-08-29 16:28             ` Christoph Lameter
2006-08-29 16:57               ` David Howells
2006-08-29 16:53             ` Ralf Baechle
2006-08-29 16:58               ` Geert Uytterhoeven
2006-08-29 17:22         ` Andi Kleen
2006-08-29 17:36           ` Christoph Lameter
2006-08-29 18:18             ` Andi Kleen [this message]
2006-08-29 18:30               ` David Howells
2006-08-29 18:33                 ` Andi Kleen
2006-08-29 18:56                   ` David Howells
2006-08-29 18:41               ` Christoph Lameter
2006-09-13 18:04       ` Nick Piggin
2006-09-13 18:07         ` Christoph Lameter
2006-09-13 18:13           ` Nick Piggin
2006-09-13 18:16             ` Christoph Lameter
2006-09-13 18:50         ` David Howells
2006-09-13 19:25           ` Nick Piggin
2006-09-14 11:41             ` David Howells
2006-09-14 15:27               ` Nick Piggin
2006-09-14 15:38                 ` Nick Piggin
2006-09-15  8:59                 ` 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=200608292018.01602.ak@suse.de \
    --to=ak@suse.de \
    --cc=arjan@infradead.org \
    --cc=clameter@sgi.com \
    --cc=dhowells@redhat.com \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=middle.fengdong@gmail.com \
    --cc=nickpiggin@yahoo.com.au \
    --cc=paulus@samba.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