Sign in with
Sign up | Sign in
Your question
Closed

4 Cores With Hyperthreading vs. 8 Physical Cores?

Last response: in CPUs
Share
September 8, 2010 9:50:49 PM

Hello, all :) 

Ok, this is a question that I have had for a while and have never gotten around to finding out:

How much of a performance difference is there between a processor that uses hyperthreading technology vs. that of a processor that has 8 physical cores? That is, assuming both have the same clock speed, cache, etc.

Thanks!
a b à CPUs
September 8, 2010 10:34:47 PM

In using a program that utilizes all cores the true 8 physical core processor will win due to the fact that the each of the HT logical cores have to share cache with the physical core. In certain situations cache thrashing can occur though I heard on newer HT's they have found a way to reduce that.
HT is just a way of programming to run two threads concurrently on one core though really it is only one physical core. When the two threads are not sharing resources it runs well and can definitely improve efficiency of the processor.
This is a great THG thread with a some good links in it:
http://www.tomshardware.com/forum/286270-28-hyperthread...
a b à CPUs
September 8, 2010 10:40:04 PM

BTW to truly answer your question we would need benchmarks from two machines using similar hardware except for CPU and mobo running a something like 3DMark06 which is multithreaded and doing some render tests. It would be an expensive (especially the duallie rig) setup to run but if anyone has a link to benchmark review already done I would love to see it.
Related resources
a b à CPUs
September 8, 2010 10:42:42 PM

Cache thrashing or not, a HT core with 2 threads is weaker than the true 2 cores. HT is in simpler terms, is letting 1 core handle 2 tasks at the same time.

Even when fully utilized, which is rarely unless you run professional the performance increase is no more than 20%. However, it is known for gaming HT actually decreases performance for certain titles. So for home users, HT isn't necessary, in fact it may be smart for some to turn it off for better performance.
a b à CPUs
September 8, 2010 10:45:39 PM

king smp said:
BTW to truly answer your question we would need benchmarks from two machines using similar hardware except for CPU and mobo running a something like 3DMark06 which is multithreaded and doing some render tests. It would be an expensive (especially the duallie rig) setup to run but if anyone has a link to benchmark review already done I would love to see it.

Not really, its much simpler than you think as HT on the i7s is a feature you can turn off.

In fact heres a bench with a 870: http://www.bit-tech.net/hardware/cpus/2009/09/08/intel-...
a b à CPUs
September 8, 2010 11:00:23 PM

The OP was asking how much better 8 PHYSICAL cores was than 4 physical/4HT = 8 logical cores which of course 8 "true" or physcial cores are better but by how much was the question.
So two rigs one quad core with HT and a 8 physical core system would have to be compared.
So a i7 with HT (4physical/4 ht) vs. a dual Xeon (8 physical cores/no HT) would be the way to do it.
In most benchmarks it is the DUAL quad Xeon's with HT (8C/16threads) which are dominating.

Also nowadays most of the time it better to leave HT on since Windows and other OS's utilize multi-thread code and so do many newer programs even newer games.
It was the older titles that ran weak with HT pre-2003 or so.
Overall the HT will definitley be beneficial in %90 of the computer's use.
I have seen some review/benchmarks where HT hurt but overall according to the reviews it was beneficial.
I can bore you links to reviews if you like LOL?
a b à CPUs
September 8, 2010 11:10:34 PM

Regardless, when a 4 core + Hyper threading can barely beat 4 real cores by 10% consistently, is there even a remote need to try 8? Also, no current game utilizes HT, barely quad actually.

Stumbled upon this link though, compares 1 core + HT with 2 cores, pretty interesting: http://ixbtlabs.com/articles3/cpu/archspeed-2009-4-p1.h...
September 9, 2010 12:12:03 AM

Tyvm for the answers!

Was hoping the answer would be that it didn't perform that far off from an 8-core, but oh well :) 
a b à CPUs
September 9, 2010 1:42:58 AM

Actually in that link you gave, Timop the games showed a %6 increase in testing with Far Cry 2 showing the most improvement.
4 cores with Ht is better than 4 cores with no HT.
The reality is that 8 true cores arent really needed but really is there a need for quad cores?
If your mainly gaming your better off with a faster dual core than a quad.
However if you are doing encoding and rendering especially as a living you better have as many cores as you can afford.
That is why server and workstations are usually duallie rigs.
Good link.
September 9, 2010 4:16:12 PM

Visualize this:

You are in a supermarket and some bonehead pulls out a checkbook to write a check.

You have a gallon of milk and a $5 bill in your hand.

The cashier puts the first transaction on hold while the old lady writes the check, and processes your transaction. You walk out, she finishes with the check writer.

That is the theory behind HT. If one thread stalls it can run a second thread on the same core. But the problem is it can only handle one thread on any cycle, so it depends on inefficiencies in the execution to "slip in that second instruction."

Now, imagine that the grocery store stops taking checks. Efficiency is increased, the main thread has more efficiency, but there is less likelihood for that second transaction to happen. So you wait longer with your milk.

Would you rather have a multitasking cashier or more open lanes? If business is light in the store and transactions are small, the multitasking cashier might be ok.

But if it is saturday afternoon you want more lanes open because of the heavy traffic.

HT works ok in light workloads where traffic is "bursty" and inefficient. But if workloads get heavy (and I believe we all have more work to do on our systems than ever before) then the benefits of HT start to slip and the benefits of dedicated cores really shines.
September 9, 2010 9:11:08 PM

A very good explanation, JF!

The way I had been visualizing it up to this point is basically 2 channels of processing tasks being processed all the time... basically like each core doing the job of two cores, constantly :) 

So yea, tyvm for that very clear explanation :) 

...so now I know how that thing in my computer works, lol ;) 
!