XenServer 6.5 (CPU Governor defaulted to performance), XenDesktop 7.6 Feature Pack 3, Windows 7 64-bit virtual desktops
Dell R730 - Performance Per Watt (OS) enabled, single K2
Latest NVIDIA Drivers and components
Verified that GPU is functioning and performing as expected with Unengine, HTML5 web sites, etc.
I have a client leveraging a WPF (Windows Presentation Foundation) application that uses some version of .NET (unknown because the default image has all versions installed). The client believes that the WPF application leverages GPU but cannot confirm. When the application is installed on a Physical server (Windows 7 64-bit OS) with a K2000 card and local SSD storage, the application can open records within 3 seconds.
Same server, but putting on XenServer 6.5 (or vSphere 6 for that matter), replacing the K2000 with a K2 (using a 280Q or even passthrough) and local SSD VMs, the application opens records in 5 to 6 seconds. We don’t see GPU being hit either via the hyper visor management console but it could be the interval isn’t long enough to be seen by the charts.
I found some regkeys in the following article: Configuring Virtualised Autodesk and similar applications including XenApp GPU-sharing and tools for sanity checking DirectX/OpenGL usage | Citrix Blogs
[HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\CtxHook\AppInit_Dlls\ Multiple Monitor Hook] ”EnableWPFHook” =dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\CtxHook\AppInit_Dlls\ Multiple Monitor Hook] ”EnableWPFHook” =dword:00000001
But the article references XenApp/Server OS only.
- How can I verify a WPF app is or is not using GPU?
- Is there a test WPF that is known to use GPU that can be tested?
- Are the EnableWPFHook regkeys needed in a Desktop OS (either in the above regkey or somewhere else? 4) Is XenDesktop with 7.6 and above on a desktop OS, already WPF aware?
- any suggestion for enhancing performance of a WPF app (it is a COTS app so we can’t recode)
Could a WPF app have problems in VMs?
Thanks to anyone who looks at this and responds.
PS Fun read - http://blogs.msdn.com/b/jgoldb/archive/2010/06/22/software-rendering-usage-in-wpf.aspx and http://snoopwpf.codeplex.com/