Building a PC in mid-2021
My 12 year old son’s aging 2012 11” Macbook Air has gotten him successfully through a year of online learning in the pandemic, but he was increasingly frustrated by its near-dead battery, tiny screen, and most importantly the inability to play with friends. Most games aren’t available for macOS and even lightweight games that used to work fine before like Minecraft or Terraria started lagging with updates over time. Wanting to give the little guy a motivation boost for the last stretch of the school year, I agreed we would build a PC together.
Turns out this was the worst timing ever to build a new gaming rig. You can read about the ordeal with getting a top-tier GPU in mid-2021 in its separate article.
But even without the GPU issue, I somewhat underestimated how different building a PC is these days compared to my last build I made in 2003. PCs now have cute glass walls making it possible to look inside, and most components can be bought in gamer-targeted variants with RGB lighting. Water cooling, which was a curiosity when I last built a computer, is now pretty mainstream. Most misleadingly, the builds that you’re looking at online suggest that there’s hardly any cabling inside a computer anymore, you can’t see much of it through the glass. Let me tell you it’s the opposite. There is tons of cabling since the motherboard now required three separate power connectors, there’s plenty of cabling for the extra case fans (one cable for PWM, and another one for ARGB), and the GPU alone requires additional power (three extra 8-pin PCIe power connectors!).
I secured the GPU first. Then I discussed what else we want with Stanley. I taught him about the different parts PCs are composed of, how they interact, and so on. We decided to go all Team Red, which means AMD for the CPU as well. Ryzen 5000 series processors are better value than Intel equivalents it seems, and Ryzen CPUs are pretty much north bridges too these days, with a memory controller and direct PCI-E. Neat.
I originally looked mostly at ASUS’ ROG Strix gamer brand for the case and motherboard since they seem to be very popular with YouTubers, and look pretty cool. Since we got the AORUS brand GPU though, we looked at what else Gigabyte has to offer. Looking through some YouTube videos on the subject, we also noticed AORUS components are also used pretty often. I was pleased to see they’re generally cheaper than the comparable ASUS components. Stanley liked the eagle logo, as well as their mid-tier PC case. We both liked the idea of an “all AORUS build” since it looks very clean and deliberate, and gives some hope for maximum compatibility. In the end we settled on:
- AMD Ryzen 5600X CPU (6 cores; faster than the similarly priced Intel equivalent, comes with a fan, and provides Smart Access Memory in combination with the Radeon)
- Gigabyte AORUS MASTER Radeon RX 6900 XT
- Gigabyte X570 AORUS ULTRA motherboard (PCIe 4.0, hardened PCIe slots for heavy GPUs, two PCIe 4.0 M.2 slots)
- Gigabyte GP-P1000GM PSU (1000W, should be enough for the power spikes of the 6900 XT which recommends at least 850W)
- Gigabyte AORUS C300 GLASS case (fits everything, not overly long, nice look)
- 2x 500G Samsung 980 Pro SSD (PCIe 4.0 x4 NVMe rated at >5000 MB/s reads)
- 2x 16GB Kingston KSM32ES8/16ME RAM (DDR4 3200MHz CL22 ECC UDIMM single rank)
- CoolerMaster SickleFlow 120 ARGB 3in1 fans (look nice and don’t impose vendor-specific software to control RGB)
- LG 27UL500-W (basic 4K monitor, 60Hz, 5ms grey-to-grey; looks pretty good, we can always upgrade)
It took us two afternoons to build the entire thing. Stanley put all the components in by himself, I supervised the order and helped with some expected and unexpected show-stoppers. The most annoying part? Routing all cables correctly, not forgetting about any, and making sure they’re the right length.
In the end the build looks like this, Stanley-chosen color scheme and GPU stats:
Here’s Stanley taking his first steps in No Man’s Sky on this hardware:
Production Engineering Geekery
There’s two things in the component list that might have raised your eyebrows. ECC RAM and double ultra-fast but small SSDs. Yeah, well, in my time at Facebook I saw drive failures way too many times, and on my dev server, ECC correction logs were a relatively common occurrence. This made me want to teach Stanley about those concepts, too, and in the process save him from both issues.
It turns out AMD Ryzen processors support unbuffered ECC RAM just fine. Note it’s not the contemporary server-grade registered RAM. The unbuffered variant is older, less fancy, and relatively obscure now since it’s mostly sourced by PC enthusiasts. I was able to get two sticks from two different sellers, one in Slovakia, the other in Germany. One of them only arrived a few days after our initial build.
It also turns out AMD chipsets support RAID 1. So the two Samsung drives are set up as an array. This was the most frustrating piece of the setup since the official documentation is pretty confusing, and the vendor BIOS isn’t set up in the same way as the reference one AMD talks about. Fortunately, we found a super useful RAID setup guide for Aorus X570 motherboards which got us through the process step by step. Just upgrade the BIOS firmware before you start. Apparently doing it later might cause problems with your existing array.
Is RAID and ECC necessary for a gaming PC? Probably not. But where’s the fun in building your own if you’re not free to choose whatever components you want? Linus Torvalds for one thinks ECC matters.
And what about the small SSD size? Well, at some point we had to cut some corners financially. This is mostly seen in the case, display, and yes, the SSD size department. But I actually perceive the latter as an opportunity. Sooner rather than later the little guy will notice that the SSD is low on space. It will be an opportunity for him to get another drive by himself, and install it by himself, formatting it, consciously deciding what programs and data should go where, and so on. I just hope the “proof of stake” transition won’t drive up storage prices to insane levels at that point. Sigh, cryptocurrency is evil.
Can your house handle a 1000W power supply?
One scary thing that happened a few times over the first day of use were sudden total power losses to the entire computer. We looked through the build again, checked power usage logs, observed when the blackouts happen. Nothing.
Only once the fuse for the room’s electricity tripped, I realized that it’s probably too low value (10 amps) since it’s also shared with my office. And indeed, after replacing that with a 16A fuse, the problem went entirely away.
Since Stanley’s too eager to actually use the PC now that it’s there, we didn’t do very rigorous benchmarks. But just for the sake of confirming everything works fine, we did a few:
- UserBenchmark #43982495; “UFO” rating, 192% for gaming, 104% for desktop, 181% for workstation use
- 3DMark in Time Spy 1440p #62816857; 15,500 points (18,786 for graphics, 7,785 for CPU); "Better than 99% of all results"
- ATTO disk benchmark of the RAID 1 array: ~500 MB/s read and write on 4KB-sized files; over 7GB/s reads for files larger than 128KB
Since this was asked on Twitter, I also measured how fast it is to configure, build, and test CPython’s main branch with WSL 2 Ubuntu. Configuring takes 12s,
make -j12 takes 22 seconds, and the full test suite runs in 2 minutes 23 seconds:
This is truly a 4K gaming rig. You can max out all settings in Horizon Zero Dawn and it still averages 80 FPS, with a 1% low over 45 FPS. At this performance you don’t need any deep learning supersampling. But you might be annoyed at the heat exhausted by the PC as at this point it really is a furnace. Not a surprise since the GPU needs three additional 8-pin power connections. The noise floor of the entire thing is pretty okay unless all three GPU fans kick into high gear. The particular RX 6900 XT also has some coil whine in some particular situations but nothing deal-breaking.
Windows is fine, actually
I’ve been a macOS user since 10.4 Tiger. Windows 10 H121 is leagues nicer than XP from my times. And 200% view scaling the UI looks great on the 27” 4K screen. There’s still some unnecessary weirdness like audio source confusion when headphones are connected to the front of the case vs to the back of the case. Add Bluetooth to that and more often than not it takes the kid a few tries before he gets sound out. Maybe we’ll some way to alleviate that somehow.
Gigabyte software isn’t, sadly
The Aorus LED software is kind of garbage. It’s single-threaded so when it polls the devices, it’s unresponsive. It takes quite some time to do the polling, and in that time the colors are all over the place until the app actually loads, then it settles on the chosen scheme. The color picker only works with the mouse. There are edit boxes for RGB values you can enter with the keyboard but they do nothing. The GPU stats screen resets to some gimmick tamagotchi-style thing on every reboot. Hopefully this will be improved.
ECC and RAID
The RAID array is very fast. Windows loads super quick, games have very short loading times, including Horizon Zero Dawn which Stanley is now spending a lot of time on. Also, remembering how crappy all this was not long ago, I have to admit there’s a warm fuzzy feeling seeing this technology working on a desktop PC.
That’s also all I have to say about ECC memory. It works. Windows reports it working, tools show it correctly. So far no logs to report of any correction events. As for performance, the CL22 timings are slower than non-ECC RAM but in the end it doesn’t impact the overall system performance much, as you can see in the benchmarks we’ve made.
Was is worth it?
Purely financially? God no. You can get an XBox Series X for five times less money and it comes pre-built with full warranty for the entire system.
But in terms of education value? Oh man, totally worth it. Seeing the kid assemble the thing, understand what goes where and why, tweak his settings to his liking, fiddle with game mods from the start, report weird behavior to me with what he already diagnosed on his own, all this is amazing. And the best part? One of the first questions he asked was about pixelart tools and ways to write games of his own.
Hopefully, the build will last for 5+ years with no or little additional investment. In that sense maybe the initial financial hit will be somewhat amortized by the long-term usefulness of an open and extensible platform. But even if it won’t, I’m pretty happy with the outcome.