mailwal

Building My First PC Ever

Chris Biscardi's personal newsletter

I built my first PC ever. It was my first build ever and while I made some mistakes I'm really happy with the results and what it enables me to do. In this newsletter I'll talk a bit about my motivations for doing this build as well as offer some insight for anyone else trying to take on their own first build.

the tldr; is Ryzen Threadripper + GTX 2080Ti

Here's a photo of the build (warning: The cable management here may stress you out)

I'd never built a machine before, why start now?

I ramped up the amount of content I create in 2019 including blog posts, videos on egghead.io, writing on my (this) newsletter, doing webinars and conference talks, other projects' blogs, and more. During this creation I've amassed:

  • Higher storage requirements
    • Especially when creating video for which the raw material is much larger than text content
  • Higher processing requirements
    • Especially when streaming which at one point started melting my Mac and crashing after starting my streams. This results in losing viewers immediately because when the stream crashes few people restart it, they just move on.
  • Higher production quality required
    • As I produce more and more content, it becomes more important to me to show a professional look and feel across each platform I use so that my community gets a better product.

Requirements for new machine:

  • Could run *nix of some kind
    • *nix is my main development platform and I'm growing tired of MacOS even though it has served me well for a long time. (OSX will likely still be my preferred carry-on platform). I want a tiling window manager for my day job, etc.
  • Could be used for gaming
    • I mostly play competitive Rocket League and I told myself if I was approaching Grand Champ (the highest competitive level in the game) I'd invest in some real equipment to play (up til now it's been PS4 only). Last season I reached C3div4 and was one or two games away from GC.
    • Also needs to support Overwatch or other, more CPU intensive, games. This has become one way to connect with people I've never met in person and only know through github/twitter/etc.
  • I'm tired of running out of storage.
    • My 500gb Mac pro is nearing it's limit after 6 years. My laptop constantly operates within 5GB of full out because I bought it when I was on a budget and only got 128gb. Neither are upgradable and while they've served me well, this is a serious pain point right now.

Workflows I want to enable

  • VPN back from laptop, etc.
    • Reducing my need for a powerful mobile machine. I'll pay data transfer back to base instead of splurging on a heavier hardware in a laptop. Opting to use my laptop as a remote terminal and maybe opening up iPad usage for Serious Work™.
    • This only cuts down my need for "back-to-base" use cases. If I'm traveling and want to edit Egghead videos during downtime (like plane flights) I'll still need sufficient hardware for that.
  • Streaming code stably
    • I've had some trouble maintaining my streams on twitch when it comes to my Mac and OBS. I want to be able to both capture my Mac and offload streaming to Windows which has significantly better support overall for streaming software like OBS.
    • Sometimes I have to deal with secrets unexpectedly on-stream so some more monitor space is necessary to hide secret input, chat dashboard, etc. The build will have to drive a widescreen.
  • Streaming gaming
    • I want to be able to stream Rocket League while I play. I believe in being a whole person on platforms like Twitter and don't want my online personality to be "only code all the time", so augmenting my code streams with my gaming habits goes well with that. I already post other parts of my life like traveling or my journey back into Olympic Weightlifting.
  • Faster video editing
    • Editing video on my Mac isn't inherently *bad*, but it does crash occasionally in the same way OBS crashes when streaming. I want my new machine to be able to handle loading clips quickly and stably for editing.

Hardware

That brings us to hardware selection. Given some of the video-intensive workflows I want to support, a good GPU makes sense.

GPU

I went with an RTX 2080Ti and to be honest due to the amount of armchair quarterbacking and weird "this, no that" threads on the internet about GPUs it's easy to get lost here. The RTX 2080Ti has basically been "the best" so it'll last me awhile and it's widely used so I don't have to worry about running into weird bugs no one else is. That said, AMD has the 7nm Navi coming up and since AMD is better from an open source perspective I'll be keeping a strong eye there in the future (Nvidia's drivers are proprietary.as.fuck).

The 2080 Ti comes in many form factors, one of the main differences being number of fans or water cooling, etc. The full name for the one I got is a mouthful: EVGA GeForce RTX 2080 Ti FTW3 Ultra Gaming, 11GB GDDR6, iCX2 & RGB LED Graphics Card 11G-P4-2487-KR. Overall I don't care much about the potential performance or heat production differences between the variants so I picked one with fans and got it. Maybe I'll know more and have stronger opinions on this in the future.

CPU

The next big decision to make was the CPU. The major choice here is between Intel and AMD and considering that I was looking for a High End DeskTop (HEDT) option, that's the Core i9 vs Ryzen Threadripper lineups. I went with AMD on what was basically a gut feeling about the future of Ryzen, 7nm, and PCIe Express 4. I want to enter that ecosystem as the 7nm chips start to pay off and since I want my computer before the 7nm chips actually ship I'll be buying a Threadripper (note: the 7nm non-threadripper chips were just announced and it looks like this bet will pan out).

AMD's Ryzen 9 3900X CPU. Su said the 12-core Ryzen 9 will have a boost clock of 4.6GHz with a base clock of 3.8GHz. The Ryzen 9 3900X will also pack in 70MB of cache and cost just $499

At double the price and double the core count the 2990wx costs $16-1700, so I went with the 2950x (the x stands for something like "ability to overclock") at $800. This is partially because I'm planning to upgrade to the 7nm Threadrippers when they come out ~next year.

Motherboard

The Threadrippers come in a TR4 socket and are compatible with an x399 chipset. A chipset/CPU combination is basically how you choose compatible motherboards since the chipset is embedded in the motherboard. I went with the ROG Zenith Extreme Alpha. It is effectively the second generation of the Zenith Extreme and worked out the bugs. Since I'm buying a high-end CPU/GPU combination, I wanted to make sure my motherboard could handle potentially overclocking in the future as well as having enough power delivery to the CPU, etc. The board is an EATX form factor, which basically means bigger than ATX and mini-ITX. A bigger board means more features (power delivery, PCIe lanes, etc) can be packed on.

Case

Probably the last interesting component is the case. I went with an Obsidian 1000d which is kind of a massive beast but also a case I knew the EATX motherboard (and components) would fit in. It also gives me the option to set up liquid cooling in the future (I'm using fans right now) and includes space for a mini-ITX board in addition to the EATX board. This is relevant as:

  1. One of my use cases is streaming so offloading that work is nice
  2. I fucked up and ordered the wrong power supply for the main board anyway, so I have some extra parts lying around I can turn into a small second system. (For the record, it seems that over-buying a PSU is the way to go. I originally bought a 750w and it didn't supply enough power to the CPU and I thought my board was broken; so I ended up with a 1500w in the end)

Monitors

I decided to go in on widescreens. I'm currently using a 4k Seiki and a second monitor that is literally a TV, both of which I bought more than 5 years ago, so it's been way long enough for an upgrade. The first monitor I bought was a pre-order for the Samsung CRG9 49" 32:9 beast that's coming out soon. It is the equivalent of two 27" monitors side-by-side so is a "Super Ultra-Wide" at 5120 x 1440 resolution.

The second monitor I purchased and the first monitor to arrive is an Alienware 3440 x 1440p (21:9) Resolution, 34", 120Hz. After using this as my primary monitor I have to say I love widescreens and probably won't be going back any time soon.

Hardware Recap

One tool that I wish I had known about before I did all of my research was pcpartpicker.com/list which allows you to pick pieces of hardware and it will block out incompatible parts (like CPU/motherboard combinations that don't work). When I started doing my research I had no idea what a chipset was, so this really would've saved me some time. Here's the PC Part Picker List for my build.

Future Work

The computer is working out very well. I'm dual booting Windows 10 and Manjaro Linux. I found an old video capture device that allows me to use my Mac output as a video source for streaming, which means I can offload the streaming work fully to my new PC.

  • Cable Management
    • When I built the computer originally I had no idea what I was doing or where components would end up in the case so my cable management is horrid. I have some fan extension cables and such that I'll use to clear up my cable management.
  • Streaming motherboard setup
    • One of the reasons I bought such a large case is that I know I'm intending to upgrade to the 3rd generation of Ryzen Threadripper chips at some point in the nearish future. When I do that, I'm going to repurpose the old chip into a mini-ITX motherboard and build a dedicated streaming PC.
  • NAS
    • Instead of putting storage in the computer itself, I'm going to put storage on the network. My mobo has a 10G network card built-in, so I should be able to achieve reasonable latencies across a network. My router has some SFP+ ports which I'm still coming to terms with. My understanding is that I'll be able to use them to get the 10G from my computer to the NAS.
  • Water Cooling and Overclocking?
    • These go hand in hand a bit. I think if I'm going to play around and overclock my components that I'll need a better cooling setup. Custom water cooling *seems* to be the best option here and Corsair just did a thing that seems relevant

Fin

That's about it. If you're curious about the build or process I used hit me up on Twitter (@chrisbiscardi) or drop by the stream on Twitch.