If I get two 1.5ghz cpu's, do I get the processiing power of a 3ghz, or is the processing capability more or less capable than a single 3ghz processor. Please explain why. This question has been bugging me for quite some time now.
You would get the processing power of two 1.5GHz CPU's. Ideally that would mean that you could accomplish 2 task in the same time it would take a single 1.5GHz CPU to do 1 task. But in reality, so much of the system is shared, you only get around a 30% boost in most multithreaded applications, and a 0% boost in most single threaded applications.
Compare that to a single 3GHz CPU, which will give you around a 50% boost, and you see that 2 1.5GHz CPU's do not equal one 3GHz CPU.
These are general statements and I'm certain there is someone who will point to a ray tracing application or something that actually does 2x the work with 2x the CPU's, or runs 100% faster on a processor of 2x the speed, but these applications are exceptions.
<font color=blue>Only a place as big as the internet could be home to a hero as big as Crashman!</font color=blue>
<font color=red>Only a place as big as the internet could be home to an ego as large as Crashman's!</font color=red>
Never thought about that the cpu's share the motherboard and have to share everything, which would be a limited factor in performance. However, if my workload is split 50/50 between the CPUs, whch is what a dual processor does (correct me if I'm wrong). If the load is split 50/50, in theory, it would be 3ghz perfomance. But, like you mentioned, all the resources are shared.
Too many variables!
if you got two opteron processors each with dual channel DDR ram and found an application that runs with near perfect scaling then your Dual CPU PC would be equal to 3Ghz.
However for the every day user the number of programs that run on two processors is very minimal. And most apps would be pushing to get 75% scaling efficiency.
And other factors come into play like memory bandwidth requirements.
Course if its something like seti@home or cure for carcer you CAN run two seperate processes to use the CPU power effectivly.
Lets make the PCs identical same harddrive space, same capasity on memory, etc, but one runs on 2 pentium 4 1.5ghz cpu, and another one running one pentium 4 3ghz cpu. If I was using programs not optimized for dual processors, who would have an edge? Are there benchmarks out there that can settle this debate?
definatly without question the 3ghz cpu...dont need benchies to show that...the 3ghz will lay down some woop a$$...multi cpus do not help 1 bit for non optimised tasks...in fact they are 5-10 percent slower because of the added overhead....
So easy to fry yet tastes so good...
Silicon: The other, other, other white meat
It depends on what your workload is. Seti@home, for instance, is not multithreaded. However, you can run 2 instances of the application and do work on multiple workloads at the same time. This would be the ideal workload for SMP setups. From that point on, you'd have to look at the dataset size (will it fit into the cache of the CPU?). In Opteron's case, since each CPU has its own dedicated memory pocket, this isn't an issue if the OS is NUMA-aware and the dataset does no or very little I/O. Theoretically, this should mean that in a perfect situation, a dual-Opteron setup should provide 2x the performance of a single Opteron of the same frequency. Of course, that situation is nowhere near reached. Anand's database and transaction server software test showed a 33% SMP scaling (that is, going to dual from a single setup with Opteron brought about a 33% improvement in performance).
"We are Microsoft, resistance is futile." - Bill Gates, 2015.