OMG - 4K gaming in a VM really works!


toby9999

Recommended Posts

So I thought it was time to upgrade my 4-year old unraid box (see my sig for the old specs). I was inspired by the new virtualization features (especially the idea of doing gaming in a Windows guest), so I bought a new set of hardware (to go with my current collection of green drives).

 

End result: 4K gaming in a VM (Windows 10)!!

 

1gpkbrol.jpg

 

New hardware list:

Motherboard:Asus Maximus VIII Hero

CPU:Intel Core i7-6700K @ 4.00GHz (OC unlocked)

RAM:G.Skill 32GB (4X8GB) F4-3200C16D-16GVK Ripjaws V DDR4-3200

GPU:ASUS GeForce GTX 970 STRIX 4G DCU II OC Graphic Card (pre-OC'ed)

4K Monitor:Acer XB280HK 28" 4K NVIDIA G-Sync Gaming Monitor

CPU Water Cooling:Corsair H110iGT

 

Testing:

In addition to the 3DMark results above (full details: http://www.3dmark.com/3dm/8731807), I installed Far Cry 4.  I maxed out all the settings to "Ultra" and the resolution to 3840x2160, and pulled 15-20 FPS. I dropped the settings to "High" but kept the same 4K resolution, the frame rate increased to a very playable 30-40 FPS.

 

Installation:

It took a few days of experimenting to figure out the correct installation steps (found a lot of good tips via these forums). In the end, the setup was actually quite straight-forward. The best guide to follow is http://lime-technology.com/wiki/index.php/UnRAID_Manual_6#Using_Virtual_Machines

 

* Latest UNRAID build (6.1.3)

 

* Enable KVM (under Settings/VM Manager) - note: I used the latest VirtIO drivers (non-stable) found here (https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/latest-virtio/virtio-win.iso), version 0.1.110, but have found no problems with them. I also enabled "PCIe ACS Override", but can't confirm if this is actually needed (default is "No" ie disabled)

3gpP2BDl.jpg

 

* I installed a 250GB SSD to hold the VM's virtual disk. During my testing, when the vDisk was on my cache drive (btrfs mirrored pool of 2x3TB Hitachi Green Drives), the VM ran super slooooooowwww! On the SSD, it feels like "native hardware" speeds (ie super zippy). To easily facilitate the SSD which is a non-array drive, I installed the excellent "Unassigned Devices" plugin by gfjardim (go to Plugins/Install Plugin and paste in this:

https://raw.githubusercontent.com/gfjardim/unRAID-plugins/5efb7e8ad45751c0086054daece3d000b9b5dd6c/plugins/unassigned.devices.plg

and install the plug in, but also make sure you then update to the latest version by using Plugins/Check for Updates). I also set the SSD to auto-mount.

 

* When creating the Windows 10 VM, I followed the instructions in the UNRAID 6 Manual (listed above) and used the settings as shown below. I passed through the Nvidia GTX970 graphics card, as well as 5 USB devices (kbd, mouse, headphones and 2 x CorsairLink interfaces (to allow me to monitor the environmentals of the power supply and CPU water cooler by installing the CorsairLink software in the VM)).

 

*  I had to use the i440fx-2.3 emulated system because the Q35-2.3 system couldn't see/enable any of my USB devices.

 

*  As per some forum postings I read, to avoid any problems with the VM's graphics output, the UNRAID console output needs to be sent to a different monitor or even to a serial port (according to one posting I read) - ie anywhere EXCEPT the monitor that the VM is going to use. In my case, I enabled "Multiple Monitors" in my BIOS and set the Primary Display = iGFX (the built-in Intel graphics chip) and very importantly I needed to attach a HDMI cable to the motherboard HDMI port (even if the cable isn't connected to a monitor). If the cable wasn't attached to the port, the VGA arbitration wouldn't work properly and the VM's output wouldn't display on the 4K monitor (just a black screen).

 

*  I created the Windows 10 iso by downloading the Media Creation Tool from Microsoft (http://go.microsoft.com/fwlink/?LinkId=616936).

 

jsQSUobl.jpg

 

* After starting the VM, the normal Windows 10 installer displayed on my monitor (ie just like a physical machine booting from an installer CD). I completed the setup and Windows 10 booted just fine. I did all the usual things such as updating the system with Windows Update.  The GTX970 was automatically recognized and drivers were downloaded and installed (but not the latest drivers, so I grabbed those and installed them). I was able to access my UNRAID shares and other network devices immediately. I installed some games (such as Far Cry 4) and tested the system - everything worked flawlessly. I downloaded the 3DMark software and benchmarked the system.

 

Conclusions:

I now have an upgraded UNRAID server which can handle not only a gaming VM, but lots of Docker containers etc as well as it's normal file serving duties. The gaming VM gives me similar performance to a "real" system, without the extra costs of purchasing and running an extra physical system (and less space taken up as well). And for me, I was able to perform TWO long-overdue upgrades at the same time for half the cost - I upgraded UNRAID and I upgraded my gaming rig, so I've literally saved thousands of dollars with this approach.

 

Furthermore, the new hardware has been refreshed to the latest Skylake platform, and I have room to grow in the future by adding a 2nd graphics card into an SLI configuration for a huge boost in gaming performance, as well as space for another 32GB of RAM (I would need to replace the 4 x 8GB with 4 x 16GB).

 

Next Steps:

I haven't overclocked anything yet, but this motherboard offers one-button OC'ing. I can push the CPU clock, the RAM clock, and possibly even tweak the graphic card a bit (although the STRIX series are already overclocked by ASUS). On the UNRAID side of things, once HDD capacities/prices are favorable (I'm guessing 10TB soon enough), I'll begin replacing my 3TB & 4TB drives.

 

Link to comment

Awesome write up! Have a GTX 980 coming in(hopefully) tomorrow to do the same! My old GTX 660 and 6850 won't be cutting it for Battlefront!

 

Any idea about your set up benchmark or real world FPS numbers when running native hardware? Curious as to what performance hit we get on the higher end CPU/GPU stuff.

 

You can do a search on the 3dmark.com site and find all similar systems for comparison. I had a quick look and there are people getting much higher numbers with similar rigs but minus the virtualization. Considering that, I was nicely surprised when I ran the benchmarks and played FC4 all in a VM and found the performance was still great. I am really looking forward to playing Fallout 4 on this system when it is released in November. The 4K monitor will help a lot with the open world gameplay.

Link to comment

I would NOT Overclock my server that contains all my valuable data. Perhaps your data is less valuable so having potential errors or corruptions in it is fine for your needs. Then again, why would you be running unraid if you didnt value the accuracy and safety of your data.

 

I always follow the old adage "backup often, backup early"". I have another windows 10 box full of heaps of storage. I maintain a 1 to 1 mirror copy (and save all changes/deletions) between each unraid hdd and a corresponding windows hdd. This always me to instantly recover any file and any version whenever I need to. I have unraid parity enabled as well. I have a Crashplan unlimited account and am in the slow process of backing up everything to the cloud (estimated completion time: 1 year to go LOL). Lastly all my super valuable business and personal files are already backed up to Spideroak's encrypted cloud with full versioning. So you could say backups are my thing :-)

 

But you are very correct about bitrot. I have been hit by this a few times already. I need to investigate the best method of checksumming/validating every file ... it is definitely on my todo list!

Link to comment

That's great!  I have a Maximus VII HERO and the system info tab shows that IOMMU is disabled while HVM is enabled.  Any settings you had to enable in BIOS?  I have vt-d enabled but that appears to be it for virtualization.

 

Model: N/A

M/B: ASUSTeK COMPUTER INC. - MAXIMUS VII HERO

CPU: Intel® Core™ i7-4790K CPU @ 4.00GHz

HVM: Enabled

IOMMU: Disabled

Cache: 256 kB, 1024 kB, 8192 kB

Memory: 16384 MB (max. installable capacity 32 GB)

Network: eth0: 1000Mb/s - Full Duplex

Kernel: Linux 4.1.7-unRAID x86_64

OpenSSL: 1.0.1p

Link to comment

Awesome write up! Have a GTX 980 coming in(hopefully) tomorrow to do the same! My old GTX 660 and 6850 won't be cutting it for Battlefront!

 

Any idea about your set up benchmark or real world FPS numbers when running native hardware? Curious as to what performance hit we get on the higher end CPU/GPU stuff.

 

You can do a search on the 3dmark.com site and find all similar systems for comparison. I had a quick look and there are people getting much higher numbers with similar rigs but minus the virtualization. Considering that, I was nicely surprised when I ran the benchmarks and played FC4 all in a VM and found the performance was still great. I am really looking forward to playing Fallout 4 on this system when it is released in November. The 4K monitor will help a lot with the open world gameplay.

 

I see scores around the 11k mark for that cpu/gpu combo, thats really not a bad hit! I wonder if the hit is CPU or GPU based?

Link to comment

Awesome write up! Have a GTX 980 coming in(hopefully) tomorrow to do the same! My old GTX 660 and 6850 won't be cutting it for Battlefront!

 

Any idea about your set up benchmark or real world FPS numbers when running native hardware? Curious as to what performance hit we get on the higher end CPU/GPU stuff.

 

You can do a search on the 3dmark.com site and find all similar systems for comparison. I had a quick look and there are people getting much higher numbers with similar rigs but minus the virtualization. Considering that, I was nicely surprised when I ran the benchmarks and played FC4 all in a VM and found the performance was still great. I am really looking forward to playing Fallout 4 on this system when it is released in November. The 4K monitor will help a lot with the open world gameplay.

 

I see scores around the 11k mark for that cpu/gpu combo, thats really not a bad hit! I wonder if the hit is CPU or GPU based?

 

My guess is that it is CPU-limited ... I only allocated 4 of my 8 vCPUs to the VM, so I might try allocating more and re-running the benchmark.

Link to comment

That's great!  I have a Maximus VII HERO and the system info tab shows that IOMMU is disabled while HVM is enabled.  Any settings you had to enable in BIOS?  I have vt-d enabled but that appears to be it for virtualization.

 

Model: N/A

M/B: ASUSTeK COMPUTER INC. - MAXIMUS VII HERO

CPU: Intel® Core™ i7-4790K CPU @ 4.00GHz

HVM: Enabled

IOMMU: Disabled

Cache: 256 kB, 1024 kB, 8192 kB

Memory: 16384 MB (max. installable capacity 32 GB)

Network: eth0: 1000Mb/s - Full Duplex

Kernel: Linux 4.1.7-unRAID x86_64

OpenSSL: 1.0.1p

I'm not sure what function enables IOMMU ... for me, it was always enabled and I could always see the info. You can see from the attached info (full resolution: http://i.imgur.com/8qftKGI.jpg), my GTX970 card and audio are in their own group.

 

You might need to create a separate forum posting and ask the question - someone like JonP should be able to point you in the right direction.

 

8qftKGIm.jpg

 

l56W3Pum.jpg

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.