Virtualizing a Windows Workstation with 4K Video


SSD

Recommended Posts

Thought I would share a recent upgrade to a 4K capable Windows VM on unRAID. We hear a lot about GPU passthrough for gaming, but some of us are not gamers, but nonetheless want hi res displays and fast, smooth video performance.  One BIG advantage of a VM on the unRAID server is that you get very fast I/O performance with the array disks (including UD), because you are not going over the LAN. After setting it up I am getting 235 MB/sec copy speeds when moving data from the array to an unassigned device via Windows Explorer! That’s 4G in 17 secs. On my desktop, despite being faster and with 2x the memory,  I’d be lucky to get 75 MB/sec, and 4G would take a minute or more over the network.

 

But I’m getting ahead of myself. My journey started a few weeks ago with a 43” 4K TV for $329 at Costco that I decided to buy as a 4K monitor. My 27” 1920x1200 was feeling smaller and smaller, and I was ready for a bigger screen with more real estate, without smaller fonts. This is nearly 4x the size and 4x the resolution! Although I don't plan to use if for movie watching, I should try watching 4K on it. Kind of scared I'll like it and have to start upgrading TVs!

 

I had been wanting to move my Windows physical machine out of my study and into the basement next to the unRAID servers. The workstation is kind of noisy, and heats up the room which is challenging to keep cool.

 

As I started to explore KVM virtualization, I wondered if it made more sense to virtualize Windows on unRAID. If the I could run cables from basement to study, it wouldn’t matter if they connected to the server or the workstation. Decided what the heck – I’d try moving to a Win10 unRAID VM. Worst case – I’d learn a little something and I could always go back to the physical build on 8.1 or upgrade it to 10.

 

So I bought an NVIDIA GTX 1050Ti SC, a 50' HDMI cable and a  32' USB extension cable. The Ti was probably a little overkill, but price was only a little more than slower cards (its gone way up in price since I bought it!), and this way I can do some gaming if I ever wanted to. (Visions of 2017 equivalents of “Age of Empires” and “Diablo” flash through my head.) I looked long and hard for a 4K video card that would fit in a single slot, but no luck. Luckily I found my case would accommodate the double wide card without even losing a slot (it gave all its lanes to another slot for my SAS9201-16i. I did have to pull the -16e out, and lost access to one of my drive cages. But I don't really need the slots right now, so not a big deal.

 

Before moving things to the basement, I experimented with the long HDMI run in the study and had some challenges. The long cable would work from a cold boot, but it would connect and stay connected, but would drop after a few hours of disuse, and no reconnect without a reboot. (The cable somehow self-powers long runs. You can read about it in the link above.) So I bought an AMD RX550 to see if I had better luck. It had NO Windows 8.1 drivers (**shocked**), which made testing hard. But seemed happy with the long cable on a fresh install of Win10.

 

Virtualizing the old machine

 

I decided to virtualize my old 8.1 computer. I had used VMware for several older rigs over the years, but decided to try with KVM.

The best way to do this is with Acronis. You take a backup, and then there is a restore option to create a VM. It uses “universal restore”, that removes machine drivers and registry entries. The VMware version went perfect. The RedHat not as smooth because I needed to use unRAID’s XML and not the Acronis generated XML. Problem turned out that the disk image need to be IDE and not VirtIO. Once fixed it came up great, and was peppier than VMware. Would like to find a way to get it to use the Virtio drivers, because I think they are faster.

 

Installing VM on unRAID (no GPU passthrough)

 

In parallel I had been setting up the Win10 VM on unRAID. Was pretty straightforward with the help of @gridrunner's excellent "daily driver" video. Had just a small issue backing up the disk image. KVM creates a sparse file that Linux tools had issues copying around in a reasonable time period. I un-sparsed it (copying with Krusader has that effect). SplashTop desktop was also a great tool, that proved invaluable when I later moved into passthrough. Make sure you install it.

 

A little off topic, but I was able to get VMware, and even its Unity mode, to work inside the KVM Win10 VM, which was pretty cool (nested virtualization). Might not mean much to others, but this is a must have for me, and might have sent me back to the physical workstation if it had not worked.

 

Upgrading VM to Passthrough GPU

 

I installed the AMD RX550 in the unRAID server, and connected the long HDMI and USB cables (USB is for Logitech unifying receiver). Figured if the AMD worked, I’d know the cable was good and then try the Nvidia. I followed @gridrunner 's Part 2 passthrough video. But when I booted the VM, the 4k screen was blank. Crap, I was completely blind to figure out what was going on. Had it even booted? I tried hooking a physical monitor to the server in the basement. No good. Finally thought to try SplashTop and it connected with a low res 640x480 screen with huge fonts. Whew! The Windows default display driver was all upset with the AMD card. I installed the AMD drivers, and could then see the 4k on the big screen. Yes! But the AMD install crashed after the video and audio drivers were installed, and not sure why or what didn’t install. The long HDMI run was not a problem (even after overnight). But the long USB run dropped after about an hour, so no more keyboard or mouse – but SplashTop came to the rescue again so I could type.

 

Stopping and starting the VM did not get the USB keyboard going. And despite being functional, the passthrough USB Logitech receiver did not get me the smooth mouse operation I am used to. I needed a full USB passthrough (see below).

 

Next day I swapped in the 1050Ti and it also worked with the long HDMI run (even after several days). I had no issues with the Microsoft Basic Driver, and installed the Nvidia drivers with no crashes or problems. There is no doubt the Nvidia drivers are way better than AMD. The VM was up all the next night and no loss of video :). The AMD is going back to the store.

 

USB Passthrough

 

I followed @gridrunner's video on how to passthrough the USB. My motherboard has a single USB plug which supports “reset” and is in its own IOMMU group and it worked perfect. The mouse movement is MUCH smoother with the passthrough. I'd say you need to pass through the USB to have a good experience. The long USB run works great. It self-powers the long run, and is seen as some sort of USB hub.

 

I am typing this on the VM. No one would ever know it was a VM. Smooth and fast! I have given it three full cores (all but Core0/Core4) and 16G of RAM.

 

I’ll give one more plug for “daily driver” video (linked above). Many are complaining about Win10’s privacy issues. He gives lots of tips and tools to make it behave itself, that would be valuable for anyone moving to Win10, regardless of using a VM or not.

 

Cheers to @gridrunner for his videos and support!!! Thanks!!

  • Upvote 1
Link to comment

I'm not a gamer either and doing almost the identical thing for my home theater.  I'm running bitstreaming audio out of my GPU to a Trinnov 16 channel into a 9.6.1 Atmos surround system and the video to a JVC RS600 projector using MPC-BE and madVR at max settings.  Doing this with Windows 10 VM on unRAID Server. To be honest, I'm not sure I would have attempted this without @gridrunner 's excellent videos.

Rack.png

Edited by mikela
Link to comment
  • 1 month later...

Wanted to give a little update. My VM continues to run great. I bought an LG 4K OLED TV and connect it as a second monitor to the video card (using the display port connector and an HDMI adapter cable). I can run the Windows version of Plex on the second monitor while I continue to use the other monitor on the HDMI port for normal computer work. The monitors are in the same room, and it amazes friends and relatives that I can move my mouse from monitor to TV. I also ran a second USB extension cable and connected a FLIRC, which lets me navigate PLEX from my viewing chair with my Logitech remote.

 

I will mention a few other misc points:

1. The issues I was having with the long HDMI cable turned out to be a broken TV HDMI port. I was using a Hisense 43", but traded it in for a Samsung at Costco. Besides the broken port, the color, especially the green, was off and attempts to adjust didn't fix. The Samsung was more expensive, but then went on sale for just a bit more. Happier with the Samsung, but its tabletop mount is very deep.

 

2. The Plex app is having problems keeping up with some 4K content and HD audio (esp. TrueHD). The audio glitched, sometimes several times in rapid succession, but never longer than about 90 seconds apart. It was pretty subtle as glitches go, or I couldn't have watched a whole movie like that, but definitely interfered with getting engrossed in the movie. On one movie switching to DTS fixed the glitch, but on another switching to even plain Dolby Digital did NOT fix it. I thought it was something related to the DP adapter or the VM, but I installed a different player called mpc-hc, which has an extensive set of audio options (hard to find- File -> Edit -> Options -> click "Internal Filters" ->  click "Audio Decoder"). After installing and tweaking the audio, the TrueHD movies played flawlessly. Hoping Plex gets act together with the player and fixes the problem, but at least I have a plan B if a movie has problems.

 

3. I invested in a new Pre-Amp (Marantz 7703), to replace my older 7005. I was pretty happy with the 7005, but it was only 1080p switching, and was having a hard time making it work with the combination of 4k and non-4k video sources I had. I did manage to find a Philips UHD BluRay player with two HDMI outs - one full and one audio only, which I thought would be enough but it wasn't. Way to many HDMI cables and configuration changes for each input. Anyway - what I was not expecting is that the new Pre-Amp has hugely better sound. Even the wife commented. Not sure if others here are audio buffs, and have ears that really care, and have a processor that is a few years old, you might consider upgrading to a newer receiver / processor with Audesey MultEQ XT32 (which I am assuming is a big part of the improvement).

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.