HyperThreading in Cluster

Will Dinkel wdinkel at atipa.com
Fri Jun 6 12:39:20 EDT 2003


As far as I know, the majority of the kernels that you will find in
today's Linux distributions are HyperThreading "aware", but not
HyperThreading "intelligent".  As you mention below, the scheduler
doesn't know that allocating two compute threads to a single processor
is a BAD thing, especially when it leaves the other physical processor
idle.

Ingo Molnar has a patch to the latest 2.5.X kernel releases that
addresses this issue.  He uses per-physical-cpu runqueues and load
balancing to ensure that the system load is correctly balanced between
physical and virtual cpus.  It's experimental, updated fairly regularly,
delivers promising results, and can be found here:
http://people.redhat.com/mingo/O(1)-scheduler/

On Thu, 2003-06-05 at 15:03, Orion Poplawski wrote:
> This is partly prompted by Steven Timm's recent comment about 
> HyperThreading, as well as something I read in a magazine the other day 
> stating the HPC clusters need to run with HyperThreading off.  Can 
> anyone shed more light on the current status of HyperThreading in 
> parallel computing? 
> 
> I could see where allocating two compute threads to a single processor 
> might bog things down (swapping data sets in/out of cache, etc.),  but 
> it would seem ideal to allocate one compute thread per processor, and 
> let the other virtual processor help with OS/interrupt type operations.  
> Does the linux scheduler have such control yet?
-- 
Will Dinkel <wdinkel at atipa.com>
Atipa Technologies
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://www.clustermonkey.net/pipermail/beowulf/attachments/20030606/e0b548f8/attachment-0001.sig>


More information about the Beowulf mailing list