Issue with playing hardware accelerated video on Windows Server 2016 using DDA with Nvidia Tesla M60

The entire point to what I am doing is to allow hardware accelerated Video on my Remote Desktop Server Host VM which is on Server 2016. The host is also on Windows Server 2016.

We are using an Nvidia Tesla M60 and I am using Discrete Device Assignment with HyperV to mount the two GPU’s of the card into the Virtual Machine.

This has been done and the GPU’s do show up in the virtual machine.
I had an issue with the drivers installing at first (using 385.54 drivers which are the latest), however I was able to recover and do it manually and they are now in there.

I have also have enabled in local group policy on the VM so that it uses the hardware default graphics adapter for all Remote Desktop Services sessions.

However, when I go to test the GPU, the video still uses the CPU and it’s extremely choppy at points.

I am using the VLC (Video Lan) Video player on the server over remote desktop.

Do, I need a special video player to make sure it works? Do I need to use different drivers. At first the video drivers failed to install, but I did a "clean" reinstall and they did install, but it still doesn’t work.

I have a generation 2 VM, does this have anything to do with it?

Hi, Tim.

First off, my understanding is that DDA under Hyper-V this isn’t officially supported yet for driving multiple GPUs – I assume you’re suing GRID 5.0? It does work, however, with our experiments using two P4 cards, so I’m not sure if having two physical engines on the M60 may add complexity and issues. You do have to install your VMs cleanly and not pull them in from some other installation and expect them to work. Use the latest GRID 5.0 drivers on those VMs. Which license/profile are you using?

It could also be the video player – can you run anything else successfully that shows as properly tapping onto the GPUs and does nvdidia-smi.exe indicate GPU activity on your VMs?

BTW, NVIDIA support said to look for this configuration to supposedly be supported sometime next year when GRID 6.X is released.

Multi GPU is not supported at all. What you could do is to assign the 2 GPUs from M60 to 2 VMs with 1:1 assignment.
Where did you download the driver? 385.54 is for sure not a GRID driver. You need to download the correct drivers from nvidia.flexnetooperations.com. You can create a trial account with nvidia.com/grideval.

Apart from that it should work with VLC and other players. For sure it still uses the CPU but you should also see GPU load. Depending on the video it also needs to be decoded in the session and for example you need to be careful especially with Youtube as they decode in VP9 and Maxwell boards are not capable to decode VP9 in hardware.

Regards

Simon

Okay, so we have learned you can’t use two GPU’s until next year. Not really a huge problem because we can build a second VM to do this.

So, now I have only one GPU in the VM and I have assigned up to 8 Gigabytes to it by way of this command in powershell:

Set-VM FX1 -GuestControlledCacheTypes $True -LowMemoryMappedIoSpace 2000MB -HighMemoryMappedIoSpace 8000MB

I also have learned that we need some kind of GRID drivers for the M60. I didn’t know about this, but I signed up to the flexnetoperations.com, but I can’t seem to find the website. It comes up and I am offered two options.

Nvidia Licensing Portal and Nvidia Enterprise Support

When I click on the Nvidia Enterprise Support it goes to this website which doesn’t exist:
http://mantainance.nvidia.com/subject/contact.emails.address

I verified my email address so it shouldn’t be a problem.

UPDATE: I probably should have tried this first…
nvidia.com/grideval

So, is there a video somewhere to help with the installation of the "Grid" software?
I am at the point now in which I can redeem my Key that I obtained.

It seems to me that we might have to purchase this. How much is it? Where do I pay for it?

Do I install the Grid software on the HyperV Host or the VM guest?

From what I have so far, it seems like this isn’t a very straight forward process. In the future, you guys should make sure people know what the requirements are for and that there is an upfront cost.

I was just assuming that this was just drivers which are always free.

I just want to make sure that I am clear as I need to know which version of Nvidia Grid to use.

The entire purpose is to have a Virtual Machine serve up RDSH and NOT VDI that serves up hardware accelerated video for many users at one time.

So you have 8 to 16 people using one server and any video that they play will be GPU accelerated so that it’s nice and smooth and isn’t choppy.

Basically, I work for a court house in California and we need to focus on playing video well using this VM. So, video is a huge priority and get the best performance.

So, in order to do this I was told that I would need Windows Server 2016 and use DDA (Discrete Device Assignment) for the host and the guest.

So, now we know that we will have many people using one server and not have separate servers and uses DDA and not RemoteFX, which version of Grid do I need and how does the pricing work?

Do I have to pay for support or is it seperate?

Hi Tim,

you should start reading some documentation. You find lots of information around GRID here:

Concerning license cost and which offering to use have a look here:

In our documentation we also describe the process for DDA.

In general you will need vApps licensing for your RDSH sessions. So you need to have CCU licenses for the RDSH users running on the GPU.

Regards

Simon

Hi Simon,

I have everything setup now. I have a server set up for licensing with an evaluation license installed and Grid Drivers installed on my Hyper-V host and my VM guest, but I need to switch the licensing over to GRID-Virtual-Apps instead of Quadro-Virtual-DWS. How can I do this?

It just says that Tesla is unregistered in the VM under Manage Licensing under the Nvidia Control panel.

Hi Tim,

this is a known issue and will be fixed in the next release. For the moment it is OK to have it "Tesla unlicensed". This won’t affect the functionality.

Regards

Simon

Hi Simon,

Well, I need to make sure that I am in Grid-Virtual-Apps mode instead and I can’t find out how to switch over and selecting "Tesla Unlicensed" won’t do it.

How do I get phone help? I need to talk this over with someone and I have left email for someone, but nobody is helping me and I need help with this as the video is not accelerated.

I feel like I am almost there, but just need enough help to get to where I need to be and I don’t have a phone number for help.

If this works, we are willing to pay for support, but I need to prove that it works properly with accelerating video on the server and it’s not doing that yet.

I do assume that once we buy the grid product we will get phone support, because right now I am not too impressed with the help of this product.

I have followed the quick start guide to get this thing up and running, but I need help in getting the correct license for DDA (Discrete Device Assignment) on Windows Server 2016 and I have it almost all there, except it isn’t working yet (probably because I need to get the correct license), but this Forum is the only people helping out and while that’s nice, I would like to see some actual support for their product line on their "Enterprise" support.

The quick start guide doesn’t really have DDA in it, it’s just basic VMware, which is what we don’t use, so I have to see about getting this to work on my own with a little help from this forum.

Also, how can I test to see if the CPU is working in my Windows Server 2016 VM. I have tried to use GPU-Z, but that doesn’t report anything and even gpumodeswitch.exe --listgpumode is saying "No Nvidia Display adapters found", even though it’s in my Device manager on my VM and says "Nvidia Tesla M60".

I would like to test GPU performance as well, any ideas on this?

Hi Tim,

you’re right that you are only eligable for ESP if you have a valid SUMS agreement.
Are you sure you set the correct GPO (local policy) on your VMs to get GPU acceleration for RDS sessions?
Sounds like you missed this step and therefore you won’t see GPU acceleration.

snip
On Windows Server 2016 and Windows Server 2012, Remote Desktop Services (RDS) sessions on the RD Session Host server use the Microsoft Basic Render Driver as the default adapter. To use the GPU in RDS sessions on Windows Server 2012, enable the Use the hardware default graphics adapter for all Remote Desktop Services sessions setting in the group policy Local Computer Policy > Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Remote Session Environment.
snip

How did you run GPUModeSwitch? With the ISO? All recently bought M60s are delivered in Graphics mode already so if the board is not years old there is no need to do mode switch.

Regards

Simon