Zen 2 relative IPC vs Skylake

Porina Pew
4 min readMay 12, 2023

--

Let’s take a trip back to the summer of 2019. Zen 2 was just released, and in my opinion was the time when AMD clearly passed Intel in architecture in the modern era. Why compare with Skylake? That was released in 2015, but in 2019 Coffee Lake was still current, and shares the same microarchitecture. For the purposes of this testing, where I will be looking at the architecture performance per clock, not actual product configurations, it is practically identical. This is often referred to as Instructions Per Clock, or IPC for short. I don’t have a way to measure this in absolute terms, but by comparing two devices we can see relative performance.

Here’s the comparison of Zen 2 vs a Skylake when both are fixed at running 2 cores at 3.0 GHz (configured as 1+1 on the 3600). The idea of limiting the cores and clocks, beyond making them the same, is to limit the influence of other parts of the system such as ram. Although L3 size hopefully doesn’t make much difference, it is possible had I used Coffee Lake and did same, it might perform slightly better in some situations. Unless stated otherwise, HT/SMT was enabled and used on both.

3DPM is software written by Ian Cutress. This caught my eye as at the time he used it in reviews at Anandtech. It showed much higher scaling with HT/SMT than anything else I’ve ever seen. I view this as a niche compute scenario.

Cinebench needs little introduction as a widely known CPU benchmark. It has a characteristic of being relatively insensitive to cache sizes or ram performance, so ideal for indicating core scaling performance. The older R15 does not use AVX instructions, and sees more of an advantage than R20 that does.

Y-cruncher calculates digits of Pi and is optimised well to scale with available hardware. At the time this testing was originally done, it did not have a specific Zen2 implementation. One does exist now, but unfortunately I no longer have the old hardware to repeat the testing.

Prime95 may be better known as the ultimate CPU stress test, but is indicative of much software used in the search of prime numbers. Two scenarios were used with the built in benchmark running one task per core. 64k FFT is small and fits well within the CPU’s cache. Note in absolute terms, SMT doesn’t give more performance than without, but there is less loss on Zen 2 than Skylake. 2048k FFT is large, and Intel gets a slight advantage here when HT is on. I suspect this is related to the memory architecture. The Zen2 L3 cache is nearly sufficient to hold a single task, but not when running two with HT/SMT. Ram bandwidth then starts to impact more, but Zen 2 has half bandwidth writes from each CCD and this is probably starting to choke. Intel CPUs offer full bandwidth each way.

Aida64 has a bunch of synthetic benchmarks. Photoworxx in particular seems to be ram sensitive so that may in part be why it is relatively weak. AES has always been a strong area even with past Zen generations. They seem to have replaced Hash with AES3, and removed VP8. Hash was another one running particularly well on Zen, but AES3 swings towards Intel. VP8 I found to be highly variable between runs so I don’t miss that at all.

All considered, Zen 2 has generally better IPC all round compared to Skylake (and by implication, other -lakes going beyond it: Ice Lake on mobile/server, Rocket Lake on desktop). For well scaling multi-threaded software that can use CPU throughput, Zen 2 may offer great performance compared to the Skylake derived architecture offerings.

An exception is for workloads that rely on a unified L3 cache for best performance. Due to the multiple CCX arrangements of most Zen 2 offerings, it should be treated as multiple units of fewer cores as opposed to a single unified offering. Sharing data between these CCX usually means a trip back to ram, where limitations of Infinity Fabric start to make an impact also. This may be seen in Prime95-like software in certain configurations.

Test setup

Software versions:

  • Windows 10 64-bit 1903 with August 2019 updates
  • 3DPM v2.1
  • Aida64 6.00.5100
  • Prime95 29.8b5
  • Y-cruncher 0.7.7 9501

AMD system: Ryzen 3600, Asrock B450 gaming-itx/ac (bios 3.50), Kingston HyperX Predator RGB 4000 2x8GB @ XMP3600 settings

Intel system: i7–6700k, Asus Maximus IX Apex (bios 1301), Kingston HyperX Predator RGB 4000 2x8GB @ XMP3600 settings

--

--

Porina Pew
0 Followers

Explorer of game worlds, tinkerer of PC hardware.