8350rocks :
But, the difference in IPC currently is only 32 IPC (8 core AMD) vs. 36 IPC on i7 SB...
The difference is only the efficiency of the instructions handling...or were you aware of the actual architecture IPC values?
IPC is not the gap...the front end architecture is...that's why Steamroller will be so amazing...30% increase in effectiveness and IPC increase from 32 to 44...(which will be more IPC than Ivy, and likely Haswell with the exception of the 6 core intel's they will be 48 IPC in Ivy-E)
IPC is NOT a flat value, and varies by workload. Throw in the shared backend, and you can easily get pipeline stalls (which is blamed as one of the reasons for BD's poor single threaded performance). This is especially notable in FP workloads, as the FP scheduler isn't shared like the integer one is.
So anyone claiming to have absolute numbers on IPC is kidding themselves. You can only solve IPC PER APPLICATION.
I'll use this as an example of the math:
As its single threaded, I can safely disregard any pipeline stalls. I'm going to do the math assuming no turbo for simplicity sake though, so these numbers won't be perfect...
I'll compare the 4300 and 2500k.
AMD FX-4300: 3.8GHz
Intel i5 2500k: 3.3GHz
Solving for IPC:
Time = NumberCores * Clockspeed * IPC
IPC = Time / NumberCores * Clockspeed
For AMD (remember: Single Threaded):
IPC = 236.3 / 1 * 3.8
IPC = 236.3 / 3.8
IPC = 62
For Intel (2500k):
IPC = 274.9 / 1 * 3.3
IPC = 274.9 / 3.3
IPC = 83
And just for kicks, the 3570k:
IPC = 302.2 / 1 * 3.4
IPC = 302.2 * 3.4
IPC = 88
Now lets solve multithreaded:
FX-4300:
IPC = IPC = 983.6 / 6 * 3.8
IPC = 983.6 / 22.8
IPC = 43
Note how IPC decreased? Thats likely either a failure to fully utilize all the cores, or the shared backend robbing performance.
2500k:
IPC = 1012.8 / 4 * 3.3
IPC = 1012.8 / 13.2
IPC = 77
Hence why the i5 at a lower clock still beat the 4300: Superior IPC. But note how IPC only dropped by 6, compared to the drop of 19 for AMD: This indicates that the i5 actually scales better then BD/PD (again: could be pipeline stall, lack of core loading, and other factors).
3570k:
IPC = 1108.9 / 4 * 3.4
IPC = 1108.9 * 13.6
IPC = 81.5
Same story here: IPC drops slighty (7.5), but less then half as much as AMD. Farther indication theres a problem somewhere as workload starts to scale (not a good sign for an arch designed to scale).
As far as this PARTICULAR application goes: Intel has far superior IPC, and scales better in the multithreaded bench, even if it looses in pure performance.
Farther, you can break down IPC per core, which nets this:
AMD FX-4300: 7
Intel i5 2500k: 19.25
Intel i5 3570k: 20.375
Hence why AMD only wins when clocked higher and when all the cores are used: Its per core performance is less then half as much. (Do remember that shared backend though).
So yeah, your IPC numbers are kinda worthless in hindsight. You can only solve PER APPLICATION, as loading factors will vary with different apps.