• Some users have recently had their accounts hijacked. It seems that the now defunct EVGA forums might have compromised your password there and seems many are using the same PW here. We would suggest you UPDATE YOUR PASSWORD and TURN ON 2FA for your account here to further secure it. None of the compromised accounts had 2FA turned on.
    Once you have enabled 2FA, your account will be updated soon to show a badge, letting other members know that you use 2FA to protect your account. This should be beneficial for everyone that uses FSFT.

(1) Dual Core CPU vs (1) Single Core CPU w/ Hyperthreading

USMC2Hard4U

Supreme [H]ardness
Joined
Apr 4, 2003
Messages
6,157
I have a question. Just in general.

You already know that Dual Core CPUs will not have HT technology... only extreme editions will....

If you have used a pentium 4 w/ HT you know that if does indeed "feel" smoother because of the ability to processor another thread of data in the pipeline. Allowing for more of a multitasking enviroment.


Will Dual core CPUs without hyperthreading feel this same way? Will the second core act as the HT did in the single core?

One last thing, sort of an odd request. Can any one draw (in paint or whatever dont have to be fancy) How Hyperthreading works in the CPU... :) as opposed to how its going to work in the dual core cpu?

Thanks alot guys... sorry for all the dual core quesions lately, I am just mad intrested in the technology and think its an Outstanding Idea.

Thanks
 
USMC2Hard4U said:
I have a question. Just in general.

You already know that Dual Core CPUs will not have HT technology... only extreme editions will....

If you have used a pentium 4 w/ HT you know that if does indeed "feel" smoother because of the ability to processor another thread of data in the pipeline. Allowing for more of a multitasking enviroment.


Will Dual core CPUs without hyperthreading feel this same way? Will the second core act as the HT did in the single core?

One last thing, sort of an odd request. Can any one draw (in paint or whatever dont have to be fancy) How Hyperthreading works in the CPU... :) as opposed to how its going to work in the dual core cpu?

Thanks alot guys... sorry for all the dual core quesions lately, I am just mad intrested in the technology and think its an Outstanding Idea.

Thanks

Yes, it will have the same feel, as will the dual Opteron system you talked about in the Storage forum - my dual PIII 550 multitasks smoother than my 2 GHz+ Athlon XPs. whatever 'background' task that is eating all of the CPU time on one CPU will take a lot longer on a 550 PIII than a 2GHz Athlon, but there will still be 50% of my CPU available for web surfing, documents creation, etc. The tasks still take longer - but no one thread can eat up all of the CPU time on a duallie, only 50%.

Hyperthreading is a cut down version of dual core - the execution units on a hyperthreading CPU share cache (L1 & L2) and some other common elements, where as dual core is two entirely independent cores in the same package/socket, with their own cahces, pipelines, etc. So a dual core CPU will handle two tasks better than a single HT CPU will, because more cache is available to speed execution, cover pipeline flushes, correct mispredicted branches, etc.

Processors and Operating Systems don't execute processes, they execute threads. One process can start many threads, and the OS is responsible for allocating CPU time (and RAM, disk access, etc) to those threads of code. Assumming the OS kernel can manage the higher number of CPUs/execution paths, then the more CPUs you have, the more threads execute at once. The downside of this paralellism is that you only notice this benefit when multiple CPU intensive threads are executing. However, it is difficult for a programmer to design a program that keeps multiple threads in sync and behaving properly - its easier to predict and manage the flow of one thread that executes in order, rather than two or more that execute independently. This is why games typically only load one half of a HT CPU or one CPU in a duallie system, but you do notice the second CPU if you're transcoding a movie while playing the latest game - those threads are independent of each other anyway, so they can execute separately.

HOWEVER, most of the dual core roadmaps I've seen show a pretty good sized drop in clock speeds (AMD ~2GHz and Intel ~3GHz) to keep heat under control, so single threaded apps, such as games, will run a faster on a higher clocked single core than a slower clocked dual core system. Intel and AMD are forcing the developers' hands now, saying that future processing power will be in paralell, requiring programmers to make CPU intensive tasks multi threaded (therefore more complex) to enjoy the best performance on a dual core system.
 
Hyperthreading or Simultaneous Multithreading:
Code:
CPU 1:

Thread 1 =============
Thread 2 ============||
		   ||||
------------------- -  ---
Pipeline 1
--------------------------
Simultaneous Multiprocessing:
Code:
CPU 1:

Thread 1 ============
		   ||
------------------- ------
Pipeline 1
--------------------------

CPU 2:

Thread 2 ============
		   ||
------------------- ------
Pipeline 2
--------------------------
 
HyperThreading is just a cheap way of simulating 2 CPUs. Actually having 2 cores will be better than partitioning the CPU (splitting resources) to simulate that.

I don't expect any miracles though. Look at how 2 CPU (non-HT) systems run vs one core of the same speed. Single threaded apps run at the same speed on either one. Multi-tasking and multi-threaded apps will run better on 2 separate cores since each CPU can run at full speed -- as long as both don't saturate the memory bus at the same time. HyperThreading kind of hides that since there's still only one physical core. Sharing 1 bus interface with 2 separate cores won't.

I don't want to complain about Intel right now, but I don't see much coming out before 2006 that interests me for desktop processors.
 
Yeah, it's not like single-threaded applications are going to magically transform into great multi-threaded applications when dual core desktop processors come around.

It'll be like HyperThreading on steroids. Take any advantage of HT and multiply its effects by a little bit. Anything that's not benefitting now won't benefit at the onset of dual cores.
 
xonik said:
Yeah, it's not like single-threaded applications are going to magically transform into great multi-threaded applications when dual core desktop processors come around.

It'll be like HyperThreading on steroids. Take any advantage of HT and multiply its effects by a little bit. Anything that's not benefitting now won't benefit at the onset of dual cores.

But a dual core CPU will alow me to do more at one time faster... Maybe programs might only be single threaded... but I can run 4 or 5 single threaded programs at one time faster on a dual core CPU than on a single core CPU ... is this correct? Or all are the single threaded apps going to wait for Core1 to do the work leaving core2 empty until a program with 2 threads is excecuted?
 
USMC2Hard4U said:
Maybe programs might only be single threaded... but I can run 4 or 5 single threaded programs at one time faster on a dual core CPU than on a single core CPU ... is this correct?
Yes that's correct. 4 or 5 threads at once will most likely run faster on a dual core CPU vs a single core HT CPU.
 
DougLite said:
Yes, it will have the same feel, as will the dual Opteron system you talked about in the Storage forum - my dual PIII 550 multitasks smoother than my 2 GHz+ Athlon XPs. whatever 'background' task that is eating all of the CPU time on one CPU will take a lot longer on a 550 PIII than a 2GHz Athlon, but there will still be 50% of my CPU available for web surfing, documents creation, etc. The tasks still take longer - but no one thread can eat up all of the CPU time on a duallie, only 50%.

Hyperthreading is a cut down version of dual core - the execution units on a hyperthreading CPU share cache (L1 & L2) and some other common elements, where as dual core is two entirely independent cores in the same package/socket, with their own cahces, pipelines, etc. So a dual core CPU will handle two tasks better than a single HT CPU will, because more cache is available to speed execution, cover pipeline flushes, correct mispredicted branches, etc.

Processors and Operating Systems don't execute processes, they execute threads. One process can start many threads, and the OS is responsible for allocating CPU time (and RAM, disk access, etc) to those threads of code. Assumming the OS kernel can manage the higher number of CPUs/execution paths, then the more CPUs you have, the more threads execute at once. The downside of this paralellism is that you only notice this benefit when multiple CPU intensive threads are executing. However, it is difficult for a programmer to design a program that keeps multiple threads in sync and behaving properly - its easier to predict and manage the flow of one thread that executes in order, rather than two or more that execute independently. This is why games typically only load one half of a HT CPU or one CPU in a duallie system, but you do notice the second CPU if you're transcoding a movie while playing the latest game - those threads are independent of each other anyway, so they can execute separately.

HOWEVER, most of the dual core roadmaps I've seen show a pretty good sized drop in clock speeds (AMD ~2GHz and Intel ~3GHz) to keep heat under control, so single threaded apps, such as games, will run a faster on a higher clocked single core than a slower clocked dual core system. Intel and AMD are forcing the developers' hands now, saying that future processing power will be in paralell, requiring programmers to make CPU intensive tasks multi threaded (therefore more complex) to enjoy the best performance on a dual core system.

Very well put. Also, don't be suprised if one core is running half power or so when not being addressed (think speedstep, sorta) to deal with thermal displacement. Dual core is dual core, be it Amd or Intel, and the heat issue will be addressed, clock & cool, speedstep, whatever.

DougLite--I'm actually suprised we haven't seen more multithreaded apps. Developers have had to see this coming, you'd think.
 
JetUsafMech said:
Very well put. Also, don't be suprised if one core is running half power or so when not being addressed (think speedstep, sorta) to deal with thermal displacement. Dual core is dual core, be it Amd or Intel, and the heat issue will be addressed, clock & cool, speedstep, whatever.

DougLite--I'm actually suprised we haven't seen more multithreaded apps. Developers have had to see this coming, you'd think.

An example of the thermal tricks is Yonah (dual core successor to Dothan/Pentium M) - if the CPU detects a singlethread load, it will clock gate (and shut down) the second core, except for the L2 cache, all of which is given to the first core under single thread load.

Also, Prescott's heat problems are only severe when you get north of 3.5 GHz - the Prescotts 3.0~3.2 range chips actually aren't too bad thermally because they don't need the killer voltage it takes to reach high clock speeds. With raw clock speed being lower on dual core parts, this should help Intel pretty significantly. Also, one of the main problems with Prescott is thermal density. Prescott has so many transistors packed into a small area it's really difficult to get the heat out of the die, let alone into a cooler (This same effect explains why Winchester runs as hot/a little hotter than New Castle despite lower power consumption). Dual core helps a lot here - you have heat escaping from two lower clocked cores instead of one jam packed high clock core. AMD is pretty firm that dual core Opterons will have a TDP of 95 watts and desktop Athlon64 should be similar. I've seen rumors floating around on the Inquirer/Register about Intel dual core units being about 130 watts.

EDIT: As for multi threaded apps, SMP/SMT is still very much an elite toy, even after HT Tech in some consumer boxes and dual CPU systems becoming popular toys. People here on the [H] may know about and enjoy SMP, but most Dell/HP/Gateway/E Machines customers have no clue about SMP and really can't benefit from it. Those types still make up the vast majority of computer buyers, and many of them only want the computer to run the task they are interacting with. This is not taking away from those people - they merely use their computers for different purposes than people on the [H] END EDIT
 
So, does dual core work exactly the same way as a dual CPU system with the only difference being the two CPUs are packed into one chip that slides into one socket?

I know single threaded apps like games won't benifit much from dual core CPUs. But will having a dual core CPU clocked at the same speed ever hurt performance in single threaded apps?

Yes that's correct. 4 or 5 threads at once will most likely run faster on a dual core CPU vs a single core HT CPU.

So multitasking even with single threaded apps will be faster on a dual core CPU system than with a single core? Technically speaking, your system is already multitasking even with no programs open because there are multiple system processes running in the background upon bootup. So is there any benifit to dual core CPUs just because of that for overall system performance. What about playing a game while downloading files with antivirus running in the background?
 
Super Mario said:
So, does dual core work exactly the same way as a dual CPU system with the only difference being the two CPUs are packed into one chip that slides into one socket?

not exactly no.
Especially in a NUMA setup, where CPUs have their own memory bus, and I/O connections, these now must be shared between the cores.
The differences from SMP and dual core are more subtle, where CPUs share a common bus. In a single chip system, arbitration and balancing would just take place on the CPU, rather than in the chipset. For most purposes, it will be very similar in the final functionality and capability.

I know single threaded apps like games won't benifit much from dual core CPUs. But will having a dual core CPU clocked at the same speed ever hurt performance in single threaded apps?

no. Each core has it's full resouces allocated to a single thread, unlike HT where things like branch prediction histories, regsiter files, and cache need to be shared between the threads.


So multitasking even with single threaded apps will be faster on a dual core CPU system than with a single core? Technically speaking, your system is already multitasking even with no programs open because there are multiple system processes running in the background upon bootup. So is there any benifit to dual core CPUs just because of that for overall system performance. What about playing a game while downloading files with antivirus running in the background?

I think we should define 'multitasking' as managing multiple threads, each of which desires a high amount of CPU time.
A quick look at my taskmanager, in the last 3 hours of up time (damn you software requiring restart), about 5 minutes has been used by the system processes.
If we substract off the time System and explorer chew up during login, it's probalby down closer to 30 seconds.
Those kinds of small footprint, low time threads could be run seamlessly in the background of an HT CPU, and really even a system with no simultaneous multthreading of anykind.

The place where you run into most problems with multitasking are not at the CPU level, but at much slower devices, like disk drives, user I/O. A P4 wtih HT has more than enough power to download a file, burn a CD, run an anti-virus check and play a game.
A hard drive, where operations are thousands of times slower, isn't going to manage a game's page file, a scratch file for a download, and an anti-virus scan very eloquently.
(Realisitcally neither will the IDE / SATA controller).
 
not exactly no.
Especially in a NUMA setup, where CPUs have their own memory bus, and I/O connections, these now must be shared between the cores.
The differences from SMP and dual core are more subtle, where CPUs share a common bus. In a single chip system, arbitration and balancing would just take place on the CPU, rather than in the chipset. For most purposes, it will be very similar in the final functionality and capability.

What I meant was a dual CPU system in SMP where it shares the same common bus. I didn't mean a dual CPU system where each CPU has it's own bus. So would there be any benifit to dual core CPUs for gaming with those small footprint tasks running in the background like AV software and downloading a file?
 
Unfortunately, in real life, we are going to be lucky if we break even on game performance (in current games) when dual core hits. This is because of the clock speed drop. However, all other things being equal, the second core will improve game performance a slight bit, as the game will have a core all to itself. If the system or a background task needs CPU time, the second core will step in, and the first CPU running the game will not have to be 'distracted.' However, as Freidog pointed out, the gain will be small, because the 'background' taks typically don't make many demands of CPU time. They use more RAM and disk access than CPU time. These system processes are coded to allow as much CPU time as possible to run user programs. Although the same cannot be said of many background 'bloatware' apps, their CPU requirements typically aren't that high either.

Also, disk paging and (particularly on P4) RAM bandwidth can limit system performance, SMP or not, something FreiDog alluded to as well.
 
It'll be a bit different whereas dual-core chips would be a bit more robust compared to chips with HT...
 
Back
Top