Dragonfly and Hyperthreading....
Matthew Dillon
dillon at apollo.backplane.com
Mon Feb 21 10:48:18 PST 2005
:Ah, but with hyperthreading the performance boost comes at zero
:cost. The difference in cost between a 3.6Ghz system and "something
:faster" is perhaps 50%.People pay $300 more for a 3.6Ghz xeon than
:a 3.4Ghz. A small gain has significant value. And dual cores will be very
:expensive for a long time. Intel and AMD aren't making them to
:cannibalize their own business; they're doing it to have something to
:make their margins on.
My experience with regards to the computer industry is that people
pay a lot of money on stupid things, and this is one of those stupid
things. There are arguably a few applications that can make use
of it, but we are talking perhaps 0.01% (guess) of commercial
installations actually need the HT that they have. The economics just
aren't there any more... vendors put such a high premium on HT and MP
technology that you can in fact get far better performance buying more
less powerful machines rather then one big honking machine, assuming
your application set can be partitioned that way. Most of today's
applications cannot and that might seem to imply that HT is still good
for them, but the plain fact of the matter is that cpus are so powerful
these days they are not usually the bottleneck any more. The real
issue in today's high performance computing world is cpu power per watt
consumed rather then raw cpu power, and since multi-core is capable
of providing far higher performance per watt of power then HT, that
makes HT a dead duck.
And I don't think dual-core is going to be expensive for very long,
not with AMD aiming it squarely at the consumer market and both AMD
and Intel likely moving in a direction that will result in having
*ONLY* multi-core chips in their lineup within the next 2-3 years.
:Matt, would you comment on the following article:
:
:http://www-128.ibm.com/developerworks/linux/library/l-htl/
:
:benchmarks are usually misleading, but at least its not some kid in his
:basement (probably not) doing this one.
Hyperthreading works best when you have a threaded application which is
doing a mix of integer and memory operations, and works worst
when you have an application that is heavily integer, heavily memory,
or moderately to heavily FP oriented. The biggest problem with HT
is that performance is extremely assymetric. You could waste hundreds
of man hours writing an HT aware scheduler and still not have it work
well for all situations.
Even more to the point, HT technology was most useful in past years
when instruction pipelines were not able to make full use of the cpu's
resources. That has changed as well. Today's cpu's instruction
pipelines are able to utility a far higher percentage of the cpu's
available resources, making HT a lot less useful. HT has only been
viable up till now because Intel's cpu architecture sucks rocks compared
with AMD's, but Intel can no longer compete by boosting clock rate so
now they are stuck... they have to slow their cpus down and make them
more efficient, and that will kill HT's effectiveness even if you
ignore the heat issue.
-Matt
Matthew Dillon
<dillon at xxxxxxxxxxxxx>
More information about the Users
mailing list