Linux tests show how Windows 10 affects results
I'd normally say, okay, memory bandwidth and latency are the real issues, but there is that Linux thing. That is, in tests run by Michael Larabel at Linux-focused site Phoronix, the Threadripper 2990WX actually performs on a par with the Core i9-7980XE rather than heavily trail it. Phoronix runs a slightly older version of 7-Zip, but it's clear that moving to Linux helps Threadripper 2990WX. A lot. Phoronix even tested it using Windows 10 Server.
Phoronix's Linux test shows issues not just with 7-Zip, but also several other tests where Windows 10 underperformed the Linux version. So it's clear Windows has an issue right now. But if you're in the crowd that wholesale dismisses it as a weakness at all, I'm not so sure.
One Linux vs. Windows test that would back up memory bandwidth and latency as issues are tests by Steve Walton over at Techspot.com. Walton tested Windows and Linux performance using the latest 7-Zip version and found Core i9 still ahead despite having fewer cores. Greatly improved for Threadripper? Yes. But still clearly slower in a multi-threaded test that does scale to all available cores.
The compiler is another factor
In searching for more answers on Threadripper's 7-Zip performance, we wondered whether the compiler was at fault. If an outdated compiler was used to build the 7-Zip executable, it could certainly hurt the Threadripper's performance. To find out, we downloaded the source code for 7-Zip, the latest version of Microsoft's Visual Studio 2017, and compiled it into an executable.
We ended up with basically the same result, and it looks like the latest version of 7-Zip is actually on the latest available Visual C++ compiler. This doesn't completely dismiss compilers, as different compilers do matter. If, for example, the applications on Linux were compiled with the GCC or Intel compiler, it might explain the performance differences.
HandBrake test brings up more questions
While Windows 10 clearly, clearly has issues with the design of Threadripper, it would be wrong to say memory bandwidth and latency aren't in play.
To see just how much memory bandwidth helps or hurts both CPUs, we took VeraCrypt and ran it with the larger 1GB workload. As we saw with 7-Zip, the Core i9 's VeraCrypt performance drops off a cliff and is actually is worse than the Threadripper's (albeit with quad-core memory), as you can see from the blue bars below.
The Threadripper 2990WX does suffer greatly with the 1GB workload. But if the issue is how Windows handles the memory configuration on the Threadripper, it should get better after shutting off two dies, right? It does—but as you can see in the green bars below, performance increases only slightly when limiting it to just 16 cores and two threads. The result is again confusing, because if Windows 10 is at fault for the poor performance of the shared memory controller design,why is the performance of the Threadripper 2990WX not as fast as the Core i9's? Remember—both CPUs are locked at 3GHz.
Our last test used HandBrake 1.1.1 to encode a 4K video file using the 1080p Chromecast preset. Note: This HandBrake result is different from others we've run, so it can't be compared to previous results.
Video encoding is often associated with increased memory bandwidth. While it does matter, we can see it's not a big deal even when you go from 77GBps to 18GBps on the Core i9 on this particular preset.
Our results from cutting the Threadripper's die use from four to two also isn't a big deal. It's actually slightly faster with two dies turned off, but almost within the margin for error in HandBrake encodes.
This leads us to believe that the only reason a 32-core Threadripper is slightly slower than an 18-core Core i9 in this particular HandBrake run is likely due to the vagaries of HandBrake itself, and how well it runs on each processor. We should also note that the app itself is multi-threaded, but doesn't scale with core counts.
There's no easy answer
If you were hoping for an easy answer to your lingering Threadripper performance questions—take a number. Based on our tests, the answer is, it's complicated.
While we didn't do Linux testing, we've seen enough results run by others now to say that Windows 10 is handcuffing performance in certain applications (although the compiler used for those particular tests might share some blame, too.)
We also believe that Threadripper 2990WX can be handcuffed by memory bandwidth and latency in some workloads. It just makes sense when you're talking about sharing quad-channel memory among 32 cores, versus sharing quad-channel memory among 18 cores.
In the end, we think you should still choose your high-performance CPU based on the task it'll do. Our results from our original review still basically apply. If you do thread-heavy tasks such as 3D rendering or modelling or tend to multi-task, having 32 cores and 64 threads in a Threadripper 2990WX will be unlike anything you've ever had before.
If, however, you tend to stick to workloads that aren't has heavily threaded, such as most video encoding chores, and need higher clock speeds on apps on lightly threaded applications—and also are very memory bandwidth dependent, the Core i9-7980XE might be the better choice for you.