Sign in with
Sign up | Sign in
Your question

FAQ: Dual Core

Tags:
  • CPUs
  • Dual Core
  • Processors
  • Product
Last response: in CPUs
Share
November 10, 2005 2:39:27 PM

A intro guide to Dual Core CPU's By mpasternak

1. What is a Dual Core CPU?
A> A Dual core CPU is in fact 2 separate Processors that are packaged or created and put within 1 die or 1 package. This will allow 1 "chip" to be used instead of two separate processors on a motherboard, saving space and money.

2. So a processor runs at 2 times the speed?
A> NO! This is not the case with dual core / dual CPU's. a 2.2Ghz dual core system does NOT give you 4.4ghz to work with. it gives you 2 individual 2.2ghz CPU's to handle two separate threads at the same time.

3. What’s a Thread?
A> When a task / program runs, it creates what is called a thread. a thread is a open string of data that needs to be processed. This must go through the CPU in order for a program to work. Most programs create 1 thread and send all it's data linearly through that thread. When multiple applications are running, the Operating system breaks up the threads so that the processor can run them all and simulate multi-tasking.


3. How Do dual-core CPU's effect these Threads?
A> Simple. it allows the computer to actually process 2 threads simultaneously.
In a single CPU system, all threads must be processed through 1 CPU.
*(Each Letter represents a thread)
CPU1: ABCDABCDABCDABCDABCDABCDABCDABCD
in dual core (or more) they're broken up and then sent to different CPU's
CPU1:ABCDABCDABCDABCD
CPU2:ABCDABCDABCDABCD

4. Seems to good to be true, What’s the Downside?
A> while they handle multiple threads well, Single threaded applications will still only use 1 core / 1 CPU at a time, Leaving the 2nd CPU core often underused or not used at all. Games in particular are virtually all single threaded. (We’ll call thread A)
CPU1:AAAAAAAA
CPU2:BCDBCDBCDBCDBCDBCDBCDBCD
What ya can see that if you set the game to use up an entire Core, yes, you can run other threads on the 2nd core without a hit to the game performance. BUT those background threads will all have to share the 2nd core and will take a bit longer to run. to further this problem. The OS doesn’t fully optimize the CPU's this way. and there are some intermittent threads that make it onto Core 1.
CPU1: AABCABDAAAACDA
CPU2: BCDBCDBCDBCDBCDBCD
The game is still slowed down even more by the other CPU intensive applications.

5. What’s this mean really?
A> that yes, a Dual core CPU allows you to run multiple threads, and resource intensive applications at the same time. But when you get into something like gaming where the game requires intensive use of 1 CPU only, you run into a situation of the OS / Thread scheduler not appropriately controlling the threads for maximum performance. Often gaming performance is either sacrificed while the CPU evenly assigns other threads to the CPU the games using, or the 2nd CPU runs mostly idle or underused because you don't run anything else while running the game.

6. What does the future bring?
A> for a Dual Core CPU to be most effective, it requires better scheduling of the OS (Vista is supposed to be better than XP). for gaming, it requires that games be written to be multi-threaded and be able to be evenly spread out amongst the processors in order for them to really run at the peak performance. Until this happens, a dual core CPU is NOT the best buy for a gaming rig. You will get more performance in your game if you run just the game on a single core that runs faster.

7. Why would anyone want a dual core then?
A> if your NOT a gamer and do a lot of processing that requires multiple threads. Like Cad work, encoding, decoding, and pure multitasking. These are all tasks that dual core will help with, any software that fully takes advantage of multiple threads really. As I’ve said though, Current games DO NOT!

More about : faq dual core

November 10, 2005 4:47:43 PM

Looks Good.... I would suggest running it through a word processor.
November 10, 2005 4:52:23 PM

lol maybe we can incorporate MS office tool bars for our posts lol
Related resources
November 10, 2005 5:01:45 PM

ok ok. I put it through word... spelling and grammar should be good
November 10, 2005 7:50:30 PM

Ahh... Much more readable..

Maybe a mention of Latest Nvidia drivers and their impact.

Also maybe talk about Intel and AMD options including Opteron and Xeon.
November 11, 2005 2:01:11 AM

make it a sticky we need one of these!!!!!!!!!!!!!!!
November 11, 2005 3:46:57 AM

get some quality time and your favorite porn and you'll have some stickies
November 11, 2005 4:12:22 AM

I love to be picky so, In gaming, the game will take a much bigger hit from other resources (fsb/HTT or memory mainly) than from stray threads.
For online gaming using some form of IM, and antivirus, which is fairly common these days, duallies are better.
Some games still have issues with dual cores.
November 11, 2005 12:06:21 PM

I'll put this into the CPU buyers' guide, you'll get due credits :) 
November 11, 2005 12:39:54 PM

Quote:
lol maybe we can incorporate MS office tool bars for our posts lol


Don;t you find that it takes ages for it to load with forums that implement that 'feature'
November 11, 2005 4:17:00 PM

lol
November 23, 2005 2:41:48 AM

This should be sticky!
November 23, 2005 6:03:28 PM

Quote:
This should be sticky!

I Agree.
But someone please add the difference between AMD's approach and Intel's approach to the subject.
November 23, 2005 9:26:44 PM

Most newbies don't read stickies or FAQs anyway. They don't even use google. they simply ask. Not that they want to know..no.. they don't have a life and need some attention.. [/sad fact]
November 23, 2005 10:33:02 PM

You may want to add something or do some research towards the effect of:

While a game maybe written as inherently single threaded, the rendering system and the OS are multithreaded. When a game runs on a system, there are generally three main players at work, the actual game code, the graphics interface/driver (DirectX/OpenGL) and the graphics card (hardware). For the most part the CPU and the GPU complement each other passing one task to the other and allowing them to basically run in parallel. While a game can typically be CPU bound (the GPU has to wait for the CPU to give it data) or GPU bound (The complexity of rasterization causes the CPU to idle while waiting for the GPU), adding a second GPU or CPU or both will not typically alleviate this situation. If you add a second GPU (or a more powerful GPU) the graphics system can now handle larger and more complex geometry at higher resolution and or rendering time will be reduced. The system usually at this point becomes CPU bound until you increase the resolution or complexity of the geometry to the point where the GPU is again slower thus balancing the tasks. However, adding another CPU (or more powerful one) does not necessarily drastically improve this situation. Certain tasks done in a game are inherently linear and often block the processing of other tasks. There maybe some room for parallelism, but often dividing a small task into two smaller tasks makes a bigger task. Once these prerequisites are resolved, production of data for the GPU can start. This is where a parallel CPU can improve performance but only to some degree. At some point, the production of data will reach or exceed the ability of the GPU to accept or process it or the overhead of dividing the data will exceed the cost of running the data through one task. In general, games will continue to be GPU bound until game developers design new tasks (Physics/complex input) for a second CPU to use.
December 14, 2005 5:10:12 PM

Can we get this stickied?

it would answer many peoples questions before even asking
December 14, 2005 5:37:18 PM

Id add a blurb about hyperthreading. what it is.. what its not, etc.

my personal experiance shows what schmide says is quite true. you dont get a Huge performance boost with multi-cpu systems and games, but you will see "some" performance hits if you disable the 2nd cpu (or in my case turn off hyperthreading).

Good stuff overall!
December 14, 2005 8:44:41 PM

Nice work. I'd make it sticky but it might be more convenient in Spitfire's sticky. He'll give you full credit. I'm just thinking we're going to have too many stickies otherwise.
December 14, 2005 9:47:46 PM

even if this gets stickied, when the damn info is already on top of the page, i can guarantee some noob will still ask the same goddamn questions. nothing helps.
December 14, 2005 9:49:27 PM

What is dual core and why does it cost more than faster Athlon 64's? :lol:  :lol: 
December 14, 2005 10:06:49 PM

precisely :tongue:
December 15, 2005 12:00:00 AM

Quote:
How Do dual-core CPU's effect these Threads?


I believe "affect" is proper here.

As an aside, one thing that should be noted is that in some cases, running two instances of a game may be desired in which case the performance of each "game window" will be smoother than with a single processor.

Also, when you run dual core/cpu, it takes a lot more programs running for the computer to "feel slow" compared to single core.

Enjoy,

John
December 15, 2005 1:25:26 AM

Quote:
when you run dual core/cpu, it takes a lot more programs running for the computer to "feel slow" compared to single core.

good point
December 15, 2005 4:04:50 AM

Quote:
Nice work. I'd make it sticky but it might be more convenient in Spitfire's sticky. He'll give you full credit. I'm just thinking we're going to have too many stickies otherwise.

Yeah, it's pretty good. I'll probably add it in the next update.
December 15, 2005 1:40:20 PM

I have no problem with it in your guide or what not.

I don't care about credit or anything

I've been lurking and not posting a lot for a while now because i'm just getting bored and sick of the same question over and over and over and over and over again

i wish people would just read other threads or do a search before asking
December 15, 2005 2:14:34 PM

Take credit where it is due dude. Specially good credit.
December 17, 2005 2:59:08 PM

I'll take credit then.

Thanks guys. :wink:
December 18, 2005 5:08:48 AM

Sticky FTW!!

I still find people asking about wether 2.4+2.4=4.8

Just make it a sticky so all I have to do is flame those people for NOT READING A STICKY.
December 19, 2005 2:35:37 AM

Quote:
4. Seems to good to be true, What’s the Downside?
A> while they handle multiple threads well, Single threaded applications will still only use 1 core / 1 CPU at a time, Leaving the 2nd CPU core often underused or not used at all. Games in particular are virtually all single threaded. (We’ll call thread A)
CPU1:AAAAAAAA
CPU2:BCDBCDBCDBCDBCDBCDBCDBCD
What ya can see that if you set the game to use up an entire Core, yes, you can run other threads on the 2nd core without a hit to the game performance. BUT those background threads will all have to share the 2nd core and will take a bit longer to run. to further this problem. The OS doesn’t fully optimize the CPU's this way. and there are some intermittent threads that make it onto Core 1.
CPU1: AABCABDAAAACDA
CPU2: BCDBCDBCDBCDBCDBCD
The game is still slowed down even more by the other CPU intensive applications.


8O :?: Confused me a bit here... Isn't this:
CPU1: AABCABDAAAACDA
CPU2: BCDBCDBCDBCDBCDBCD

better than trying to run AABCABDAAAACDA AND BCDBCDBCDBCDBCDBCD on just 1 CPU?
December 19, 2005 8:42:26 AM

Quote:
4. Seems to good to be true, What’s the Downside?
A> while they handle multiple threads well, Single threaded applications will still only use 1 core / 1 CPU at a time, Leaving the 2nd CPU core often underused or not used at all. Games in particular are virtually all single threaded. (We’ll call thread A)
CPU1:AAAAAAAA
CPU2:BCDBCDBCDBCDBCDBCDBCDBCD
What ya can see that if you set the game to use up an entire Core, yes, you can run other threads on the 2nd core without a hit to the game performance. BUT those background threads will all have to share the 2nd core and will take a bit longer to run. to further this problem. The OS doesn’t fully optimize the CPU's this way. and there are some intermittent threads that make it onto Core 1.
CPU1: AABCABDAAAACDA
CPU2: BCDBCDBCDBCDBCDBCD
The game is still slowed down even more by the other CPU intensive applications.


8O :?: Confused me a bit here... Isn't this:
CPU1: AABCABDAAAACDA
CPU2: BCDBCDBCDBCDBCDBCD

better than trying to run AABCABDAAAACDA AND BCDBCDBCDBCDBCDBCD on just 1 CPU?

Technically it's CPU0 and CPU1
December 19, 2005 2:14:05 PM

Quote:
4. Seems to good to be true, What’s the Downside?
A> while they handle multiple threads well, Single threaded applications will still only use 1 core / 1 CPU at a time, Leaving the 2nd CPU core often underused or not used at all. Games in particular are virtually all single threaded. (We’ll call thread A)
CPU1:AAAAAAAA
CPU2:BCDBCDBCDBCDBCDBCDBCDBCD
What ya can see that if you set the game to use up an entire Core, yes, you can run other threads on the 2nd core without a hit to the game performance. BUT those background threads will all have to share the 2nd core and will take a bit longer to run. to further this problem. The OS doesn’t fully optimize the CPU's this way. and there are some intermittent threads that make it onto Core 1.
CPU1: AABCABDAAAACDA
CPU2: BCDBCDBCDBCDBCDBCD
The game is still slowed down even more by the other CPU intensive applications.


8O :?: Confused me a bit here... Isn't this:
CPU1: AABCABDAAAACDA
CPU2: BCDBCDBCDBCDBCDBCD

better than trying to run AABCABDAAAACDA AND BCDBCDBCDBCDBCDBCD on just 1 CPU?

Thats a very qood question. technically YES it is better to run them over the two cores. but you get into the main question. WHAT do you want your computer to do?

a pure gamer when gaming will want only A running, and it running as fast as humanely possible. the best way to do that is shut down BCD completely so that only A is in use. tahts why for gaming you will get the best performance out of a faster single core processor when the game is the only thing running. the problem with the games is that they are virtually all limited to ONE thread so far. so the games themselves don't take advantage of the multi core. they just want ONE realy realy realy fast core.

where this comes into play is really the best BANG for the BUCK.
lets look into current newegg prices for the CPU's for this example. ( I will use AMD CPu's since they are Currently the better of the two manufacturers)

Athlon64 3700+. 2.2ghz w 1mb cache
This CPU gives you 2.2ghz of gaming performance for a single thread. single core. $235.

rembering that Gaming is single threaded and needs the fastest CPU for one thread only. the dualcore CPU that offers 2.2ghz for a game though is this one.

4400 X2. 2.2ghz each core. 1mb cache. $497

so given the CPU Speeds. to get the same in game performance as a 3700+ @ 2.2ghz you need a dual core CPU thats almost than double the price.

Dualcore DOES have it's merits though. if you CAN afford it and need it and do true multitasking. than yes it definately makes more sense

and multitasking isnt simply running multiple applications. that sit waiting for input. true multi-tasking is running multiple applications that will truly utilize CPU even while doing other things with multiple threads.

Running a Game as well as running some sort of compiling is multi tasking.

Running MS Word and MSN messenger... not so much.

and dual core itself wjill help with more than just multitasking. single tasks that use multiple threads will benefit greatly
December 19, 2005 11:02:43 PM

Wow!! Thanks for the elaborate response, but my numbers tell abit of a different story. I initially setup my gaming system with the 4000+, but since I had started to do more transcoding, I felt dual core was needed. Here are my numbers from 3DMARK05:

3800+(X2) @ 2.4ghz / 7800gtx 256mb(490/13100) = 8635
4000+ @ 2.7ghz / 7800gtx 256mb(490/13100) = 8589

Then I went SLI!!!

3800+(X2) @ 2.37ghz/ 7800gtx 256mb(490/13100) SLI = 12047
4000+ @ 2.64ghz / 7800gtx 256mb(490/13100) SLI = 12249

My memory is Corsair XMS Twinx2048-3200c2pt 2-3-3-6-1T

There's really not a big difference in the numbers when I compared the 2, but for me I felt the 3800+ was smoother although they performed about the same in my setup. Only thing is that in your comparison you compared a 2.2ghz single core to a 2.2ghz dual core, but my numbers don't scale in the same way. According to your example, if I compared a 2.4ghz dual core to a 2.4ghz single core (in terms of just gaming) they should be on par, but my numbers are telling me that a 2.4ghz X2 benches in the ball park of an FX-55.... curious :cry: 
December 21, 2005 3:32:24 PM

Quote:
The OS doesn’t fully optimize the CPU's this way. and there are some intermittent threads that make it onto Core 1.
CPU1: AABCABDAAAACDA
CPU2: BCDBCDBCDBCDBCDBCD
The game is still slowed down even more by the other CPU intensive applications.

Are you sure that this is a drawback of dual cores? I don't understand what would be different if you ran the same threads on a single core so that your game would run faster.

Quote:
But when you get into something like gaming where the game requires intensive use of 1 CPU only, you run into a situation of the OS / Thread scheduler not appropriately controlling the threads for maximum performance.

What exactly is inappropriate thread control here?

Quote:
Often gaming performance is either sacrificed while the CPU evenly assigns other threads to the CPU the games using,

Once again what would be different with single core/same threads?

Quote:
or the 2nd CPU runs mostly idle or underused because you don't run anything else while running the game.

...like don't buy a Porche as you won't be driving it at 120 all the time.
December 21, 2005 3:38:45 PM

Another question while we are at it.

Do you tink there is a performance difference between the following two scenarios?

AAAAAAAAAAAAA
BBCCDDBBCCDD

and

BBAAAAAACCAA
AACCDDBBAADD
December 21, 2005 6:54:47 PM

Quote:
Another question while we are at it.

Do you tink there is a performance difference between the following two scenarios?

AAAAAAAAAAAAA
BBCCDDBBCCDD

and

BBAAAAAACCAA
AACCDDBBAADD


Yes, there could be if there is shared communications between threads. Two threads on same CPU share cache vs. going to slower main system RAM on multiple CPU's.

None of this is new... multi-CPU system behavior has been documented for decades. There were even Pentium 3 systems with as many as 16 cpu's :)  "Dual Core" doesn't change the rules that much.
December 21, 2005 7:26:52 PM

Quote:
Yes, there could be if there is shared communications between threads. Two threads on same CPU share cache vs. going to slower main system RAM on multiple CPU's.


The topic is dual cores so let's stick to them as with AMD it makes a theoretical difference due to using the crossbar switch instead of the system bus which is I think what you meant above.

But in real life, how many times does a thread to thread communication occur and on dualies and how many times does one of the cashes become outdated exactly at the time that the scheduler switches threads?

I believe not enough to justify a remark like "Gamers shouldn't buy dualies as they run slower because of the scheduler".

Surely, dual cores for games are not recommended but the reason are more likely immature environment like chipsets, XP (more directx than thread scheduler), drivers, etc.
!