Ryzen

I started building my old gaming PC in 2008, an AMD Athlon 64 dual-core CPU with Nvidia 9600GT GPU, a cheap motherboard and power supply, and a case that I modified with wood and acrylic glass.

This seemed like a good idea in 2008.
Batman: Arkham Asylum, AMD Athlon 64 X2 and Nvidia 9600 GT.

I later replaced the CPU with a triple-core AMD Phenom II, then switched to a better motherboard and power supply for overclocking, replaced the GPU with an AMD Radeon 5770, upgraded again to a quad-core Phenom II, added a second Radeon 5770 in Crossfire mode, and a pair of 10K RPM hard disk drives in RAID 0 for faster game loading (when Solid State Disks were too small and expensive).

…and moved everything into a better case, replaced the loud GPU fans with passive heat sinks, and unnecessarily water-cooled the CPU.
Grand Theft Auto IV, the first game that really required 4 CPU threads.

Finally I replaced the two Radeons with a Nvidia GTX 680 in 2013. That same PC is still in use today however I avoid using it for anything important because it sometimes crashes, or fails to resume from standby, or just won’t turn on. Some modern games run perfectly at 1080p, others are too slow or crash for no reason.

Max Payne 3 with the GTX 680 GPU.

A small lightweight laptop was the more convenient form factor for my current computing needs, so a Dell XPS 13 has become my primary workstation. As a temporarily solution for PC gaming I have been using an AKiTio Node external graphics card enclosure to connect an AMD Radeon RX Vega 56 to the laptop by Thunderbolt 3 cable.

Powerfully impractical.
Wolfenstein 2: The New Colossus, on Dell XPS 13 with Vega 56 GPU.

This works very well for some game engines, while others are severely restricted by the 2x PCIe lanes of the laptop’s Thunderbolt 3 port, or the additional latency of the Thunderbolt 3 controller, or the laptop’s 3.1GHz dual-core (4 thread) CPU, or the relatively small 8GB system RAM.

None of these factors are a problem for compute tasks like video encoding or OpenCL applications. I can highly recommend an external GPU for professionals requiring GPGPU on a laptop that has Thunderbolt 3 with weak inbuilt graphics. But it’s not for gaming. If I wish to call myself a PC gamer in 2018 and beyond, I need more computer.

Parts list

CPU: AMD Ryzen 5 2600, 6 core (12 thread)
CPU Cooler: Deepcool Gammaxx GT RGB
GPU: XFX AMD Radeon RX Vega 56 8GB
GPU Cooler: Raijintek Morpheus II
RAM: 16GB (2x8GB) G.Skill FlareX DDR4-3200 14-14-14-34
Motherboard: ASRock Fatal1ty B450 Gaming-ITX/ac

The main parts running on the test bench with the included AMD CPU cooler, which is fine if you don’t overclock it.

StoreMI

After testing system stability by running LuxMark and Prime95 overnight, I set up a tiered storage pool with StoreMI, which is a ‘lite’ version of Enmotus FuzeDrive that AMD has licensed for free with X470 and B450 motherboards. I combined a Samsung PM951 256GB NVMe SSD with a Seagate FireCuda 2TB HDD to use as my primary filesystem for Windows 10 and all the games. On the first day it was very fast, but the system occasionally crashed with a meaningless blue-screen error. The next day, after filling it with 400 GB of Steam games and some Windows updates, the disk write speed slowed to 60KB/s. Then it got stuck trying to install more Windows updates and finally became completely unusable – crashing to blue screen on every boot.

I wiped the disks and installed Windows to the 2TB HDD, then installed Primocache to use the NVMe SSD as a read/write cache. This worked as expected – speeding up loading times significantly after the files have been accessed the first time and copied into the cache – but I still wanted to find out why StoreMI failed when it received positive reviews on major tech websites.

Is this meme too old? Are memes still a thing?

Forums and Reddit discussions suggested that StoreMI has issues with NVMe drives that use the Microsoft NVMe driver. This Enmotus support article seems to agree. Unfortunately Samsung doesn’t provide a driver for the PM951 so I wiped the disks again and installed Windows to the NVMe, then created a StoreMI tiered storage pool for games with the 2TB HDD and a Crucial MX500 250GB SATA SSD. This works perfectly!

Overclocking

Ryzen 5 2600 can run a single CPU core at 3.9 GHz for a short time but will limit itself to 3.676 GHz on all cores under sustained load. I was able to achieve a stable all-core CPU speed of 3.95 GHz by raising the voltage to 1.3 V with a maximum temperature of 67 C using the Deepcool Gammaxx cooler. Games and benchmarks seem to run fine at 4.1 GHz and 1.4 V, although this speed is unstable under stress testing.

The G.Skill FlareX RAM runs at its advertised speed of 3200 MHz after activating the XMP profile. My overclocking attempts produced negligible results.

I raised the Vega 56 power limit to +50% and set the GPU core speed to 1600 MHz and HBM speed to 960 MHz. I also tried overwriting the firmware with one from a Vega 64 – and it did run faster (HBM 1100 MHz at 1.0 V) – but in my opinion it isn’t worth the additional heat and power consumption. This GPU core draws up to 150 watts at stock speed, 220 W overclocked, 250 W with Vega 64 firmware, and 300 W with the Vega 64 water-cooled edition firmware.

Benchmark Baseline score Overclocked Difference
Cinebench R15 1262 1421 +12.6%
3DMark Time Spy 6181 6949 +12.4%
3DMark Fire Strike 16168 18254 +12.9%
3DMark Sky Diver 38409 43051 +12.1%

Some of these Blender render tests  finished faster on the CPU, others were faster on the GPU.

Gooseberry benchmark in Blender.
Benchmark CPU Time GPU Time
BMW27 5m 53s 3m 4s
Class room 19m 10s 21m 3s
Barcelona Pavillion 18m 15s 6m 5s
Gooseberry 46m 24s 69m 23s

Games

For competitive multiplayer games like Unreal Tournament and Quake Champions it is beneficial to turn down the visual settings to stay above 200 frames per second, regardless of your monitor refresh rate (because input latency). However, a high frame rate is less important for single-player games. My monitor has a Freesync (adaptive frame rate) range of 48 to 75 Hz, which means that a game running much faster than 75 frames per second won’t look any better than one running at only 75.

AMD’s driver software allows running games at a higher resolution with the image down-scaled to your monitor’s native resolution (which is 2560×1440 in this case), or smooth up-scaling from a lower resolution. With that flexibility in mind, I have tested various high-end games from the last 5 years at the highest visual quality settings, adjusting the resolution up or down to keep average frames per second (FPS) near 75 for the best single-player experience on this monitor.

Anti-Aliasing, PhysX, GameWorks, and HairWorks are disabled in these tests.

Crysis 3 (2013)
71 FPS, 2560×1440, ‘Very High’ Preset

Batman: Arkham Knight (2015)
87 FPS, 3200×1800, Highest Settings

The Witcher 3 (2015)
73 FPS, 2560×1440, ‘Ultra’ Preset, ‘High’ Post-processing

Metal Gear Solid V: The Phantom Pain (2015)
60 FPS (capped), 3200×1800, Highest Settings

Grand Theft Auto V (2015)
79 FPS, 3840×2160, Highest Settings

Deus Ex: Mankind Divided (2016)
82 FPS, 1920×1080, ‘Ultra’ Preset

Rise of the Tomb Raider (2016)
83 FPS, 2560×1440, ‘Very High’ Preset

Doom (2016)
82 FPS, 3840×2160, ‘Ultra’ Preset

Doom at 4K.

Battlefield 1 (2016)
79 FPS, 3200×1800, ‘Ultra’ Preset, HDR10

Prey (2017)
72 FPS, 3200×1800, ‘Very High’ Preset

Wolfenstein 2: The New Colossus (2017)
73 FPS, 3840×2160, ‘Mein leben!’ Preset

Warhammer: Vermintide 2 (2018)
77 FPS,¬†2560×1440, ‘Extreme’ Preset

10 years after the first attempt, this is my second home-made wood PC case.