
Originally Posted by
D_A
How much performance increase you get is highly dependent on the load you apply. The worse a given thread is in terms of efficient cache usage and IO waiting time the better the improvement you'll get by having another whole thread "ready to roll". On the other hand, a highly efficient thread will lose very little time to being locked out waiting for cache refreshes, IO etc. In that case you'll gain far less from hyperthreading.
Some folks will remember a while back one of the projects, might have been the original HCC I'm not sure, was an absolute mongrel for cache misses (page faults). Having another thread to switch to, already in cache, was a great boost to those units. My Athlon XP2400+, on the other hand, suffered greatly due to lack of cache (256k compared to the P4 2.4 beside it which had 512k) which made the situation far worse.
Bookmarks