lkml.org 
[lkml]   [2007]   [Jun]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [BUG] long freezes on thinkpad t60
Linus Torvalds wrote:
>
> On Tue, 26 Jun 2007, Nick Piggin wrote:
>
>>Hmm, not that I have a strong opinion one way or the other, but I
>>don't know that they would encourage bad code. They are not going to
>>reduce latency under a locked section, but will improve determinism
>>in the contended case.
>
>
> xadd really generally *is* slower than an add. One is often microcoded,
> the other is not.

Oh. I found xadd to be not hugely slower on my P4, but it was a little
bit.


> But the real problem is that your "unlock" sequence is now about two
> orders of magnitude slower than it used to be. So it used to be that a
> spinlocked sequence only had a single synchronization point, now it has
> two. *That* is really bad, and I guarantee that it makes your spinlocks
> effectively twice as slow for the non-contended parts.

I don't know why my unlock sequence should be that much slower? Unlocked
mov vs unlocked add? Definitely in dumb micro-benchmark testing it wasn't
twice as slow (IIRC).


> But your xadd thing might be worth looking at, just to see how expensive
> it is. As an _alternative_ to spinlocks, it's certainly viable.
>
> (Side note: why make it a word? Word operations are slower on many x86
> implementations, because they add yet another prefix. You only need a
> byte)

No real reason I guess. I'll change it.

--
SUSE Labs, Novell Inc.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-06-27 07:25    [W:0.148 / U:0.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site