[i]My opinion based on my findings:
Microsoft Windows 10 new "Compositing window manager" (DWM.exe) problems:
- it is triple-buffer manager (Win7 "Aero" was double-buffer) -> this leads to more GPU memory requirement and higher latency for VDI
- it has some embedded "optimization" (the problem persists from Win7) -> this leads to unpredictable and low FPS for VDI (https://gridforums.nvidia.com/default/topic/1149/xendesktop-with-nvidia-grid/3d-load-impacts-nvenc-performance/post/4247/#4247)
- it is crippling by scaling non-primary monitor outputs (https://medium.com/@toncijukic/windows-10-desktop-compositor-and-high-ppi-rendering-7fa29c4cc18a).
- it cannot be disabled !
NVidia GPU/vGPU driver problems:
- NVidia Video Codec SDK (this is needed by "local" HW accelerated encoding to h264 for VDI stream for most "modern" protocols ("Blast Extreme"/"HDX 3D Pro")) has unbelievable GPU memory requirements 260MB per one stream (you need two for dualmonitor, expecting 16*frame buffer size ~ 14MB for FullHD) (https://devtalk.nvidia.com/default/topic/1006545/260m-gpu-memory-usage-for-one-gpu-h264-video-decoder-is-normal-/)
- NVidia Capture SDK works badly with DWM (like https://gridforums.nvidia.com/default/topic/1046/nvidia-grid-apis/fullscreen-video-capture-issue/)
- vGPU 512MB profile allows to use ONLY 436207616 bytes in guest (framebufferlength=0x1A000000 and reserved_fb=0x6000000 to fake/hide virtualization lost) (see https://gridforums.nvidia.com/default/topic/438/xendesktop-with-nvidia-grid/k220q-video-ram-xenserver-6-5/post/1922/#1922).
- driver randomly crashes in low GPU memory situation !
Solution from NVidia - disable dualmonitor support for 512MB vGPU profiles and remove 512MB profiles form Pascal vGPU and ignore all other problems.
I described only my point of view based on my real programming experiments and I do not try to interfere with NVidia’s Visions.