I was wondering home come that the Geekbench score for the newest iMac is barley lower than the new Mac Pro? I know Geekbench doesn't test for GPUs, but I still feel that the nMP has better processor and memory speed...
There are only several ways to make a CPU go faster:
(1) Increase the clock speed. Unfortunately designers hit a limit (thermal, also other factors) whereby they can't go any faster using current fabrication technology.
(2) Process more instructions simultaneously, sometimes called SuperScalar:
http://en.wikipedia.org/wiki/Superscalar. This limit is composed mainly of two sub-limits: (a) How much instruction-level parallelism exists in the code:
http://en.wikipedia.org/wiki/Instruction-level_parallelism Unfortunately they are already exploiting most of the ILP which exists, (b) Ability to do inter-instruction dependency checks. This difficulty scales roughly with the factorial of the in-flight instructions, so going over about 6 is almost impossible. Most new CPUs are already approaching that limit.
You can increase parallel instruction processing by using VLIW but that requires a totally different architecture, entails many issues with legacy software, and commercial efforts to date have not been highly successful:
http://en.wikipedia.org/wiki/Very_Long_Instruction_Word
(3) Use more threads, one (or more) per core. This is the only remaining CPU technique with any headroom left. However it is limited by Amdahl's Law, and many apps are already approaching that limit:
http://en.wikipedia.org/wiki/Amdahl's_law
(4) Use heterogeneous processing, whereby specialized subsystems handle certain tasks using dedicated hardware. One example is Intel's Quick Sync, essentially an on-chip hardware transcoder. It can increase video transcoding performance 5x or 10x for certain codecs. Ironically the Xeon CPU doesn't have this:
http://en.wikipedia.org/wiki/Intel_Quick_Sync_Video
Another example of heterogeneous processing is a GPU. Those greatly accelerate certain activities, but only those with algorithms that favor GPU acceleration and which have been written to exploit that.
A quad-core nMP doesn't have higher CPU benchmarks than new iMac because they are both affected by the same fundamental limitations that increasingly govern CPU performance.
A nMP with higher core counts can be dramatically faster than a new iMac on certain multithreaded and GPU-oriented tasks.