[citation][nom]antilycus[/nom]Dislike it all you want, Clock speed wins every time. (special software like Lightwave, Blender, Softimage, Maya excluded). Unless it's heavely threaded you aren't benefiting from multicore. ANything more than 2 is even debatable. AX,BX,CX,DX,EX,EE all cant share the their info between executions (cores). ITS ALL MARKETING, but go ahead buy your slower clocked extra core CPU.[/citation]
Your theory of clock speed winning all of the time is wrong in pretty much every way I can think of.
Comparing say a 3.4GHz Pentium D to a 2.6GHz Sandy/Ivy Pentium shows that clock speed is not everything because that Pentium D will be way slower than the newer Pentium.
Nowadays, well-threaded software is getting extremely common. Most DX11 games scale well across four threads and a few scale well across up to six or eight threads in many situations. Even average use stuff such as some web browsers, compression/decompression programs, and much more can use multiple cores very effectively. Heck, even if stuff isn't heavily threaded, the sheer advantage of being able to run many instances at once can let many core CPUs show their worth. For example, although some professional workloads are still single-threaded, you can run multiple instances of them as well as multi-task with other things and more if you have a CPU with several cores.
Anything with more than two is not debatable at all. All modern CPUs can share info either through the main system memory or if they have it, L3 cache. AMD's modular CPUs can even share data within each module through their L2 and some of their L1 cache. Most average users can get away with dual core CPUs simply because they don't do anything intensive enough for more to one or two to be worth having, but anyone who does anything intensive can make use of more than two with ease if they want to. Multi-core CPUs are not all marketing whatsoever and most people here at Tom's are more likely to do things such as mid-ranged or high-end gaming or other intensive workloads and be able to make good use out of a CPU with four to eight threads.
[citation][nom]antilycus[/nom]Becaus enothing beats clock speed, period. 2 cores is probably the most you'll get out of todays "just make it compile" programmers. It's truly a dying art. Everyone just wants their results and they don't care how they get it (IBM excluded). A 4GHZ single core processor will wipe the floor of a quad core 2.0 ghz processor. memory can't be shared between cores. You are still only excecuting one instruction per cycle (2 w/ "hyper threading"). Either way data from core one, can't be shared with core2, so you are always suck waiting. Multicore is a marketing gimick.[/citation]
There aren't many situations where a 4GHz single core CPU will best a 2GHz quad of the same architecture. The main system memory can and is shared between all cores of a CPU (heck, it can even be shared between multiple CPUs in multi-CPU systems and some go as far as to share it between multiple independent computers).
All modern x86 CPUs can and do execute multiple instructions per cycle. Hyper-Threading has nothing to do with executing multiple instructions per cycle; Hyper-Threading is about letting a core juggle two threads to make more efficient use of its resources at a given time.
Furthermore, data is always shared between cores. If it couldn't be shared, than multi-core CPUs couldn't even work at all because data-sharing is absolutely necessary. Windows constantly shuffles threads around cores and if not for the capability of sharing data, that simply wouldn't be possible.