Re: queued spinlock code and results

From: Linus Torvalds
Date: Mon Jul 09 2007 - 15:55:28 EST




On Mon, 9 Jul 2007, Davide Libenzi wrote:
>
> The always-lfence instruction in vadd-lock really is painfull though.
> If numbers are close, and given that spinlock size considering structure
> alignments should not matter much, wouldn't it be better to use a double
> short and remove the 256 CPUs cap?

On x86? No.

There are no issues with the 255-CPU cap on 32-bit x86. It's just not
relevant to anybody. So the _only_ thing that matters is speed and to a
secondary degree size.

On x86-64, things are slightly different, and we would want to have at
least the _capability_ to do 16 bits. So there might be a (somewhat weak)
argument in favor of trying to share code.

But even then, size and performance are really the only things that
matter, and if the 8/16-bit version is no slower, then I'd pick that by
default, and suggest the 16/32-bit one to be enabled by CONFIG_MAX_CPU's
being >=256 (at which point you can share the code with x86 anyway, since
that just becomes the <256 cpu case).

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