



Hi Folks! In this article I will be talking about an AMD Threadripper 1950X build I have done not so long ago. Someone might be asking "why such a late build, since AMD released the product several months ago? Well, I wanted to keep working with advanced virtualization (aka Kernel Virtual Machines and direct access to real hardware), but initially the Linux kernel was not prepared to deal with the new platform. So, me and everyone else in the community waited for a fix or worked around the OS limitations.
As of today though, the KERNEL 4.19.3 works perfectly fine for virtualization purposes.
PS.: actually, the kernel was fixed a few versions back, just make sure you are running an updated version of the kernel.
The Components
Well, I started with an X399 motherboard from ASROCK, because it supports 3 M.2 NVME SSDs and comes with several connectivity ports, including a dual-band wireless adapter from Intel. By installing the GPUs in the 1st and 3rd PCIe ports, both devices will operate in 16x mode and there will still be space left to install a PCIe x1 device (for extra USB ports on the Fedora side).
For those familiar with IOMMU groups, this motherboard has a draw-back: all connectivity devices are listed under one IOMMU group, making it impossible to pass-through a particular network device. So, I bought a cheap USB wireless adapter on Amazon to access the internet from the windows vm.
Update the BIOS if you want to try VFIO and virtualization. I have installed the 3.3 version and it works just fine. By not doing so, the Linux kernel won't be able to recognize the devices properly and you will end up with an "Invalid Header Type" error.


For the memory I decided to go with 32GB of GSKILL DDR4 3600. I bought 4 modules to take advantage of the QUAD channel speeds.
Since we are talking about a 180W TDP processor, it's crucial to install an appropriate cooling solution. I opted for the Cooler Master MasterLiquid 240. However, it didn't come with the sTR4 adapter, but you can refer to their website and ask one for free.
They will only charge you the shipping though.


The GPUs

Compared to the Intel i-series processors, the AMD Threadripper 1950X doesn't come with an integrated GPU. So if you have virtualization in mind, make sure to have 2 PCIe 3.0 compatible GPUs available. For the Linux and booting process, I have decided to use my (g)old Radeon SAPPHIRE 7950. For the VM, my Asus Geforce GTX 1070 Turbo will do the trick (installed in the 3rd slot).


So, in terms of platform (Intel, AMD), I am extremely satisfied with my new workstation, taking advantage of plenty of processor cores and threads (remembering I had all my stuff running on a 4-core processor with 2 OSes at the same time, plus development services and tools).
Despite being kinda expensive, taking into consideration buying not only the $1000 processor, but also the motherboard, the DDR4 memory and the AIO cooler, the results for me are impressive! If I have the time, I will further dive deeper into performance and post a new article here, to help others make their decisions.
I was even able to play Dead by Daylight while compiling a new Linux kernel without noticing any stuttering whatsoever.
Enjoy!