Hyperthreading and SMP

Kuba Ober kuba at mareimbrium.org
Mon Jan 3 12:15:00 CST 2005

On wtorek 21 grudzień 2004 05:36 pm, Kenneth Porter wrote:
> --On Tuesday, December 21, 2004 4:57 PM -0500 Kuba Ober
> <kuba at mareimbrium.org> wrote:
> > What kernel version were you running under? Could that be related at all
> > to  thread CPU affinity under 2.6?
> 2.6.8-1.521smp on Fedora Core 2. What's the issue you're referring to?

Well, IIRC most 2.6 kernels use the O(1) scheduler by default, and that 
scheduler has strong CPU affinity. But since in your case locking the process 
helps, this isn't a problem.

I suspect that something else is going on that probably has little to do with 
wine but a lot to do with that application's memory access patterns. 
Hyperthreading has known cases in which if memory is the contention source, 
running two threads on same physical CPU but separate logical ones will slow 
things down.

Since wine is a multi-process thingo, probably the application process and 
wineserver have been thrasing that single CPU's caches by trying to run 
concurrently on two logical CPUs. If you have SMP HT machine, it'd be safest 
methinks to run the app locked to one logical CPU on given physical CPU, and 
the wineserver on either the same logical CPU or on a different physical CPU.

I hope I make sense :)

Cheers, Kuba Ober

More information about the wine-devel mailing list