Force MuMu Player to Run on Integrated Graphics
I’ve been keeping MuMu Emulator running in the background a lot lately. By default, it runs on the discrete GPU, and unfortunately there’s no option in its own settings to choose which GPU to use. The problem is that my discrete GPU is configured with an automatic fan stop/start feature. When MuMu runs in the background, the GPU temperature slowly rises, eventually hitting the threshold where the fans suddenly spin up with a loud *whoosh*. After cooling down, they stop again—over and over. It’s noisy and annoying. So I spent some time tinkering and forced MuMu to run on the integrated GPU instead. After all, the iGPU is just sitting there idle anyway 🐶
I’m using MuMu Player v5.12.1. Some settings may differ slightly between versions.
The installation path on my system is C:\Program Files\Netease\MuMuPlayer\. Please adjust the paths according to your actual installation directory.
TL;DR
- In MuMu’s settings, change the rendering mode to
DirectX. - In Windows Settings → System → Display → Graphics, add desktop apps and set the GPU preference to the integrated GPU for the following executables:
C:\Program Files\MuMuVMMVbox\Hypervisor\MuMuVMMHeadless.exeC:\Program Files\MuMuVMMVbox\Hypervisor\MuMuVMMSVC.exeC:\Program Files\Netease\MuMuPlayer\nx_main\MuMuNxMain.exeC:\Program Files\Netease\MuMuPlayer\nx_device\12.0\shell\MuMuNxDevice.exe
I didn’t bother testing which ones are strictly required. The last two might not be necessary, but following the principle of “better safe than sorry,” I added all of them anyway.
The Troubleshooting Process
At first, I thought it would be enough to simply change the GPU preference for the MuMu executable itself in Windows settings. But that didn’t work at all as Task Manager still showed it running on the discrete GPU, with the GPU Engine listed as GPU 1 - 3D.
Next, I tried setting the GPU preference for all the related executables I could find in MuMu’s installation directory. Still no luck.
So I opened Task Manager again, sorted processes by GPU usage in descending order, and noticed a process named MuMuVMM Headless Frontend. After right-clicking it and choosing Open file location, I discovered that it wasn’t even located in MuMu’s main installation directory, but instead under: C:\Program Files\MuMuVMMVbox\Hypervisor\
After assigning the GPU preference to the relevant executables in this directory, MuMu finally started running on the integrated GPU. Task Manager now shows the GPU Engine as GPU 0 - 3D. Problem solved.
Other Optimizations
Performance Tuning
By default, MuMu uses 4 CPU cores and 4 GB of RAM on my machine, which is completely overkill for my needs. I reduced it to 2 CPU cores and 3 GB of RAM to cut down unnecessary resource usage.
Launching the Emulator Directly
In newer versions of MuMu, launching the emulator always requires opening the Multi-Instance Manager first, and only then starting the actual emulator. For users who only ever run a single instance, this is pure redundancy.
Solution:
Create a desktop shortcut or pin the following executable to the Start Menu:C:\Program Files\Netease\MuMuPlayer\nx_device\12.0\shell\MuMuNxDevice.exe
If your MuMu installation is not located at this path, you can manually locate the executable:
- Launch the emulator instance
- Right-click the MuMu icon in the taskbar, then right-click
MuMuNxDeviceor whatever in the pop-up menu - Select Properties → Open file location
- Right-click the executable and choose Send to → Desktop (create shortcut) or Pin to Start