Along side an Onkyo TX-NR656 AV receiver configured for 7.2 surround sound, and Samsung UN65KS8000, this system powers my Linux-based home entertainment centre.
I made the long time coming switch to Linux once I discovered ElementaryOS and have only ever been nagged by the feeling of not being able to play the very few games like Tomb Raider, Nier Automata, Watch Dogs, and other beautifully designed games that were not ported to Linux. In fact, aside from these games, I only buy games that are compatible with Linux and so all my computers (2006 intel-based Mac Pro work station, HP Envy 17 3090nr, home server) all run either ElementaryOS or Linux Deepin. Other than these few games, I did not miss Windows and as soon as I found out how to set up GPU Passthrough on ubuntu and Debian based Linux distributions! I knew I had to build this machine.
The second graphics card is not a gtx 980-ti but an R9-390 Gigabyte (The pcpartspicker parts list does not allow you to combine different graphics cards in a list). Since the R9-390 has more RAM than the gtx 980ti, Nvidia proprietary drivers from the Linux or ubuntu PPA community are more reliable or easily installed, and Steam on Linux plays better with Nvdia GPUs for games such as Deus-Ex, I decided to Power the Windows 10 KVM VM with the R9-390.
The audio pass-through is a bit wonky and I couldn't get video out connecting both the GTX 980ti and AMD R9 390 into the AV receiver, so I had to plug the AMD R9 390 directly into the TV. However like I said the audio is wonky so even though I change the video source to point to the TV the audio for both the Linux host the Windows VM is coming through the GTX 980ti HDMI port which is plugged into the AV receiver. This is actually a positive though, because I still get full 7.2 surround sound of the AV receiver in the VM even though the R9 390 card powering it is plugged into the TV and not the receiver.
I got the Apple Magic Mouse and Magic Keyboard to control ElementaryOS via Bluetooth when the VM is running in the background (say for instance if I want to step away from the VM to say Skype on Linux) since I pretty much pass all USB devices, except the Steam controller and Webcam, to the VM. Being part of a living room entertainment centre, I also wanted as few wires as possible and no getting up to flip over a KVM switch. The USB and Bluetooth combination works perfectly for this.
Since this is the primary entertainment unit (movies, TV, games, etc) and is in my living room, the keyboards and mouse/mice have to be wireless, small, and aesthetically pleasing to the eye. I recently got a WISEWO Backlight 2.4GHz Mini Wireless Keyboard and Touchpad Mouse Combo on Amazon so will be using that more on the Linux host side going forward. At only 5.9 inches it is smaller than the Apple mouse and keyboard, it is back light for when watching movies and TV shows at night, and it is both a mouse and keyboard in one small package no bigger than a Samsung Galaxy Note.
At times this setup seems like this build is over the top since I'm not an avid gamer, however I do enjoy my movies and tv shows. That said, when I do game it's about the graphics and immersion.
I recently changed out the stock CPU cooler for the NH-D15 to cut out the fan noise. This is set up in a pull configuration, if I got my terminology correct. Basically I have a chaise fan pulling in air from the back of the computer and the 2 fans on the NH-D15 pulling that air through the heat sinks and then the 2 fans at the front of the chaise pull that hot air out. I am not good at fan setup but this seems to be doing the job. My initial thought was to go liquid cooling but heard there was a risk of leakage so played safe. Plus it is apparently not clear that off the shelf liquid cooling is better than air cooling. In any case the machine is running cooler now than it was before I got the NH-D15.
All in all, I have had no problems with this build. In fact the toughest part, and why I shied away from using an ArchLinux based distribution, was setting up the GPU Passthrough since this is a niche for Linux users. Even though it's easier to set up GPU Passthrough on Arch through the software repositories, the ongoing updates mean, because of a kernel update, you could end up not being able to boot up your VM until you patch and reconfigure the new kernel. Ubuntu and Debian leave the kernel updates to you. That said once GPU Passthrough was set up and running, everything has been smooth and I make sure to back up my VM disk images before and after every update on both ElementaryOS and Windows.
Gaming on the Windows VM is smooth enough for the most part; even with ultra high settings. Just not at 4K resolutions since the graphics cards aren't really built for 4K. Where I have had issues with the VM has been the disk. There are moments where the VM throttles when accessing the drive. I am sure this could be fixed if I had the VM disk images on an SSD drive but that would mean getting at least a 1.5tb SSD. For now, that's way beyond what my wallet can justify.
I have been able to also GPU mine etherium through minergate with both card at the same time; the gtx 980ti in Linux and R9-390 in Windows.
Using the Linux host even with the VM running, I have not had any issues with the CPU. No lagging, no freezes, nothing. Perhaps nothing I have been doing on both at the time were CPU heavy. I turned off CPU mining when I tested cryptocurrency mining with both cards and I haven't been mining on this build since the test.
If you choose to try a similar build, I should say that I don't know if SLI or CrossFire is possible with this type of setup. I have never had any inclination to try multiple GPU builds before building this machine. Though I guess it may just be as simple as passing the third GPU through as well or not depending on if it's another R9-390 or gtx 980ti. Personally, with what I've heard about the performance of single new generation GPUs vs older GPUs with SLI or CrossFire, I am thinking my next upgrade of this build will be if and when the RX Vega 64 and gtx 1080ti become available used on eBay at more affordable prices (like a new gtx 1060 price range).
=======UPDATE====== I have recently added 2 x Crucial - MX500 1TB SSDs to replace the WD Black 2TB HDD and added a WD Black 4TB HDD I found at a crazy discount for data storage.
I had to increase the disk size of the VM to use 2x QCOW (QEMU Copy On Write) disk images; one for the VM OS drive and the other for VM data storage drive. Also like mentioned earlier, I had been experiencing issues on the VM in terms of throttling the HDD as it read the image files. Changing to the SSD for the VM OS-drive and install the games on that fixed the throttling and other related issues; as well has removed the fear of wrecking the hdd.
I have dedicated the second SSD to my Steam games running on the Linux host.
I will eventually get the Linux host to boot off an SSD once I have saved up for a 2tb SSD, most likely the Crucial - MX500 seeing what prices are like. The MASSIVE difference the SSD has made to the VM has converted me to believing the hype about SSDs. Also my fear of the OS drive either going down or a bad Linux update has made me want to keep a backup of the Linux install to restore from; setting up the system for GPU pass-through took a whole day. I don't want to have to do that again anytime soon. So have an excuse to just switch to an SSD and use the HDD as the backup to restore the system from in the rear chance a Linux update causes issues.
Finally, if you are thinking of GPU pass-through, given my experience with the VM and hdd throttling, I would recommend using SSDs all the way for the VM.