Enable 3D Acceleration for macOS Virtual Machines in VMware Fusion
In my last blog post, I installed and configured a macOS Sonoma virtual machine, but without 3D acceleration enabled in the settings, it was painfully laggy. Even a simple window resize animation could freeze the VM for 10 seconds — not bearable. After some serious Googling, I stumbled upon a method on the official site to enable 3D acceleration by tweaking the `.vmx` file.
Make sure the macOS in your virtual machine has the latest VMware Tools installed. The host and virtual machine system versions should be no lower than macOS 11 Big Sur.
This blog post is translated from my Chinese blog post, the content in the images used in the post may still be in Chinese, sorry for the inconvenience.
Apple introduced the Paravirtualized Graphics framework in macOS 11 Big Sur, which means that macOS virtual machines can finally leverage the real GPU for rendering instead of relying solely on the CPU to huff and puff through the graphics. This greatly improves the VM’s performance. While Parallels Desktop enables this feature automatically, VMware Fusion doesn’t offer a setting for it due to stability concerns. Instead, we need to manually enable it by editing the .vmx
file. (And why not just use PD? Well, because it’s expensive, and nothing beats the free goodness of VMware.)
Here’s how you do it:
- Open VMware Fusion, but do not start the virtual machine.
- Click
Window
in the top menu bar of the host machine to open the dropdown menu. - Click
Virtual Machine Library
. - Right-click on the relevant virtual machine and select
Show in Finder
. - In Finder, right-click the virtual machine file and choose
Show Package Contents
. - Right-click the
xxx.vmx
file (wherexxx
is your virtual machine’s name) and selectOpen With
->TextEdit
. - Add the following two lines to the file (the location within the file doesn’t matter):
1
2appleGPU0.present = "TRUE"
svga.present = "FALSE" - Save the file and start the virtual machine. On the lock screen, you should see the background video playing, and once on the desktop, the dock and top menu bar should have a translucent effect, indicating that 3D acceleration is successfully enabled.
Please note that this method has some limitations, including:
- OpenGL-based applications are not supported.
- Some Metal-based applications may not run well as only a subset of Metal is currently available inside of the virtual machine.
- On some specific hardware rendering crashes, macOS guest panics, vmx crashes problems may occur.