The AMD Ryzen 7: plenty of power, but underwhelming gaming performance

Ryzen's performance

Last week I was able to show a limited preview of Ryzen performance, but it's only now that I can report my full set of benchmarks. I've got good news and bad news for anyone looking to build an AMD Ryzen system. Basically, I have some caveats before we get to the results.

The good news is that in heavily-threaded workloads, Ryzen looks every bit as potent as AMD has suggested. Processors with eight cores and sixteen threads have been relegated to the extreme performance community by Intel going back to the i7-5960X, with a starting price of $1000. AMD takes that ludicrous price tag and kicks it to the curb with a $500 halo part, and then ups the ante with $400 and $330 offerings. And just for good measure, every single Ryzen processor is multiplier unlocked, so enthusiasts can coax even more performance out of the parts.

If you've been longing to try out a beastly 16-threaded monster, the price barrier to entry just got slashed from around $2000 for a complete high-end build to around $1250. Ryzen also easily beats the old FX-series in every test I ran, with even the entry-level Ryzen 7 1700 at times more than doubling the performance of the FX-8370. Yeah.

The bad news is that Ryzen's single-threaded performance, and perhaps more importantly its clock speeds, aren't quite as impressive. In some workloads, Ryzen does a great job at keeping up with Intel's Haswell/Broadwell architectures, but it's about 5-10 percent slower per clock compared to Skylake/Kaby Lake. Toss in the higher clocks of Kaby Lake and 10 percent can quickly turn into a 40 percent deficit in some tests. Among the use cases where Intel maintains a decent lead over Ryzen is gaming performance, though this varies by game.

The result is some great wins for Ryzen, and some painful losses. But the losses are actually a bit odd. To be frank, Ryzen and the AM4 platform feel a bit undercooked right now. The Asus motherboard I used for testing originally shipped with a BIOS that didn't perform all that well (scores were slower than what AMD had demonstrated at the Ryzen event), and an updated BIOS improved things by around 10 percent. That's a huge gain from a firmware upgrade, especially for a platform that's about ready to ship, but I have to wonder if there's room for further improvements.

More critically, AMD's gaming performance during my initial testing is far lower than expected in a variety of titles. I've got games where every Intel Core i5/i7 CPU performs within a few percent of each other, indicating the games are largely GPU limited. Based on the CPU-centric testing, I expected Ryzen to be right in the mix, matching Broadwell-E. But while that happens in a few games, in others it comes up well short, sometimes by 20 percent or more. I contacted AMD regarding my initial results, and received a couple of suggestions.

AMD's first suggestion was to test at 1440p or 4K, which is complete bunk. Testing higher resolutions will absolutely put Ryzen's gaming performance closer to on par with Intel, but only in the sense that running higher resolutions shifts the bottleneck to the GPU. Even AMD's FX-series performs relatively close to Intel in many games, provided you're running at 4K. But if you want to know how Ryzen compares to Core i5/i7 when the GPU isn't the bottleneck, you need to test at lower resolutions.

I use 1080p with 'ultra' settings, with a GeForce GTX 1080 FE card. This is the most popular gaming resolution (by far), and even at ultra quality there's still room for the CPUs to differentiate themselves—the FX-8370 for instance is about 25 percent slower than an i7-7700K at these settings. If Ryzen is 40-50 percent faster than Excavator, and it seems to be in the CPU tests, then it should be on par with Intel's best. But it isn't, at least not when using the default BIOS settings.

The second suggestion from AMD was to disable SMT in the BIOS. Why should this matter? It comes down to resource contention and the Windows process scheduler. Because Ryzen has eight physical cores with eight virtual cores, Windows by default sees 16 available processing cores. The problem is that not all of those cores should be treated identically when scheduling tasks. Specifically, every other core is a 'logical' core, meaning an SMT-enabled core, and it shares resources with a physical core.

If you happen to run a workload that only uses four or so heavy threads, and Windows happens to put two of the heaviest threads on the same physical core, performance will end up being lower—sometimes significantly so!—than if Windows were to schedule the threads on separate physical cores. Disabling SMT makes it so resource contention is lower, as each core ends up being dedicated to a single task.

There's yet another suggestion from AMD that disabling HPET (the high performance event timer) in Windows and/or the BIOS can further improve performance, and this is true for most of my gaming test suite. The only game where it seems to hurt performance is Shadow Warrior 2, and I have no idea why that's the case. But the combination of disabling SMT and HPET improved overall gaming performance by about five percent.

Blame this guy for the delays. Thanks, Nvidia!

And here's where I ran into time constraints. Last week on Friday, I got my Ryzen kit for testing. I spent most of the weekend running my benchmark suite, because this week I knew I had to go to an Nvidia event where it would announce the GTX 1080 Ti. But it wasn't until Monday that I got some good feedback for how to improve gaming performance on Ryzen. Right now, I've been able to retest only one of the three Ryzen CPUs in gaming, so consider this a preview of what's to come, and I'll finish testing the other CPUs (and overclocked gaming results) next week.

But there's a huge elephant sitting in the corner: why the hell should anyone have to disable SMT with Ryzen? The answer is that they shouldn't, and AMD needs to provide a better solution than going into the BIOS and enabling/disabling SMT depending on what applications you're running. A Windows driver ought to do the trick, I think, and AMD needs to do that yesterday. That AMD failed to 'catch' this issue in advance of the Ryzen launch is troubling, but it's sort of par for the course with AMD. It's a much smaller company than Intel or Nvidia, and mistakes happen. See: Bulldozer architecture, or the RX 480 power exceeding spec, or the RX Fury X's overly whiny pump at launch. You get the point.

I suspect part of the issue with Ryzen is that AMD was trying to prevent massing leaks of benchmarking data, which meant there wasn't as much qualification by motherboard companies, which pushes the 'fully baked' timeframe for Ryzen out another month or two. And speaking of motherboards, all of my initial testing was done on the Asus Crosshair VI Hero motherboard. It looks like a great board, and performance in CPU-centric testing is good, but I've heard from a few other reviewers that perhaps the Gigabyte Aorus board might perform better—particularly in games. I haven't had a chance to test the Gigabyte board, or an MSI board either, but those results will be coming next week.

And with that massive caveat and sidebar discussion out of the way, let's hit the benchmarks, starting with the CPU-centric testing.