Occasionally, I feel the need to discuss technology, as my day business does depend on it. Actually, my DJing does also, to some extent. But still, I really abuse computers with my work, everything from running local virtual machines for development, to Photoshop, video editing in After Effects, and 3D Rendering. Then, of course, I still game on occasion.
Now, it used to be that I would build a new computer every 2 or 3 years. That was about the time when a build would start to have some issues, mainly because it was so heavily abused, and also the point at which performance increases would justify the cost. Every 2 or 3 years, I could double performance with a new build.
That hasn’t been the case for a long time. The current machine I’m running was built in 2011, and since then, the only component that’s seen an upgrade is the graphics card. Back when Bitcoin mining was a thing, I picked up a pair of Radeon 7950s and swapped them in, and made a nice tidy profit from that.
The reason I haven’t upgraded can basically be laid on the doorstep of Intel. AMD stopped competing in the high end CPU space sometime around 2008 or so. The company had decided that competition with Intel was too expensive, and relegated future designs to the low end market. This, in turn, made Intel very lazy. The i7-2600k in this build remained a competitive processor for a very long time. Even today’s i7-7700k is, perhaps, 40% faster. For 6 years of CPU development, that is really poor.
Meanwhile, my old build has been brutalized for nearly 6 years, and components are starting to fail. I used to have 24GB of RAM in this machine. Two DIMMs died a few months back, so I’m down to 16GB. The power supply is… twitchy, the system itself just feels less stable in almost all metrics, for which blame can probably be laid upon the motherboard. This system is giving me indications that I’ve a time limit on how much longer I can beat it to death.
Meanwhile, the only Intel options that looked interesting were completely unaffordable. The i7-7700k is pretty well priced, of course, but it’s a 4 core/8 thread CPU like my 2600k, and the IPC and clock speed improvements are not very impressive. Meanwhile, Intel released the 6900k 8 core/16 thread CPU, and the 6950k 10 core/20 thread monster. At least in development and content creation, these would be more than twice as fast as my 2600k. But these cost around $1100 and $1600, respectively, and require a much more expensive motherboard to boot.
Intel has enjoyed the fruits of being an effective monopoly in the high-end CPU space. High prices, and unimpressive performance gains were the order of the day. Monopolies really do stink. On the other hand, I have to think that even as a monopoly, this behavior was kind of stupid on Intel’s part. After all, they could have sold me a CPU or two in the last few years if they hadn’t acted this way. How many sales were lost because people didn’t see any persuasive reason to upgrade?
Fortunately, for whatever reason, AMD has decided to reenter the high-end CPU market with the Ryzen 7 series. I won’t go into too much detail on the benchmarks, as others have done a much better job of that, but the verdict is really fascinating. The Ryzen 1800x is nearly as fast as the high-end Intel 6900k and 6950k chips. In content creation, it appears to be slightly ahead of the 6900k, and somewhat behind the 6950k, which makes sense given that the latter is a 10 core part, and the Ryzen 7 line is merely 8 core/16 thread.
Nonetheless, this is very impressive, because even the most expensive Ryzen CPU is $499. The 1700 and 1700x are, of course, even less expensive. The 1700x may be the sweet spot, in that a modest overclock will grant performance on par with the 1800x.
In gaming, the verdict is more mixed. The Ryzen is competitive with the Intel 8 core chips in gaming, but not as competitive with the i7-7700k 4 core part. The reason for this is, of course, that games are less optimized for multi-threading. So the higher-clocked 7700k actually beats out its 8 core siblings and the Ryzen lineup by around 10% or so, across the board. There is a lot of speculation surrounding Ryzen performance in gaming, however. Brad Wardell, the CEO of Stardock, had this to say on the matter:
“Oxide games is incredibly excited with what we are seeing from the Ryzen CPU. Using our Nitrous game engine, we are working to scale our existing and future game title performance to take full advantage of Ryzen and its 8-core, 16-thread architecture, and the results thus far are impressive. These optimizations are not yet available for Ryzen benchmarking. However, expect updates soon to enhance the performance of games like Ashes of the Singularity on Ryzen CPUs, as well as our future game releases.”
The Ryzen may actually be able to gain some low hanging performance in this area. Its spectacular content creation benchmarks, and synthetic benchmarks show that AMD is not bullshitting about the CPU’s performance, as they’ve done in the past with the utterly garbage Bulldozer and Piledriver lineups. So in this case, the fact that developers have been optimizing more or less exclusively for Intel’s chips for nearly a decade — because AMD’s offerings were crappy — may have given Ryzen a handicap in those benchmarks. If so, we should expect to see a modest increase in gaming performance in the coming year.
There were two other teething problems for Ryzen. First, the Windows 10 scheduler incorrectly identifies physical CPUs (cores) with logical threads, and attempts to provide both with a similar workload. In workstation applications, this is a more or less a non-issue. In games, however, it has become a handicap for Ryzen. AMD claims to be working with Microsoft to provide updates to the Windows 10 scheduler to fix this problem. Ironically enough, Windows 7 does not have this issue (it’s also not officially supported anymore — thank Microsoft for that idiot decision). Gaming benchmarks in Windows 7 appear to be significantly better as a result, with early adopters seeing a roughly 8% improvement with the Windows 7 scheduler, over the Windows 10 scheduler. So if Microsoft deigns to fix this, which is by no means a guarantee, we should see Ryzen gaming performance jump to within a percent or two of the 7700k.
The last hiccup is the memory controller. Unusually for a CPU that is otherwise very fast and competitive with the Intel parts, the memory controller is rather weak. It is dual-channel only, and getting maximum memory bandwidth, at the moment, requires using only two DIMMs, and single rank memory. Using two DIMMs is generally not an issue at the moment, but the single rank memory issue is a major problem. It takes a lot of research to find out which memory kits are single rank, as this is not commonly listed in the specifications. The usual method is to visually inspect the memory. If the chips are on one side only, you can be about 99% certain it is a single rank part. But this is hard to do when shopping online, as the heatspreaders cover the chips, and the spec sheet doesn’t list whether it’s single rank or not. This is explained in great detail at Legit Reviews.
This will likely change in the near future, as more UEFI code comes out of AMD, and they optimize the memory controller somewhat. For now, if you are building a Ryzen box, be sure to check the motherboard maker’s QVL (Qualified Vendor List) for compatible memory. Asus, at least, has done a lot of research on this, and has even specified which memory kits are single rank, and thus best for Ryzen. The memory manufacturers themselves often don’t even do this, or bother to specify it, so kudos to Asus for taking the time to do that right.
Take careful notice of the memory speeds and latencies available to you, as Ryzen’s weaker memory controller and lack of quad-channel support make it much more sensitive to RAM speeds than Intel’s chips. Maximize memory performance to avoid a bottleneck here.
What we have here is a part from AMD that occupies a unique market position. It was a brilliant move from them. If you want the fastest gaming-only chip, the i7-7700k is still your best bet, as its higher clock speed gives it an unbeatable advantage here, and having 8 cores doesn’t do much for you in gaming (yet, anyway). Four is enough there, for now at least. If you want the absolute fastest workstation chip, the i7-6950k is still the fastest thing out there… if you have $1600 to pay for it.
But what if you’re like me, and your primary computer is a mixed-use machine? Something that sees use as a graphics and video workstation, a gaming box, and even, on occasion, a testing and development server? There the Ryzen shines. It’s cheaper than the Intel workstation chips by a huge margin, while offering broadly similar performance, and it handles games just fine, even if it’s not quite the fastest there either. It won’t double the performance of my 2600k in gaming, but it will more than double it in workstation and dev duty. And it will dominate the 7700k in workstation and dev duty.
So you sacrifice maybe 10% of gaming performance, and even then, only in situations where you are not GPU bound, and gain 50%+ in productivity and content creation compared to the 7700k. That’s a trade I’d make all day long. I suspect a lot of folks will be thinking similarly.
AMD created what’s probably the best general-use CPU on the market today.
So I’ll be building a Ryzen box this time around. But even if you don’t want to roll the dice with AMD, I imagine Intel will feel some competitive pressure again, and maybe we can get back to the market working like it ought to.
Ironically, however, where my last build used an Intel CPU and an AMD GPU, my new build will be a reverse. An AMD CPU, and Nvidia GPU (the Geforce 1080 Ti is the king right now). Maybe AMD should apply the same level of dedication they did with their Ryzen project to their next Radeon release (they claim the Vega release will be good — but we’ll have to see). Either way, though, folks ought to be thanking them for giving us an alternative to Intel that doesn’t require sacrificing your first-born son to buy.
Update: A great explanation of what’s going on with the mixed gaming performance from Ryzen. As it turns out, the decision by AMD to split the CPU into two CCXs (Core Complexes) created a latency issue between the two core complexes when there is a lot of thread-to-thread communication. It looks like this is actually a pretty easy fix, overall. Windows 10’s scheduler needs to treat them almost like two quad-core chips, rather than a single octa-core chip, which ought to distribute the workload better. I remember this was an issue for early Intel quad-core chips, which similarly split into two complexes of two cores each.
This video explains it:
This means a Windows update should fix most of the bizarre, split-personality of Ryzen. Let’s hope Microsoft actually bothers.