Background

For several years (and graphics card generations) I’ve been considering building a desktop PC. I still remember considering the R9 285 as a GPU back in 2015 because it was likely to be the first AMDGPU driver for Linux for the earlierst versions of what would become this build. A lot has changed in the home PC market since 2015: AMD Launched its Zen architecture, AMDGPU provides pretty close to first-class Linux support and SSDs have become big enough and cheap enough to almost replace HDDs in some applications.

For years, I waited and watched. Put together builds on PC Parts Picker, watched /r/buildAPC and I waited… And then COVID-19 happened and I started to wonder how well the supply lines for something as decidedly non-essential a PC components was going to hold up. So I pulled the trigger on something that’s close to but not quite what I had imagined.

Stack of PC components on a table.
Obligatory picture of all the components in box.

CPU

For CPU I was almost certainly going to go with AMD. This is something that would have been a bit harder justify in 2015 before Zen launched, but even then I was strongly considering the FX-Series from AMD over the Intel offerings of the day. Better multi-core performance helps with a number of largely CPU-bound workloads I might care about, like software compiling. AMD’s (and TSMC’s) process advantage along with Zen’s architectural improvements over Bulldozer make this a very easy choice in 2020.

Since I’m aiming for price to performance, I’m looking at mid-range parts. I ultimately choose the Ryzen 2600. I almost ended up with AF variant of the Ryzen 1600 which would have been less expensive, but I was having trouble finding it in stock.

Motherboard

Since I was looking for a machine that would be nice and compact, I decided to go mini-ITX for the form factor. Beyond having a B450 Chipset, I didn’t have too many requirements for a motherboard and I simply choose what was available under the circumstances. I ended up with ASRock Fatal1ty Mini-ITX board.

Case

Here I was looking for a couple of things that are kindof hard to find in 2020: A case that doesn’t have a tempered glass or plastic side panel and does still have a 5.25 inch drive bay. Since I’m bucking two trends in a form factor that likes to get rid of optical drives, I didn’t have a lot of choices here. I was lucky to find the Fractal Design Core 500. It’s a very clever little case, that gives a lot of different choices as to how to set it up. One can choose between having an optical drive and and a full-sized radiator, mount up to 3 3.5 inch hard drives and 3 2.5 inch drives, fit full sized ATX power supplies and extended length graphics cards.

GPU

Here, I was once again dead-set on AMD, but for a bit of a different reason. Since I plan on running Linux on this machine full time, I wanted the better driver support that AMD tends to offer in Linux. NVidia has famously not been too friendly to Linux graphics. My budget wouldn’t allow A Radeon VII or Vega 56 or Vega 64, and at the time of this writing AMD’s Tensorflow port (which is something I might be interested in, We’ll see) doesn’t support the newer Navi GPUs. That leaves the Polaris series of chips. I considered an RX 570 to safe a few dollars, but I decided that the price difference wasn’t that great and that the RX 580 was the GPU I wanted.

RAM

16 Gigabytes specked to DDR4 3600. I briefly considered ECC Ram, but I’d be trading off a bit too much speed and cost for the security it offers.

Optical Disk Drive

Yes, I have an optical disk drive. It’s the cheapest reasonable thing I could find.

PSU

The PSU is an EVGA 450B unit that I manged to pick up at the Electronics Flea Market down in South Bay.

Storage

I had initially considered getting an NVME M.2 drive and a spinning disk magnetic drive, but I ultimately got an 1 TB SATA SSD instead. It’s amazing how inexpensive these SSDs have become. This might be a future upgrade for my laptop.

Monitor

I bought an ASUS VP249QGR 1080P 144Hz Monitor for use with this PC. This advertised itself as being a high-refresh rate IPS panel, which is a bit of an unusual combination. Most gaming monitors don’t use IPS because of the higher input latency.

The Desk

You can’t have a desktop without a desk. In this case, I had a very narrow space to work with, limiting my choices for a desk. I had initially wanted to build my own, I wasn’t sure I was going to have access to enough shop facilities to do that. So I ended up buying an Amazon Basics Desk to put this all on.

The Build

The very first step in this build was to clean a space for and assemble the new desk. Thus, the first bit of my build was spent moping, cleaning and assembling a desk before I even got to unbox single PC component.

Picture of a Desk
New desk for a new desktop

With that done, I went ahead and put all the components together outside the case to make sure everything works before installing in into the case. About the only issue I encountered here was that it’s possible to mount the CPU cooler fan in such a way that the little protrusion with the AMD logo on it blocks the RAM slots.

Picture of a Desk
My Hardware Lives!

With this done, it was time to figure how how to use that beautiful and versatile Core 500 case. Placing the populated motherboard (sans graphics card) into the case proved to be a bit trickier than it looks. Getting it to seat against the IO shield requires a bit more force than one might expect, and figuring out what cables should get routed where requires a bit of forethought or undoing a bit of work only to redo it with a slightly different cable route. One other thing to note is that this motherboard, with it’s Mini-ITX form factor has its sole M.2 slot on the back. That’s going to make for a bit of work if I ever choose to populate it.

Picture of a Desk
Installing the motherboard. Notice how I managed to run the 12V power connector for the motherboard under the motherboard.

With the Motherboard mounted and its power connectors set up, I then had to mount the drives. This has to happen before GPU because the GPU blocks some of the drive mounting screws for the 5.25 inch drive. Then it’s time for the GPU, and figuring out were to stuff the extra cables form my not-at-all modular flea-market PSU.

Install Xubuntu 19.10 and I’m done!

How’s it running and what would you do differently if you had to do again?

Overall, the new PC runs pretty well. 6 Cores/12 Threads means I can run folding@Home and play most games at the same time without noticing any real issues. Having a decant amount of fast disk and not having to be even slightly concerned running CPU intensive tasks unattended is mildly liberating compared to my laptop.

I may as yet need to pay the Microsoft Tax, but I’m still undecided on this. A lot of games run very well under Proton and Wine. Right up until it’s time for OpenGL to compile some shaders while I’m playing Overwatch or FSX doesn’t want to run at all. And I can’t even try to play any games that use Epic’s “Easy Anti Cheat” system.

Some part of me wishes I had either more or less hardware… In some ways, the GPU is pretty overkill for most of the games I have ended up actually playing on the machine, but we’ll see if how I feel about that if I get another shot at playing with GPGPU stuff. The CPU is overkill for my current gaming needs, but compiles would run faster had I stepped up to the Ryzen 2700. Ditto for the amount of RAM I have. I’ve yet to actually use that optical drive I thought I needed, but I do have a stack of CDs to rip and a Natalie Haas Instructional DVD I want to watch on what’s probably the nicest screen in the house.

The high refresh-rate monitor doesn’t make nearly as much difference as some would claim it does. I can tell the difference between 30 and 60 Hz, but the difference from 60 on up is a bit harder to see. If I had to do again, I might spring for a larger 4k monitor, even if I can’t quite drive it at 4k in games. More pixels is more handy for everything else I do. Also, the monitor stand is far too short for me on this desk. Thankfully it does support a VESA mount so upgrading this shouldn’t be too hard when I get to it.

Still, I’m not going to let my minor niggles distract to much from the fact that I’m thankful that I could finally build this box. It’s a major step up from my laptop for a ton of different workloads, and I look forward to doing some more technical things with it in the future.