Gpumodeswitch for Passthrough (DDA) of the GPU on Hyper-V 2016

I have an Nvidia Tesla M60 GPU and I am using Microsoft Remote Desktop Client software on Windows 7 to connect and this would be the display driver for that (Non VDI).

I am going to be playing video on the Microsoft RDS Server using VLC video player and remote desktop via RDSH.

Question #1) Do I need to switch my GPU over to "Graphics Mode" or is it better to have it in "Compute Mode" for playing video on VLC video player?

I would think display would make more sense, is this correct?

Question #2) I am using the Quadro Virtual Datacenter Workstation instead of Tesla (would this work better or worse for what I am trying to do?)

Question #3) Would there be either compatibility or performance problems with full screen video with dual monitor desktops using Microsoft RDSH?

Question #4) Is there any optimizations that are useful for playing video that would work along with VLC as it seems like RDSH is kind of slow overall (at least on my Windows 7 RDS Client software).

Hi Tim,

It makes no sense to ask different questions with different threads.
Q1->Graphics Mode
Q2->Already answered. For VDI this would be an issue without QvDWS but for RDSH this is OK.
Q3->Depends on several factors. Video Playback always needs also CPU so it depends on the session count running on the host and available resources. In general fullscreen video playback is not a big deal.
Q4->Important do enable hardware decode in the video player especially for videos that use H264. If we talk about Youtube videos you should make sure that your browser uses H264ify plugin to decode in hardware which makes a huge difference in performance and playback.



When I tried to use the gpumodeswitch.exe command line utility it does these things on the HOST of the machine…

gpumodeswitch.exe --listgpumodes (will crash)
gpumodeswitch.exe --gpumode graphics (will give this error message below)

ERROR: Unable to setup NVFLASH driver (0x00000020)
Detailed :The process cannot access the file because it is being used by another process.

I know that you said in the other thread that my GPU is new and it’s already in graphics mode, but I am just checking to see if there is something wrong with my card.

I have shutdown the VM’s and rebooted the host and I am still getting these messages.


you would need to uninstall vGPU manager first. Please simply check with lspci if your board is in Graphics mode. This is way easier…
lspci -n | grep 10de (should have class type 300)



I’m not using linux and I don’t have access to grep. Is there a way that I can use in Windows to find out?

Also, I am having some slowness when I play videos in full screen. I know that the GPU is working because I am running a GPU profiler and I see that it’s using 5-10 percent of the GPU to render a DIVX 1080P video, but if I do it full screen there are some pauses sometimes. If I do it in a window, it works fine.

Any idea why this would be?

Also, maybe I need to use another player instead of VLC (with hardware acceleration turned on). Would maybe the k-lite Codec Pack PLUS the player that comes with it be better?

You need to check Graphics mode on hypervisor level and not within a VM. As you don’t use a VDI solution from Citrix/VMware I would assume that your issue is not the GPU but the remoting to the endpoint. You could try Splash as video player and also use FRAPS for getting the video framerate. In most cases the GPU renders more than sufficient frames but the remoting is “too slow” to get the constant 30fps to the endpoint and therefore you see lack/stuttering.



Okay, that makes sense that it’s the slowness of the remoting software. Do you know if it comes down to the version of remote desktop client in general?

Because I tested this on a 6.1 version (Windows 7 Embedded) and it was super choppy, but the Windows 10 version was a lot better on performance and that version was something.

I have asked this before, but nobody has answered me…

When doing DDA and remotefx is there a recommended or required Remote Desktop Client that is needed to do this?

As far as the graphics mode. I was using the utility on the HyperVisor (HyperV on Windows Server 2016), but I just got that error and I couldn’t see what mode it was in. I assume graphics because it’s a new card.

[b]Any other tips that I can use regarding passthrough GPU support?

Is there maybe an open source Remote Desktop Software (client) that uses newer technology than Microsoft that might work better?[/b]

You’re right. RDP 10.x performs much better than RDP on Win7.
Unfortunately there is nothing better “for free” than RDP10.x For best performance you would need additional software from Citrix/VMWare/Nice… for additional costs.



I took a look at the GRID Packaging and Licensing Guide and I know we want the Perpetual Concurrent User License for the GRID Virtual Applications which you have to pay the SUMS fee for just one year, but I don’t know how to get started on finding how the purchase this license.

You can buy GRID licenses directly with most of the OEMs or you contact a NPN preferred partner.