How ever you refer to it, I'm just going to call it Linux here. "Linux" is pretty generic, but for as many times as people tell me to settle down with one distribution or another, I'm still something of a distro-hopper. Thus, there is no one Linux for me. There's always a new one to try.
A modest computer to run Linux on, built from carefully selected parts. Most parts were reused; I only bought the CPU, motherboard, and RAM new. I got deals where I could, but made a carefully considered upgrade. If you're going to build this, maybe do it differently.
The Parts and Why
|CPU||AMD - Ryzen 3 1300X 3.5GHz Quad-Core Processor||$99.99||Bang for buck|
|Motherboard||MSI - B350 TOMAHAWK ATX AM4 Motherboard||$84.99||Future expansion capability|
|Memory||Crucial - Ballistix Tactical 4GB (1 x 4GB) DDR4-2666 Memory||$54.99||Within budget, enough capacity, on MSI QVL|
|Storage||Samsung - 850 EVO 250GB M.2-2280 Solid State Drive||$0.00||I've had it for a while, not NVME|
|Video Card||Gigabyte - GeForce GT 1030 2GB Low Profile Video Card||$0.00||Had it already, powerful for its size|
|Case||NZXT - S340 (White) ATX Mid Tower Case||$0.00||Originally for WS-1, then used for Bloodborn|
|Power Supply||EVGA - SuperNOVA G2 650W 80+ Gold Certified Fully-Modular ATX Power Supply||$0.00||Was in Bloodborn, good PSU|
|Food||Haribo - Gummi Bears 5oz Bag Food||$1337||Really expensive...|
|Other||Manhattan Hi-Speed USB PCI Card (171557)||$0.00||Left over from Bloodborn|
The Nitty-Gritty Details
Just detailed reasoning...
This machine was built to replace my Linux box - a Pentium-based Dell Optiplex 780 with 2 gigs of RAM (1066Mhz). That machine was far too slow. It would lock up and stutter loading applications and light multitasking, even with a fairly lightweight desktop environment like Xfce.
I had a few choices
Upgrade the Dell. This was a dead end. It would be maxed at a 65 watt processor, a 3.33Ghz Core 2 Duo (due to the cooler) and 8GBs of 1333Mhz DDR3 RAM. That would be fast enough for most things, for a while. But it wasn't a long-term solution.
Build a new machine, and keep it as cheap as possible. I could use a Skylake i3 (good Linux compatibility), a Kaby Lake Pentium (decent compatibility), or a Ryzen 3 processor (better upgrade path).
The Parts and Rationale
I chose the Ryzen 3 for the upgrade path. I want to keep this machine as long as possible, and while I have very basic needs right now, I wanted the possibility to seriously up the power with as small an investment as possible. However, I needed strong (enough) single threading, which is why I considered the Intel processors so heavily. I knew I was going to reuse parts I had already (case, PSU, GPU, USB PCI card), so that would keep the cost down somewhat. With the right selection of parts, I would also be able to use some things I had in storage, like the M.2 SSD.
I had two choices for Ryzen 3. The 1200 and 1300X. I was hesitant to go with the 1200, as the single threading wasn't as good as the high clocked i3 and I have a mixture of single and multi threaded workloads. It was very close to a tossup between the i3 and the Ryzen 3, but the discount on the 1300X is what settled it. That's right, the 1300X was on sale for the same amount as the 1200! The single threading was better than the 1200, and close enough for comfort to the i3.
I also have zero intention of overclocking (despite the B350 board, which was chosen for other criteria), so the higher clock speed and XFR is a plus.
In short, what should be sufficient single threading, and good multi threading gave the edge to the 1300X.
I was going to use Bloodborn's cooler, but I got lazy and didn't want to clean it off. Plus, when I was reading the warranty for the processor I noticed that it mentions being warrantied only if you use the included cooler. Specifically,
"This Limited Warranty shall be null and void if the AMD processor is used with any heatsink/fan other than the one provided herewith."
That spooked me into putting the stock cooler on it for sure, which works well enough. I'm not sure if they can or will actually enforce it, but I'm happy to abide by it.
I was originally going to use one of the cheaper motherboards I could find (the MSI B350M Gaming Pro), but this one was "only" $15 more. Yes, I could have spent that $15 to get more (albeit slower) RAM, but I realized that since I don't use that much RAM, I would get more use out of a better motherboard (and I didn't want to spend another $15 on top of the extra $15 for the motherboard). The upgrade gave me two PCIEx16 slots (possibility of VGA pass through without upgrading the motherboard), a free PCI slot for my Linux-compatible USB expansion card, and 4 RAM slots instead of two (not that I plan on using much RAM). The mobo is Linux compatible (Phoronix tested), and had the affordable RAM I picked out on its Qualified Vendors List.
Affordable, fast enough, and on the MSI QVL. I'm going to be running Linux, and the distros I use are fairly RAM efficient. Under the heaviest load I will end up putting the computer under, Manjaro Xfce used roughly 1.5 to 1.9 gigs. If I ever need to, I can throw in another 4GB stick, add a cheap gaming graphics card, put Windows on it, and use it as an entry level gaming rig.
I had this one already. I regretted buying it over and over, as using it in my other rig required me to take the GPU out in order to access the M.2 slot, so I could reinstall Windows (the M.2 was running Linux). But now it will find a home here.
I bought this a while ago to test things with, and it's saved me during troubleshooting my main Windows rig. While it isn't currently supported by the OSS Nouveau driver, it's possible to boot from and install the nonfree nVidia drivers with the Manjaro installer. I have it already, I can play light games on it, and it works with Linux. Why replace it?
Oooh. I have a love/hate relationship with this case. I love the look, I hate the drive mounting (no trays or quick releases, just pull all the panels off and remove the PSU), and I hate how easily scratched the window is.
I bought this for Bloodborn, as it was one of the cheapest quality PSUs supporting two eight pin CPU connectors (via an adapter). Then it did some time powering the Dell after the Dell's PSU went out.
Now it will power this machine.
USB PCI Card
Bloodborn's motherboard came from a server, so it not only had no audio, but also had only two USB ports. It did, however, have a spare PCI slot, so I bought a Linux-compatible PCI card to add USB ports. Still only USB 2.0, but enough for most things, and it adds a USB 2.0 header as well.
Never got around to actually buying any, although I was planning on it. I heard they can't run Crysis, so I guess I don't need them anyway.
Fast. Leaves the old Pentium in the dust (compiled Xonotic in, very subjectively, a third of the time that the Pentium did).
Doesn't lag on single-player Xonotic, runs Minecraft well.
Compiles quickly, although I don't have before-and-after numbers, unfortunately. I did run the Phoronix kernel 4.13 compile test, and averaged about 7 minutes and 23 seconds to compile the kernel.
Snappy. Boots within maybe 15 to 20 seconds (subjectively), and applications load pretty much instantly.
Pretty good. CPU Idle temps are great, just a few degrees above ambient, GPU temps aren't bad considering it gets little airflow. The GPU hit about 60 running Minecraft. CPU load is a little worse, hitting 52 degrees celsius compiling the Linux kernel.
Ryzen is new enough that temperature monitoring support is just being added in kernel 4.15. So that's what I'm running right now.
In the sort term, I may do something like the Linux From Scratch project, in which case I will need to add a bigger drive. Additionally, I will probably add a second video card and investigate IOMMU grouping for GPU passthrough to a virtual machine.
Long term... If I do far more compiling code, I may upgrade to a Ryzen 7 processor, possibly a 1800X (or whatever succeeds it in the same socket and chipset, if something does) and add much more RAM. I doubt I'll upgrade past that in this machine (so no Threadripper for this one).
Things you may want to change
- The PSU is overkill. You can get a smaller, cheaper (but still decent) unit.
- The GT 1030 can be kind of finicky with Linux. If you're going to run light games on it, get a GTX 7xx card (latest supported by OSS drivers), or an AMD RX 4xx/5xx card. The RX cards are faster and are supported by OSS drivers (good ones too). Just don't get a Vega card, support for them is just starting to be added right now (coming up in Linux 4.15).
- If you're gaming (newish games), or you're a heavy multitasker, consider more RAM. If you're running Windows and going to game, definitely consider more RAM.
- Carefully consider your workload, and if single threaded workloads are the priority, possibly consider the i3.
Fast for everday use, good for the light games I've tested, and reasonably fast for compiling code under Linux (but if you're doing a lot of compiling, look at something with more threads).
Lots of expansion slots, good BIOS, could use more USB ports though.
It's RAM, it's fast enough, and it does a RAM good job.
Fast enough for what it does. Not NVMe, so not as fast as all those fancy, expensive drives.
Runs fine under Windows and Linux (nonfree drivers), can play Xonotic and Minecraft, too slow for DOOM 2016 (but what were you expecting?)...
The good: easy cable routing, lots of tie-down spots, pretty, easy to remove power supply.
The bad: good thing it's easy to remove the power supply and all the panels, because you'll need to every time you want to install a 3.5" drive. Also, the window scratches incredibly easily (as in, cloth will leave tiny scratches).
Excellent PSU. Well rated, fully modular, and has held up well for me. Also has an adapter for two 8-pin CPU connectors.
I really don't know what to say about these. They won't run Crysis, and I can't SLI/CrossFire them. But they taste good.
It adds USB ports, but it's a really tight fit. I don't know if I'll actually be able to get it out of my case. Recognized fine under every Linux distribution I've tried.