Author: Tom Kerrigan
Date: 18:14:13 07/24/03
I had the opportunity to run my program on a HyperThreading processor today.
Here are the results, in terms of nodes per second:
Single thread:
100%
Two threads using the pause instruction for spin waits:
92%
Using Sleep(0) for spin waits:
97%
Using Sleep(0), except just spinning on locks:
95%
Using Sleep(0), except using pause for locks:
96%
Interestingly, regardless of what method I was using to do spin waits, one
logical processor did more NPS than the other processor AND was idle more than
the other processor, which indicates that the spin waits were sucking
performance from the other, busy processor. Intel suggests using the pause
instruction to avoid this but the last two numbers above indicate that pause
doesn't help very much.
It's depressing that HT slowed my program down. Unfortunately I don't own a HT
computer so I won't have an opportunity to figure out exactly why it's slowing
down anytime soon.
-Tom
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.