The emulator qemu-system-i386.exe cpu usage almost constantly running between 7~9
Android studio 2.1 Android SDK Tools: 25.1.3 Host Operating System: Windows 7 - i7
I am on macOS Catalina(Version 10.15.2) with Intel Core i9 and 16 GB RAM and Radeon Pro 560X 4GB Graphics.
I solved high CPU usage by qemu by restarting the emulated device using the emulated power button.
Also, while creating the AVD, I chose Hardware
Graphics Renderer instead of Auto
.
In my case, I only encountered this issue when running multiple instances of the emulator.
Re-run the Intel Hardware Accelerated Execution Manager (HAXM) installer provided in the Android SDK (<Android SDK path>\extras\intel\Hardware_Accelerated_Execution_Manager\intelhaxm-android.exe
), select Change, and see how much memory is allocated to HAXM. If it's 2 GB or less, you probably want to raise it to at least 4 GB. Then restart your emulator and see if the CPU usage drops.
I wasn't able to shut the audio off with the config.ini file, but only with the -noaudio cmd line argument to qemu. However, with Android Studio 3.2, you can't add custom arguments to the emulator, so I made this:
In the emulator dir of the Android SDK, in my case ~/Android/Sdk/emulator/
mv emulator emulator.orig
Make a bash script called emulator with the content:
#!/bin/bash
DIR=`dirname "$0"`
$DIR/emulator.orig -noaudio $*
Then:
chmod +x emulator
Now, the argument -noaudio will be added to all invocations of emulator from Android Studio and will save you a lot of CPU cycles.
I solved it by cancelling "Auto-save current state to Quickboot"
Snapshots -> Settings -> Auto-save current state to Quickboot - NO
I had the same issue recently on Windows 10 (18363): the AVD used all of the host's 16 Threads at 100%, it seems the android.hardware.graphics.composer@2.1-service
process on the AVD was to blame.
What helped in my case: going to AVD settings
- Advanced
- change the OpenGL ES renderer
to Desktop native OpenGL
and restart the AVD. Now it uses like 2-3% of my CPU resources. Hope this helps someone.
Using the x86_64 (Or the 64 bit) emulator solved it for me. They recommend the x86 version, but it was acting up for me.