模拟器qemu-system-i386.exe cpu的使用率几乎不断在7~9之间运行
Android studio 2.1 Android SDK工具:25.1.3 主机操作系统:Windows 7 - i7 2630QM - 8GB Ram 已安装Intel x86 Atom System Image
无论我在模拟器中更改的设置如下:模拟性能,多核CPU,x86-64图像,总是一样的
总是真的很讨厌粉丝
任何人都有解决此问题的方法吗?
答案 0 :(得分:112)
CPU使用率不变的原因是声音。如果您的模拟器中不需要声音,可以通过编辑AVD的配置文件来禁用它。
更改/添加这两行
hw.audioInput=no
hw.audioOutput=no
在 Linux / Mac 上,文件位于〜/ .android / avd /< AVD_Name> .avd / config.ini
在 Windows 上,该文件位于C:\ Users \< username> \ .android \ avd \< AVD_Name> .avd \ config.ini
答案 1 :(得分:10)
在Mac上,我注意到我的笔记本电脑进入睡眠状态后仿真器使用了超过100%的CPU。正如本杰明建议的那样关闭音频并没有解决这个问题。
通过长按仿真器上的电源按钮重新启动模拟设备对我来说很有用。
答案 2 :(得分:7)
在Win7,HAXM 7.2.0上,qemu出现相同的问题。我尝试关闭音频,但没有帮助,qemu随时消耗大约20%的CPU,Android在x86和x64图像上的运行速度都很慢。
我已经在HAXM的发行说明文件中找到了解决方案:
我有Avast Pro Antivirus 18.5。我没有选中此参数,重新启动了PC,现在qemu消耗了0%的空闲时间,Android运行正常。
更新:如果QEMU开始再次消耗CPU,请首先检查Avast的更新状态。后台更新后,Avast可能会再次开始干扰HAXM。只需重新启动Windows即可解决。
答案 3 :(得分:5)
使用x86_64(或64位)模拟器为我解决了它。他们推荐x86版本,但它正在为我做好准备。
答案 4 :(得分:3)
我在2018年11月开始遇到了这个问题。
虚拟设备正在尝试连接到移动网络数据,因此我在设备本身内部将其关闭。 现在工作很棒。
答案 5 :(得分:3)
我正在使用Intel Core i9和16 GB RAM和Radeon Pro 560X 4GB图形的 macOS Catalina (版本10.15.2)。
我使用 仿真电源按钮 通过 重启仿真设备 解决了qemu的CPU使用率过高的问题。 / p>
此外,在创建AVD时,我选择了Hardware
图形渲染器而不是Auto
。
答案 6 :(得分:2)
在我的情况下,是引起问题的原因是快速引导,迫使其进入正常引导,打开C:\Users\<username>\.android\avd\<AVD name>\config.ini
中的文本文件并更改至少一个值。
例如更改行
hw.battery=yes
到
hw.battery=no
答案 7 :(得分:1)
就我而言,我在运行模拟器的多个实例时只遇到了这个问题。
重新运行Android SDK(<Android SDK path>\extras\intel\Hardware_Accelerated_Execution_Manager\intelhaxm-android.exe
)中提供的英特尔硬件加速执行管理器(HAXM)安装程序,选择更改,并查看为HAXM分配了多少内存。如果它是2 GB或更少,您可能希望将其提升至至少4 GB。然后重新启动模拟器,看看CPU使用率是否下降。
答案 8 :(得分:1)
我通过将显示器的帧率设置为60hz来降低模拟器的CPU使用率。它是在144hz,我的CPU运行在60% - 70%。通过仅改变显示器的帧率,现在它的使用率为3%。
答案 9 :(得分:1)
我无法使用config.ini文件关闭音频,而只能使用qemu的-noaudio cmd行参数关闭。但是,对于Android Studio 3.2,您无法将自定义参数添加到模拟器中,因此我做到了:
在Android SDK的仿真器目录中,以我为例,〜/ Android / Sdk / emulator /
mv emulator emulator.orig
制作一个名为emulator的bash脚本,内容如下:
#!/bin/bash
DIR=`dirname "$0"`
$DIR/emulator.orig -noaudio $*
然后:
chmod +x emulator
现在,参数-noaudio将被添加到Android Studio中所有模拟器的调用中,并将为您节省大量CPU周期。
答案 10 :(得分:1)
我最近在Windows 10(18363)上遇到了同样的问题:AVD以100%使用了主机的所有16个线程,似乎应该归咎于AVD上的android.hardware.graphics.composer@2.1-service
进程。
对我而言有什么帮助:转到AVD settings
-Advanced
-将OpenGL ES renderer
更改为Desktop native OpenGL
,然后重新启动AVD。现在,它占用了我2-3%的CPU资源。希望这对某人有帮助。
答案 11 :(得分:1)
我通过取消“将当前状态自动保存到Quickboot”解决了该问题
快照->设置->自动将当前状态保存到Quickboot-否
答案 12 :(得分:0)
对我来说,我关闭了 WIFI,使用率从 112% 下降到 10%。我建议这样做
答案 13 :(得分:0)
就去做
$adb shell
$top
看哪个CPU高的PID
$kill -9 <PID>
答案 14 :(得分:0)
答案 15 :(得分:0)
答案 16 :(得分:0)
使用旧的Android版本我使用了Lollipop Galaxy Nexus API 22 ,将CPU使用率从 220%降低到 30%左右! ...
我还切换了:仿真性能>图形>硬件
使用 Android Api 25 ...图形硬件以及关闭AVD音频和GPS不适用于我...
平台:MacOS
答案 17 :(得分:0)
我的情况是,我选择software
进行adv中的图形渲染。因此,在更改为hardware
之后,请将CPU使用率从60降低到10,并将CPU温度从70降低到40。
答案 18 :(得分:0)
禁用设置中的位置并禁用触摸声音。
答案 19 :(得分:0)
要了解虚拟设备上使用的CPU最多:
adb shell
$ top
这将向您显示CPU使用率最高的进程列表。
这将帮助您确定它是仿真器中的一个进程(例如您的应用程序),仿真器中的另一个进程还是只是使用大量CPU的仿真本身。
在后一种情况下,请尝试通过安装HAX(本地intel指令)来优化仿真器,或者使用AVD配置文件编辑器启用硬件加速。
答案 20 :(得分:0)
更改决议对我有效。我使用的是1440 x 2560 560 dpi Oreo 8.1。现在我正在使用M-DPI Oreo 8.1
答案 21 :(得分:-1)
更新:
我已经在genymotion.com/plugins上安装了Genymotion插件,它有着惊人的性能