When attempting to change the display topology of a Windows virtual machine, increasing the resolution to a large value or enabling multiple high-resolution monitors, the operation may fail. The VM reverts to the original display resolution.
In the vmware.log file, you may see entries similar to:
YYYY-MM-DDTHH:MM:SS]Z In(05) vcpu-0 - Guest: DXUM_devapi: 5212: Application requested VM3DDevApi_Version3 (0x2)
YYYY-MM-DDTHH:MM:SS]Z In(05) vcpu-4 - Guest: vm3d: Memory required for all screens exceeds maximum (required=12657920 max=8388608)
YYYY-MM-DDTHH:MM:SS]Z In(05) vcpu-4 - Guest: DXUM_devapi: 5212: Topology validation failed, screen memory limits exceeded.
YYYY-MM-DDTHH:MM:SS]Z In(05) vcpu-6 - TOOLS call to Resolution_Set failed.
vSphere 8.0
This issue occurs because the WDDM graphics driver checks whether the requested display topology fits within the guest’s allocated graphics memory.
When Aero is disabled in the guest OS, an incorrect check is used, which may cause the topology change to fail.
When Aero is enabled, the check is performed correctly. However, earlier topology changes that seemed successful (but caused Windows to disable Aero) will no longer work.
Currently, there is no resolution.
To work around this issue, set the following configuration option in the VM config file:
guestInfo.svga.wddm.topologyFBMemoryChecks = "FALSE"
If Aero is enabled, switch to a non-Aero theme before making a topology change with the above configuration option.