Performant Big Sur VMs in Fusion

TL;DR

  • Requirements
    • macOS 11 host and guest
    • VMware Fusion 12.1
  • Download and install VMware Tools 11.2.5 or later
  • Edit the VM’s VMX file
    • Right click the VM
    • Hold the option key
    • Click Open Config in Editor
  • Add appleGPU0.present="TRUE" and svga.present="FALSE"
  • Enjoy

The Story

I was testing something out today in a Big Sur VM and getting really frustrated with the absolute terrible performance. I had seen a Michael Roy post a while ago about Fusion being able to utilize Apple’s Metal framework to speed things up and I remembered reading Emily’s post on how to enable it. So I figured I’d give it a shot!

I reviewed Emily’s post and added

svga.present="FALSE"
appleGPU0.present="TRUE"
appleGPU0.screenWidth="1920"
appleGPU0.screenHeight="1080"

to my linked clone’s VMX file. On boot I could immediately tell a speed difference. However there was one glaring problem: the resolution was stuck at 1024×768. Even though I specified 1920×1080 in the config no matter what I tried I couldn’t get any other resolution.

Quick side note: turning on Accelerated 3D Graphics at this point super broke VMware Fusion. I had to force quit the vmware-vmx process.

After some searching I came across this post with a tweet that I hadn’t seen before stating that a newer VMware Tools could auto-resize Fusion windows with these new appleGPU0 config settings:

Also, install VMware Tools 11.2 in your Big Sur VM with the paravirt GPU and you’ll have auto fit working nicely, no Fusion update required 🙂

At this point I tried reinstalling VMware Tools via Fusion, but nothing changed. Eventually I found my way to VMware Tools download page (note: pretty sure you need to be signed in to access this.) From here I downloaded VMware Tools packages for OS X v11.2.5 (as of writing this) and installed it.

Voila, it worked! I’m getting excellent performance and a resizable Fusion window 🎉