Sign in with
Sign up | Sign in
Your question
Solved

Dual core vs hyperthreading

Last response: in CPUs
Share
April 11, 2010 8:15:17 PM

what is the difference between dual core and hyperthreading technology .
which one is better and why ?
a b à CPUs
April 11, 2010 8:35:04 PM

Dual core = a CPU which has 2 cores
HyperThreading = a technology that makes Device manager see double cores of the original processors.
There are some dual core CPUs with HT and some without HT.
You can't decide which is better because they are completely different things
m
0
l
a b à CPUs
April 11, 2010 8:41:15 PM

You certainly can decide which is better. If your talking about a single core chip with hyperthreading vs a dual core chip, dual core wins easily.
m
0
l
Related resources
a b à CPUs
April 11, 2010 8:41:17 PM

with a dual core, the cpu actually has 2 physical cores, in a hyper threaded single core, the pc has 1 core that is divided into 2 virtual thread pipelines, this allows for 1 thread to continue accepting data on the same core even if the other thread is waiting for data or something, but if the other thread is working, its like the processes have to hopscotch, with a dualcore however, the power to use the two threads is constantly there

imagine a highway that is split in 2, if there is an accident on one side, the cars behind can use the other route to get to the end point faster
m
0
l
a b à CPUs
April 12, 2010 6:56:42 AM

FALC0N said:
You certainly can decide which is better. If your talking about a single core chip with hyperthreading vs a dual core chip, dual core wins easily.

But the OP didn't talke about a single core CPU with HT vs a dual core one(without HT).
We need more info
m
0
l
a b à CPUs
April 12, 2010 7:26:58 AM

a dual core with HT is gud (i3-530/540)

quad cores with HT are gr8 (i7-8xx onwards)

hexacore with HT is ridiculously powerfull (i7-980X)
u have 2 sell your mother-in-law to get it, though...
m
0
l
a b à CPUs
April 12, 2010 8:04:07 AM

http://en.wikipedia.org/wiki/Hyper-threading

It is hard to answer the question because there is no criteria specified by the OP.

But if we limit the comparison to two CPU's both with dual core running at almost same clockspeed but one with hyperthreading, then we can compare an E8400 vs an i3 540:
http://www.anandtech.com/bench/Product/56?vs=143
The E8400 cost $168 from newegg:
http://www.newegg.com/Product/Product.aspx?Item=N82E168...
The i3 540 cost 140 from newegg:
http://www.newegg.com/Product/Product.aspx?Item=N82E168...
Thus with this, a dual core with HT perform slightly better than a dual core without.
But this is not the only possible comparison and may not be the best because the
two CPUs operate in different sockets which may have a factor.

So another possible comparison is between the i3 540 vs i5 750 http://www.anandtech.com/bench/Product/109?vs=143
In this case, the i5 750 have 4 true cores without HT and running at slower clockspeed outperforms the i3 540 with HT (virtually 4 cores).

So therefore, there is no general answer to the question. A CPU has to be compared to another CPU before conclusion can be made which one is better.
m
0
l
a b à CPUs
April 12, 2010 12:49:43 PM

Here's another thing to consider, most programs out there can be utilized by 2 or more physical cores (dual core), but only a small number of programs can be utilized by hyperthreading. (single physical core acting as two)
m
0
l
a b à CPUs
April 12, 2010 1:45:51 PM

ksampanna said:
a dual core with HT is gud (i3-530/540)

quad cores with HT are gr8 (i7-8xx onwards)

hexacore with HT is ridiculously powerfull (i7-980X)
u have 2 sell your mother-in-law to get it, though...


LOL - somehow I don't think my mother-in-law is worth 99 cents, let alone $999 :p ...
m
0
l
a b à CPUs
April 12, 2010 2:13:09 PM

fazers_on_stun said:
LOL - somehow I don't think my mother-in-law is worth 99 cents, let alone $999 :p ...


:pt1cable: 
m
0
l
a b à CPUs
April 12, 2010 4:32:01 PM

fazers_on_stun said:
LOL - somehow I don't think my mother-in-law is worth 99 cents, let alone $999 :p ...


let's hope shez nt readin' this ...
m
0
l
April 12, 2010 6:24:57 PM

jonpaul37 said:
Here's another thing to consider, most programs out there can be utilized by 2 or more physical cores (dual core), but only a small number of programs can be utilized by hyperthreading. (single physical core acting as two)


Hyperthreading is transparent to application software, it's handled by the operating system when deciding where to assign threads... the application just sees two threads running at the same time regardless of that configuration.

m
0
l

Best solution

a b à CPUs
April 12, 2010 7:58:57 PM

jonpaul37 said:
Here's another thing to consider, most programs out there can be utilized by 2 or more physical cores (dual core), but only a small number of programs can be utilized by hyperthreading. (single physical core acting as two)


Not really. As far as the program is concerned, a hypderthreaded core is still an extra processing unit. It basically comes down to the OS scheduler more then anything.

Basically, a hyperthreaded core basically has a seperate instruction pipeline, so if one thread is blocked for whatever reason (IO reads are a perfect example), a second thread can continue to operate. However, not everything is duplicated (ALU for instance), so in situations where one thread is not blocked, you get much less throughput, as the devices on the CPU that are not duplicated have up to twice the work to accomplish, which can sometimes slow both threads down in the process.

By comparision, a seperate core duplicates everything; seperate cache, seperate ALU, etc. So you can run in perfect parrellel (in a perfectly optimized situation at least).
Share
a b à CPUs
April 12, 2010 8:07:28 PM

wow, guess i misinterpreted it wrong or was informed wrong or both...

I was under the impression that Hyperthreading doesn't really show much improvement in most tasks...
m
0
l
April 13, 2010 6:18:23 AM

jonpaul37 said:
I was under the impression that Hyperthreading doesn't really show much improvement in most tasks...


That was true on the P4, you'd get maybe a 20% boost on a good workload. On the newer Intel CPUs it seems to be equivalent to about 30-50% of a core for CPU-intensive tasks.
m
0
l
April 22, 2010 11:58:40 AM

xaira said:
with a dual core, the cpu actually has 2 physical cores, in a hyper threaded single core, the pc has 1 core that is divided into 2 virtual thread pipelines, this allows for 1 thread to continue accepting data on the same core even if the other thread is waiting for data or something, but if the other thread is working, its like the processes have to hopscotch, with a dualcore however, the power to use the two threads is constantly there

imagine a highway that is split in 2, if there is an accident on one side, the cars behind can use the other route to get to the end point faster

It mean that if two threads are ready to execute that a heperthreading processor gives an illusion to one thread and execute the other while a dual core can actually run both threads simultaneusly (paralllel on same time) , am i right ??
m
0
l
April 22, 2010 12:04:34 PM

Best answer selected by Zubair Rao.
m
0
l
November 25, 2013 10:36:23 AM

There is no illusion.

Intel said it best; ”Hyper-Threading Technology is a form of simultaneous multithreading technology(SMT) introduced by Intel. Architecturally, a processor with Hyper-Threading Technology consists of two logical processors, each of which has its own processor architectural state. After power-up and initialization, each logical processor can be individually halted, interrupted or directed to execute a specified thread, independently from the other logical processor on the chip. Unlike a traditional dual processor (DP) configuration that uses two separate physical processors, the logical processors in a processor with Hyper-Threading Technology share the execution resources of the processor core. These resources include the execution engine, the caches, the system-bus interface and the firmware.” These shared resources allow the two logical processors to work with each other more efficiently and lets one barrow resources from the other one when it is stalled (is waiting for a requested file to arrive so it can finish processing the thread).

A hyper-threaded or dual core CPU each can simultaneously run two threads, but they are not the same: each has its own unique set of advantages. A dual core 3.2 gigahurtz processor will easily out perform a singal core 3.2 gigahurtz hyper-threaded processor.

***A hyper-threaded processor's cores each contain an execution engine that manages, and shares its resources between, two logical processors. On a hyper-threaded core, you have two thread paths through this core, each path is able to use only about half of the cores processing power. With hyper-threading inabled, a 30% performance improvement is possible, but more than 10% is likely.
***A regular processor's cores each contain an execution engine that manages a single physical processor. On a dual core processor, you have one thread path through each core, each path is able to use 100% of the cores processing power. With use a a second core, an 80% performance improvement is possible, but more than 40% is likely.

Most programs are simple and are only written to use one core. But some programs and games are very complex and demanding, and are written to fully utilize hyper-threading and/or any number of cores they have excess to. Windows 7 and 8 are very hyper-threading and multi core processor friendly, Vista XP 2000 and 98 support and manage this extra resource poorly. For Windows 7 and 8, I recommend the use of at least a 2 core processor. These operating systems manage 2 cores well; they free up one core by running background programs in the second core. If you have Windows 7 and 8 and run mostly simple programs, you will see little to no difference between a 2 core 3.2 gigahertz CPU, and an 8 core 3.2 gigahertz CPU. If you are a gamer or power user, you most likely will make good use of the extra cores/processors. The degree of benefit you see in a hyper-threaded or multi core processor depends on how well your software and the operating system are written to efficiently manage that specific extra resource. Hyper-threading has been around longer, so there is more hyper-threading friendly software out there than multi core , but there is no subsitute for a second core.
m
0
l
April 8, 2014 1:13:28 AM

Luke Cool said:
There is no illusion.

Intel said it best; ”Hyper-Threading Technology is a form of simultaneous multithreading technology(SMT) introduced by Intel. Architecturally, a processor with Hyper-Threading Technology consists of two logical processors, each of which has its own processor architectural state. After power-up and initialization, each logical processor can be individually halted, interrupted or directed to execute a specified thread, independently from the other logical processor on the chip. Unlike a traditional dual processor (DP) configuration that uses two separate physical processors, the logical processors in a processor with Hyper-Threading Technology share the execution resources of the processor core. These resources include the execution engine, the caches, the system-bus interface and the firmware.” These shared resources allow the two logical processors to work with each other more efficiently and lets one barrow resources from the other one when it is stalled (is waiting for a requested file to arrive so it can finish processing the thread).

A hyper-threaded or dual core CPU each can simultaneously run two threads, but they are not the same: each has its own unique set of advantages. A dual core 3.2 gigahurtz processor will easily out perform a singal core 3.2 gigahurtz hyper-threaded processor.

***A hyper-threaded processor's cores each contain an execution engine that manages, and shares its resources between, two logical processors. On a hyper-threaded core, you have two thread paths through this core, each path is able to use only about half of the cores processing power. With hyper-threading inabled, a 30% performance improvement is possible, but more than 10% is likely.
***A regular processor's cores each contain an execution engine that manages a single physical processor. On a dual core processor, you have one thread path through each core, each path is able to use 100% of the cores processing power. With use a a second core, an 80% performance improvement is possible, but more than 40% is likely.

Most programs are simple and are only written to use one core. But some programs and games are very complex and demanding, and are written to fully utilize hyper-threading and/or any number of cores they have excess to. Windows 7 and 8 are very hyper-threading and multi core processor friendly, Vista XP 2000 and 98 support and manage this extra resource poorly. For Windows 7 and 8, I recommend the use of at least a 2 core processor. These operating systems manage 2 cores well; they free up one core by running background programs in the second core. If you have Windows 7 and 8 and run mostly simple programs, you will see little to no difference between a 2 core 3.2 gigahertz CPU, and an 8 core 3.2 gigahertz CPU. If you are a gamer or power user, you most likely will make good use of the extra cores/processors. The degree of benefit you see in a hyper-threaded or multi core processor depends on how well your software and the operating system are written to efficiently manage that specific extra resource. Hyper-threading has been around longer, so there is more hyper-threading friendly software out there than multi core , but there is no subsitute for a second core.


This is partially true. But you need to know how a processor works to understand Logical cores. There is actually only one physical core and it will not be utilizing all of its resources (I know what some of you might be thinking now and No I am not talking about the processor clock, that concept is multitasking). Intel's hyperthreading identifies these resources (like internal registers, cache etc) and task it to a simultaneously running thread. Basically it is splitting one processor into two. So one can say it comes close to an illusion but it is not.
m
0
l
!