The other thing the dual 6 cores have going for it is more cache(if we are only looking at Intel's offerings then we are talking about 2x the amount of L3 cache, L1 and L2 are the same in both the 12 core single cpu and the dual 6 configs)
Errr, I don't think so. The E5 building block structure uses layer cake design (horizontally across the die) like this:
[ core ] [ring bus ] [ L3 cache blocks ] [ring bus ] [ core]
( the non-core logic (memory controller, PCI-e controller , QPI etc) is at the top and bottom of the layer cake along with the ring bus going horizontally across the top/bottom to close off the ring around the interior of the die. )
The [core] here includes the core's logic and L1/L2 caches.
To get to 6 cores you stack up three of these layers. To get to 12 you stack up 6 of these layers. There are two 2.5 MB blocks of L3 per layer. So two 3 layers stacks ( 2 * ( 3 * 5MB) ==> 30MB ) or one 6 layers ( 6 * 5MB ==> 30MB )
Same stuff. More cores directly leads to more L3 cache space. ( there are a couple of quirky products in Intel line up where they kneecap the L3 cache a bit for product differentiation. For example E5 1650 6 cores 12MB L3 and E5 1660 6 cores 15MB L3 , but generally more cores more L3. )
As the process technology gets better it becomes more practical to just keep stacking more layers on the cake. Just have to worry about saturating the ring bus and getting the I/O on/off the die to keep up with the increased demands from the cores. But other than that can just continue on with the "core count" war with AMD.