AMD needs to do more to fix Threadripper's optimisation issues

Written by Antony Leather

February 6, 2019 | 12:30

Tags: #cpu #hedt #high-end-desktop #ryzen #ryzen-threadripper #socket-tr4 #threadripper #workstation #zen

Companies: #amd

AMD's surprise high-end desktop (HEDT) CPU family hasn't had an easy ride. To start with, when it was launched in 2017, the fact that you had to deal with AMD's Ryzen Master software and reboot your PC to get the best performance by switching between memory access modes depending on what you were doing meant that the X399 platform didn't gain as much traction with high-end gaming systems as you might have expected. Things both improved and worsened with 2nd Generation Threadripper; The 2950X improved performance all-round, but the new higher-core processors (2990WX and 2970WX) suffered from slow performance in some benchmarks that at best didn't scale relative to their core counts and at worst was actually slower than the 2950X, a CPU that costs half as much and has up to half the number of cores and threads.

That's not to slate the WX-series entirely - for specific tasks they're still monster CPUs that offer incredible value compared to similarly-priced Intel models. However, I for one was a tad disappointed, as I had been planning to switch from my Intel HEDT setup to a WX-series Threadripper - plans that I had to put on hold given I use my main PC for all-manner of tasks, many of which would be slower on AMD's desktop flagship. 

However, two things have come to light since I originally reviewed the 2990WX in August last year. Firstly, a month or two later Nvidia added an earth-shattering line of text in the 'fixed issues' of its 399.24 GeForce driver, claiming that previous drivers could be responsible for a shock 50 percent drop in game performance on certain 32-core CPUs compared to 16-core models, clearly referencing Threadripper. Sure enough, a quick benchmarking session seemed to confirm this issue, with Fallout 4's minimum and average frame rates rising from 61fps/75fps to 93fps/107fps, Final Fantasy XV from 43fps/64fps to 62fps/83fps, and Deus Ex a little less spectacular at 45fps/68fps compared to the previous result of 39fps/67fps.

These are huge gains equivalent to what you'd expect from entirely different GPUs, and while the 2990WX was still some way behind the likes of the 1950X and 2950X in games (and even further still behind the Core i9-9980XE), I couldn't help but feel for AMD given how huge some of the gains were - 52 percent in Fallout 4 for example - and how close this came after the launch of the 2990WX, which was clearly painted in a rather poor light in games with anyone using an Nvidia GPU in their test system, which I and many others were. It's still not an ideal gaming CPU, even on the side part time, but more was set to come.

Last month, Level1Techs reported what it described as a flaw in the Windows kernel that was mishandling the likes of the 2990WX, causing performance slowdowns on a massive scale that also occurred on Epyc CPUs, ruling out initial assumptions that the lower performance we saw with the likes of the 2990WX was entirely due to lower memory bandwidth and lack of direct access to memory channels by two of the four dies - you can refresh your mental 2990WX schematic above. You can read a summary of the findings and details of a workaround fix here, and thankfully AMD has since announced that it is working closely with Microsoft to fix this issue officially - unsurprising, since the WX chips saw significant performance improvements using the Coreprio tool's workaround, this time in content creation and rendering too.

However, while multi-threaded performance scaling has long been an issue in Windows, it's mostly been down to lacklustre software optimisation and has affected all CPUs to some extent. Here, though, it's a more significant issue that only affects a handful of AMD CPUs. I for one am surprised AMD didn't pick up on either this or the Nvidia driver issue to start with, but I also hate seeing one of the best things to happen to desktop PCs in a long time not do as well as it deserves to, whoever's fault it is.

AMD's already done sterling work with memory compatibility, but I'd like to see AMD avoid driver issues like those mentioned above, manage memory access modes without the need for Ryzen Master, and have these issues with the Windows kernel fixed before 3rd Generation Threadripper hits the shelves. For me it feels like Threadripper is tantalisingly close to a whitewash of HEDT CPUs, and it will be a shame to see software issues get in the way of this. This is not least of all because there's no telling yet just how these issues might affect AMD's 7nm mainstream CPUs, which are rumoured to have up to 16 cores, while Threadripper may well step up from 32 cores as well. We're expecting big things from AMD this year, and given just how much these two issues alone have impacted on performance, one thing I would like to see is a more aggressive and proactive approach to identifying and fixing these types of issues.

Discuss this in the forums
YouTube logo
Project Onda v2 - Part III

September 23 2021 | 09:05