VMware Fusion 12.1.0 Big Sur Host - Windows 10 Guest was driving me nuts as it was so slow and laggy. Windows 7 guest on the other hand runs very snappy. In Fusion 10 it was enough to keep the virtual machine on an SSD to speed things up but it didn't make any difference with Fusion 12. The solution was to edit the .vmx config file and add these lines if they don't already exist taken from https://communities.vmware.com/t5/VMware-Fusion-Discussions/Guest-OS-s-get-unusably-slow-after-a-few...
mainMem.backing = "swap"
sata0:0.virtualSSD = 1
MemTrimRate = "0"
sched.mem.pshare.enable = "FALSE"
Now performance is snappy and nearly as fast as running in Bootcamp.
Below fix works for me running Fusion 12.1.2 and MacBook Pro Intel 7 based on Big Sur:
1. shutdown the VM and close VMWare Fusion.
2. find the VM vmx file, edit the filie with your favour editor and find the "windows.vbs.enabled" line and change it from TRUE to FALSE, if you don't find the line, add it to bottom of the file:
windows.vbs.enabled = "FALSE"
3. open VMWare Fusion but don't start the VM yet, modify the VM setting, under "Processors & Memory", expand "Advance options", uncheck both "Enable hypervisor applications in this virtual machine" and "Enable IOMMU in this virtual machine".
Your are all set.