M60 NVENC - XD VDA 7.11 - only 1GB vGPU profiles and above?


Been playing with the M60 and 7.11 XenDesktop VDA. I’m finding that NVENC only kicks in when I use the 1GB frame buffer profile (and I assume above) - it doesn’t work/kick in for the 512MB framebuffer profile? - I assume this is due to the size limitation of the framebuffer or the number of streams the card can support itself but this isn’t highlighted anywhere in any documentation I’ve found and obviously has very large scalability implications ? The marketing train, especially here: https://blogs.nvidia.com/blog/2016/09/14/citrix-xendesktop-nvidia-grid/ certainly makes no mention of it…

It’s all well and good to increase your ‘scalability’ but that’s not really helpful when you ‘descaled’ your vGPU capacity…

Am I simply doing something wrong? I can certainly tell the improvement in performance!


I’m not aware of any vGPU Profile limitations for NVEnc, but I’ve never used a 512MB Profile…

So I can try and replicate this in my lab, just for my reference, what are you using to determine whether the NVEnc is active or not? Are you using a "B" or "Q" profile?



I was using the M60-0Q profile… I’m about to go and test the B profile and I also will report back my results.



No difference with the B profile - NVENC does not kick in. If I shutdown and reboot the machine with any of the M60-1 and above profiles it works like a charm :(

Hi Andrew,

Our engineering/PM teams have confirmed that at the moment NVENC is not enabled on 512MB profiles owing to a need to avoid overcommit. A limitation we are actively working on to lift. For the time being NVENC is indeed only available for GRID 4.0 on 1GB and higher FB profiles.

We’d welcome you raising this issue with our ESP support profile (raise a ticket) so we can include you in any early access program, proactively notify you of changes and highlight your need.

This should be done via the customer’s enterprise support portal where customers should raise a ticket/case via: https://nvidia-esp.custhelp.com/ links to the portal can be found on the main GRID support page: http://www.nvidia.com/object/grid-support.html.

Best wishes,

Hi Rachel,

Thats a shame but thanks for getting back to me so quickly. I’ll raise a ticket as you suggest and look forward to updates.



Rachel, does this apply to the M10 and VMware Horizon, too, or just an XenDesktop restriction?

My chat with my NVIDIA SE indicated that yes this affects the M10 as well, it’s not specific to Citirx/VMWare but at the driver/nvidia level.

Can someone please give some hints on how to best (reliable) identify if NVENC "kicks in" on Windows Desktop Virtual Machines (XenDesktop 7.11) ? Is the REG KEY EncoderType_Mon1 the only hint?


For a bit more than that, use Putty and SSH to the GRID Host that is running the VM you want to test.

Type "nvidia-smi" to show the vGPUs on the host, you can then identify which one your VM is using.

To query the vGPU use "-q"

To specify a certain vGPU out of the group, use "-i 1" (assuming the number of the vGPU you want to monitor is 1. You can get the vGPU number from just running "nvidia-smi" as mentioned above)

To constantly loop (refresh) this result to provide a basic form of monitoring, use a time variable stating the number of seconds for the loop interval, use "-l 1"

So to monitor vGPU 4 with a loop rate of 1 second, you would run the following:

nvidia-smi vgpu -q -i 4 -l 1

This will run until you cancel it (Ctrl + C) or close the SSH connection and will give you all sorts of useful information.



Hi Ben (strange if your name is the same ;),

great explanation, thank you so much.

Do you know if Citrix is going to display these records within Xencenter in a future release? This would be so cool and easier.

Another good solution would be Splunk. Does Nvidia work on a splunk App or has some experience to forward and analyse these grid data /w splunk?


Hi Ben

Yes, another Ben :-)

You may or may not know, but XenCenter has some built in vGPU monitoring abilities. You can use the performance monitoring tab to create some custom vGPU monitors (Power, Memory Utilisation etc), however I don’t believe that they have the NVEnc available.

Other specialised vendors (eG Innovations, Goliath, LakeSide etc etc) are using this information in their software to display these metrics in their own custom way, so may be worth checking out an evaluation.

Another piece of monitoring software you may want to try is from Jeremy Main. It’s free to download from here: https://github.com/JeremyMain/GPUProfiler/releases and has the features you’re after. Just download the .exe and run it locally on the desktop you want to asses. It doesn’t require installation as it’s a portable .exe.

Yes, UberAgent can monitor vGPU https://gridforums.nvidia.com/default/topic/237/uberagent-for-splunk-monitors-gpu-usage-per-machine-and-per-process/ However not having personally used it I can’t confirm what depth it goes to.



Hi Ben :-)

Thank you, good summary on tools!

It would be a good hint for the Xenserver PM/developers to display Nvenc usage directly within Xencenter. vGPU Usage is already possible.

As i work for a happy uberagent partner i know how to monitor vGPU usage within Sessions with splunk and my question was more "does Nvidia provide / develop a own (or splunk app) integrated way to monitor hardware/and nvenc encoder usage of the Grid Cards". Nvidia-Smi is great but hey, a Grid Board is worth a management server with usage reporting functionality in my opinion ;)

Kind regards

I’m pretty sure Citrix is already working on the Xenserver piece to add the new metrics we have like Encode/Decode into the XenCenter performance monitoring. Keep you posted as soon as I get some news…