Interesting. For several tests the perf/MHz looks about the same. My bet is that only minor changes were made at the core level, at best, and that other improvements came in the uncore (more L3 cache, lower latency L3, lower latency main RAM, more parallelism in the memory controller, etc) and improved ability to sustain clock speeds under dual-core loads.