Yeah, those specs labeled aren't per-core unless specifically stated. a 2.4 ghz dual-core isn't equivalent to two 1.2ghz cores running at once, nor is it equal to a single 4.8ghz single-core.
It's a 2.4ghz dual-core.
Apples and Oranges.
What single-cores are good for are processing a single, high-demand game.
For example, 3ghz single will process Fallout3zomgcrazygraphicsgame better than a 2.66 dual-core.
A dual core, however, will be able to handle multiple-applications better.
The reason for this is that the two cores are able to focus on two different things at once, whereas a single-core would trip over itself given multiple data streams. And that's a general descrip.
Given a game that requires a fast cpu, and without multi-core compatibility, a quad/six/eight core system will run that game like a fucking dog, whereas a single-core with half their speed will run it better. That quad will be able to run four of those simultaneously, however, given enough ram.
btw, EiBM,
derp. dbz. /masterbatesnostalgicpenisorgan
Well it is basically per core, A 2.4Ghz dual-core is equivalent to a pair of 2.4Ghz single core processors. And that's basically what it literally is, just 2 cpu's on the same physical chunk of silicon. It's just that 2 single processors running at 2.4Ghz isn't the same as a single processor running at double the speed. It's like comparing two cooks making a meal, compared to a single cook making a meal twice as fast. You won't get the same results because a lot of the time you simply can't make use of two people at the same time at the same task. Now, you can set it up so that the two people are doing two different things that they can do independently of each other, and get things done faster that way, but that doesn't work for everything, especially tasks that need to be done in sequence, where certain steps need to be done in order (like mix ingredients, then bake, has to be done in that order, if you try to do it the other way around, or at the same time, you won't get the same results.
.
In the same way, a single program can often make use of multiple cores, by splitting up a set of tasks into things that can be done at the same time, and having each core take a section, or something similar. In fact, most recent games take advantage of this to at least make use of a couple cores or so(So fallout 3 for your example there, would probably run a bit better on the slightly slower dual-core, since I think it can take advantage of it). Except, you have to write your program to explicitly take advantage of this, to tell what parts of a program get done in which thread, and to make sure that they're all completed before going on to the next step, or stuff like that. It's not something that you get immediately from having extra cores, but something where programs have to be made to make use of it.
Of course, multiple independent programs running at the same time can immediately take use of it, since windows is programmed to take care of that, and distribute programs and threads around to different cores. Which wasn't too difficult a step, since they were already set up to do time-sharing, having multiple programs running at the same time, with only a single processor, by simply having the processor work on each one for a short period of time, one at a time, in rapid succession. So splitting that up to multiple cores wasn't too difficult from that end.
Quick question from a multi-core noob... how do you offload all programs to different cores?
Windows, and other operating systems, already handle that. They move threads around to different cores to distribute the load and make use of as much processing power as they can. On windows XP at least, you can ctrl-alt-del and bring up the task manager, and go to the process tab, right click on a process, and select Set Affinity. There you can set which cores a program is allowed to be set to, and so you can set things up manually there. By default, all of the cores are allowed places for that thread to run on. And in practice, when I've seen it tested, manually setting programs to specific cores doesn't produce any better result than simply letting windows handle where things run automatically.