On October 4, 2005 11:20 am, Aaron J. Seigo wrote:
> On Tuesday 04 October 2005 09:24, Roy Souther wrote:
> > Anyone running Intel Xeon's with Hyper-Threading? Does each CPU show up
> > as a dual core?
>
> people seem a bit confused in this thread, probably thanks to the marketing
> wonks in the processor industry =)
>
> dual core and hyper threading are completely different animals. both will
> result in `cat /proc/cpuinfo` showing two entries for each "processor" but
> the performance results are very different.
>
> in hyperthreading, you essentially are able to run another thread or
> process on the same core utilizing unused pipelines on the chip. since
> modern processors have several parallel execution pipelines and
> applications can rarely fill them all at the same time, the idea is to try
> and utilize the unused pipelines whenever possible. this means you squeeze
> a bit more performance out of the single core in certain scenarios. IIRC
> you can expect ~10% improvement in best case scenarios.
>
> dual core, on the other hand, is true multi-processing: you have two
> distinct cores with their own sets of pipelines, registers, etc.
> essentially you have dual processors on a single die. this allows one to
> squeeze more processors into less space and also should in theory allow for
> better process migration and memory affinity due to cores being on the same
> die and therefore physically closer.

Its the ridiculously long pipelines that intel has designed into the P4 and 
Xeon lines that had them add hyperthreading to their processors.  Processors 
use branch prediction to best guess what the execution path is going to be so 
that they don't have to flush the pipeline and fill it with new instructions.  
When they have to refill the pipeline with new instructions its very very 
costly in terms of processor cycles.  The longer the pipeline the higher the 
probability of having to flush the pipeline due to the branch prediction 
failing.  Before the pipeline is filled you essentially have an idle 
processor - no new instructions are being completed before the pipeline is 
filled.

Intel faced this because they wanted to crank up the speed of their processors 
mostly for marketing reasons.  When you crank up the speed each stage in the 
pipeline can do less work per cycle, so you have to lengthen the pipeline.  
Now they find themselves in the circle of having to crank up the clock to get 
the same amount of work done and having to lengthen the pipeline to get the 
instruction through which leads to branch prediction failures.  So to prevent 
having an idle processor they take a previous task and move it into the 
pipeline.  That's where they get the approximately 10% increase from.

THIS IS A REALLY POOR SUBSTITUTE FOR A GOOD DESIGN AND NO SUBSTITUTE FOR DUAL 
CORE!!!

The results are that Intel processors are HOT and they don't produce good 
performance with that heat.

I just bought an AMD 64 3000+ processor.  It is a 2.0 GHz part.  It performs 
at about the same rate as a 3GHz P4 with about 1/2 the power dissipation.  I 
bought a motherboard that has been tested with the X2 processors, so my 
upgrade path will be to buy a X2 processor next year when the prices come 
down.  The reports are that the X2 dissipates about 10% more head than the 
single core equivalents.

_______________________________________________
clug-talk mailing list
[email protected]
http://clug.ca/mailman/listinfo/clug-talk_clug.ca
Mailing List Guidelines (http://clug.ca/ml_guidelines.php)
**Please remove these lines when replying

Reply via email to