powerhouse wrote:@talos_d: Thanks sharing your setup and experience. By the way, what is your hardware?
I'm using kvm with VGA passthrough for pretty much the same purpose, except that I'm using Lightroom. Processing photos is the only reason I keep Windows around, else I would have dumped it long ago.
In my setup I use the GPU acceleration to improve Lightroom performance. I have a high-end monitor that allows me to write a 14-bit LUT directly to the screen using the DVI interface. This means when I start Windows, it uploads the LUT to the monitor, correcting the color output. When i do screen calibration, I connect my color calibration device to a passed through USB port. For all this to work the drivers and software within Windows need hardware access to the graphics card, USB, etc., so passthrough is essential.
In your setup you use the passed through graphics card for video acceleration, but mirror the output to a virtual screen (window) for convenience. The graphics performance should be nearly the same as bare metal, but the mirroring introduces some lag, whether lag in dispaying the frames , or when using the mouse. Your windowed VM runs on a Linux desktop, meaning that the communication is going through the network bridge you set up. You need to see if there is anything you can do to improve the network speed as this will have a direct impact on lag. The bridged network connection should perform pretty good, but I haven't invested in tweaking this further. In your use case this might be worth exploring.
A good graphics card test is Unigine Heaven - if that runs about as fast as on bare metal, you know you got it right.
My hardware is:
Desktop: Cinnamon 3.4.4 (Gtk 3.18.9-1ubuntu3.3) dm: lightdm Distro: Linux Mint 18.2 Sonya
Machine: Mobo: Gigabyte model: H270M-DS3H
CPU: Dual core Intel Pentium G4560
Graphics: Card-1: Intel Device 5902
Card-2: NVIDIA GM206 [GeForce GTX 960]
Network: Card: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
KINGSTON 120.0GB SSD
WESTREN DIGITAL 1TB
Thank you for for the advice on simplifying the script and speeding up the network bridge,I really have not looked into it yet.
I did the UNIGINE heaven benchmark and it turned out quite useful as I needed a benchmark that does
not run fullscreen(I had to keep the qxl fake monitor as my secondary in extended mode and that makes
running fullscreen applications not easy)the results show that the system does use my gtx 960 but there is
some performance drop-2940 score on the basic preset versus 2530 on the fake monitor.For me a 14 percent
difference is good enough to try and make this work(maybe with some optimization I can reduce the overhead)
Mouse lag:Well I figured out that the mouse Lag was definitely being caused by the qxl drivers-using the
0.16 drivers on this page http://depot.flexvdi.com/guest-tools/
made the mouse lag go away completely.
unfortunately it introduced a chaotic jumpy mouse behavior thats make the system close to unusable.
also while running unigine benchmark its clear that a subtle stutter persists.
its seems that windows 10 just does not like the qxl driver.Though on this page-https://bugs.freedesktop.org/show_bug.cgi?id=91219#c26
the above mentioned driver
seemed to work for others without any buggy behavior so it might be something with my particular set up.
edit:it seems these drivers use spice which might be the root cause of the baggy/laggy behavior,
wonder if I can set it up without virt manager.