Windows Android emulator(qemu-system-i386.exe)的高CPU使用率
模拟器qemu-system-i386.exe的cpu使用率几乎一直在7~9之间运行 Android studio 2.1 Android SDK工具:25.1.3 主机操作系统:Windows7-i7 2630QM-8GB Ram 已安装英特尔x86 Atom系统映像 无论我在emulator中更改什么设置,比如:仿真性能、多核CPU、x86-64映像,都是一样的 风扇总是开着真让人讨厌 有人对此问题进行了修复吗?更新:Windows Android emulator(qemu-system-i386.exe)的高CPU使用率,windows,android-emulator,cpu-usage,Windows,Android Emulator,Cpu Usage,模拟器qemu-system-i386.exe的cpu使用率几乎一直在7~9之间运行 Android studio 2.1 Android SDK工具:25.1.3 主机操作系统:Windows7-i7 2630QM-8GB Ram 已安装英特尔x86 Atom系统映像 无论我在emulator中更改什么设置,比如:仿真性能、多核CPU、x86-64映像,都是一样的 风扇总是开着真让人讨厌 有人对此问题进行了修复吗?更新: 我已经在Genymotion.com/plugins上安装了Genymo
我已经在Genymotion.com/plugins上安装了Genymotion插件,它具有惊人的性能持续使用CPU的原因可能是声音。如果您的模拟器中不需要声音,您可以通过编辑AVD的配置文件来禁用它 更改/添加这两行
hw.audioInput=no
hw.audioOutput=no
更新:如buncis所述,如果不需要,您也可以尝试禁用GPS:
hw.GPS = no
在Linux/Mac上,该文件位于~/.android/avd/.avd/config.ini在Windows上,该文件位于C:\Users\\.android\avd\.avd\config.ini在Mac上,我注意到在我的笔记本电脑进入睡眠状态后,模拟器使用了超过100%的CPU。按照本杰明的建议关闭音频并不能解决这个问题
长按emulator上的电源按钮重新启动模拟设备对我来说很有效。在我的情况下,我只在运行多个emulator实例时遇到这个问题
重新运行Android SDK中提供的英特尔硬件加速执行管理器(HAXM)安装程序(
\extras\Intel\Hardware\u Accelerated\u Execution\u Manager\intelhaxm Android.exe
),选择更改,查看分配给HAXM的内存量。如果是2GB或更低,您可能希望将其至少提高到4GB。然后重新启动模拟器,看看CPU使用率是否下降。使用x86_64(或64位)模拟器为我解决了这个问题。他们推荐x86版本,但它对我很合适。我通过将监视器的帧率设置为60hz,减少了模拟器的CPU使用量。它的频率为144hz,我的CPU运行速度为60%-70%。只需更改显示器的帧率,它现在的使用率为3%。更改分辨率对我来说很有效。我使用的是1440 x 2560560dpiOreo 8.1。现在我正在使用M-DPI Oreo 8.1,这与Win7上的qemu、HAXM 7.2.0存在同样的问题。我尝试过关闭音频,但没有效果,qemu在任何时候都会消耗大约20%的CPU,Android在x86和x64图像上的运行速度都非常慢
我在HAXM的发行说明文件中找到了解决方案:
- 在Windows上,Avast Antivirus可能会干扰HAXM,导致Android Emulator或QEMU运行非常缓慢。解决方法是取消选中Avast设置>疑难解答中的“在可用的情况下使用嵌套虚拟化”
更新:如果QEMU再次开始消耗CPU,首先检查Avast的更新状态。后台更新后,Avast可能会再次开始干扰HAXM。只需重新启动Windows即可解决此问题。我无法使用config.ini文件关闭音频,但只能使用qemu的-noaudio cmd行参数。但是,在Android Studio 3.2中,您无法向模拟器添加自定义参数,因此我做了以下操作: 在Android SDK的emulator目录中,在我的例子中~/Android/SDK/emulator/
mv emulator emulator.orig
制作一个名为emulator的bash脚本,内容如下:
#!/bin/bash
DIR=`dirname "$0"`
$DIR/emulator.orig -noaudio $*
然后:
现在,参数-noaudio将添加到Android Studio的所有emulator调用中,并将为您节省大量CPU周期。我在2018年11月初遇到了这个问题 虚拟设备满足于尝试连接到移动网络数据,所以我在设备内部将其关闭。
现在工作得很好。要了解虚拟设备上使用最多CPU的是什么:
adb shell
$ top
这将显示CPU使用率最高的进程列表
这将帮助您确定它是仿真器内的一个进程(如应用程序),还是仿真器内的另一个进程,或者只是使用大量CPU的仿真本身
在后一种情况下,请尝试通过安装HAX(本机英特尔指令)来优化仿真器,或者使用AVD配置文件编辑器启用硬件加速。禁用“设置”中的位置,同时禁用触摸声音 我的情况是,因为我选择了
软件
在adv中进行图形渲染。因此,在更改了硬件后
将CPU使用率从60降低到10,CPU温度从70降低到40。我现在使用的是macOS Catalina(10.15.2版),具有Intel Core i9和16 GB RAM以及Radeon Pro 560X 4GB图形
通过使用模拟电源按钮重新启动模拟设备,我解决了qemu的高CPU使用率问题
另外,在创建AVD时,我选择了硬件
图形渲染器,而不是自动
我通过取消“自动将当前状态保存到Quickboot”解决了这个问题
快照->设置->自动将当前状态保存到Quickboot-否在我的情况下,是快速启动导致了问题,要强制进入正常启动,请在
C:\Users\\\.android\avd\\config.ini中打开文本文件,并至少更改一个值
比如换行
hw.battery=yes
到
hw.battery=no
我使用了一种旧的Android版本,我使用了棒棒糖Galaxy Nexus API 22,将CPU使用率从220%降至30%
我还切换了:仿真性能>图形>硬件
使用Android Api 25。。。用于图形和关闭AVD音频和GPS的硬件对我来说不起作用
平台:MacOS在我的例子中,当打开时,CPU使用率跳到了99%:
adb shell
$ top
Android 10.0 x86上注意到了这个问题。
如果你
adb shell
$ top
$adb shell
$top
$kill -9 <PID>