What i hate most is that since we can't get transistors much smaller we keep adding cores, but in the future who will need 32-64 cores...
Except for some highly parallelizable applications like 3d rendering and video encoding, maybe compression it's a lot of wasted power.
Even a 4-8 cores today sleep most of the time in normal average user usage.
And processor speed have been pretty much stagnant at 3-4ghz for a while now.
In the future, everyone is going to need 64 cores, because future software is going to be written to run well on 64 simple, low clock-speed cores.
The only reason we need complicated, high-clock-speed individual cores at the moment is because we all suck at writing software. It's a myth that only certain types of problems can be parallelized...
Look at the brain: a trillion simple processors, running at clock speeds measured in Hz instead of GHz, using only 20W. That's pretty energy efficient.
GPU's are the same -- their evolution into using many cores has been driven largely by energy efficiency. Running lots of simpler cores is more efficient than a single super-fast and complicated one. The problem right now is a software one -- we need to unlearn a lot of engineering knowledge and re-learn it for a better type of computer.