Высокая загрузка процессора с помощью эмулятора Android (qemu-system-i386.exe)

Использование процессора эмулятор qemu-system-i386.exe почти постоянно работает между 7 ~ 9

Android studio 2.1 Android SDK Инструменты: 25.1.3. Операционная система хоста: Windows 7 - i7 2630QM - 8 ГБ. Установлен образ системы Intel x86 Atom.

Независимо от того, какие настройки я изменяю в эмуляторе: эмулируемая производительность, многоядерный процессор, образ x86-64, всегда одно и то же

Это действительно раздражающий поклонник всегда включен

У кого-нибудь было решение этой проблемы?

Ответ 1

Причиной постоянного использования процессора может быть звук. Если вам не нужен звук в эмуляторе, вы можете отключить его, отредактировав файл конфигурации AVD.

Изменить/добавить эти две строки

hw.audioInput=no
hw.audioOutput=no

Обновление: как прокомментировал Buncis, вы можете также попытаться отключить GPS, если не нужно:

hw.GPS = no 

В Linux/Mac файл находится по адресу ~/.android/avd/& lt; AVD_Name & gt;.avd/config.ini
В Windows файл находится по адресу C:\Users\& lt; имя пользователя & gt; \. Android\avd\& lt; AVD_Name & gt;.avd\config.ini

Ответ 2

На Mac я заметил, что эмулятор использовал более 100% процессора после того, как мой ноутбук переспал. Выключение звука выключено, поскольку предложенный Бенджамин не решил эту проблему.

Перезапуск имитируемого устройства путем длительного нажатия кнопки питания на эмуляторе работает для меня.

Ответ 3

Использование x86_64 (или 64-битного) эмулятора решило это для меня. Они рекомендуют версию x86, но она меня устраивала.

Ответ 4

Та же проблема с qemu на Win7, HAXM 7.2.0. Я пытался отключить звук, это не помогло, qemu потребляет около 20% процессорного времени в любое время, Android работает очень медленно на изображениях x86 и x64.

Я нашел решения в файле примечаний к выпуску HAXM:

  • В Windows Avast Antivirus может мешать работе HAXM и приводить к очень медленной работе Android Emulator или QEMU. Чтобы обойти эту проблему, снимите флажок "Использовать вложенную виртуализацию там, где она доступна" в "Параметры Avast"> "Устранение неполадок".

У меня есть Avast Pro Antivirus 18.5. Я отключил этот параметр, перезагрузил компьютер, и теперь qemu потребляет 0% в режиме ожидания, Android работает нормально.

ОБНОВЛЕНИЕ: если QEMU снова начал использовать ЦП, сначала проверьте статус обновления Avast. После фонового обновления Avast может снова начать мешать работе HAXM. Просто перезагрузите Windows, чтобы решить эту проблему.

Ответ 5

У меня была эта проблема в начале ноября 2018 года.

Виртуальное устройство пыталось подключиться к данным мобильной сети, поэтому я отключил его внутри самого устройства. Работайте отлично сейчас.

Ответ 6

Я не смог отключить звук с помощью файла config.ini, но только с аргументом строки -noaudio cmd для qemu. Однако в Android Studio 3.2 вы не можете добавлять пользовательские аргументы в эмулятор, поэтому я сделал это:

В директории эмулятора Android SDK, в моем случае ~/Android/Sdk/emulator/

mv emulator emulator.orig

Создайте bash-скрипт под названием emulator с содержимым:

#!/bin/bash

DIR='dirname "$0"'

$DIR/emulator.orig -noaudio $*

Затем:

chmod +x emulator

Теперь аргумент -noaudio будет добавлен ко всем вызовам эмулятора из Android Studio и сэкономит вам много циклов ЦП.

Ответ 7

Чтобы узнать, что на виртуальном устройстве используется больше всего процессора:

adb shell

$ top

Это покажет вам список процессов с максимальной загрузкой ЦП.

Это поможет вам определить, является ли это процесс (например, ваше приложение) внутри эмулятора, другой процесс внутри эмулятора или просто сама эмуляция с использованием большого количества процессоров.

В последнем случае попробуйте оптимизировать эмулятор, установив HAX (инструкции Native Intel) или, возможно, включите аппаратное ускорение с помощью редактора профилей AVD.

Ответ 8

В моем случае я столкнулся с этой проблемой при запуске нескольких экземпляров эмулятора.

Запустите установщик Intel Accelerated Execution Manager (HAXM), установленный в Android SDK (<Android SDK path>\extras\intel\Hardware_Accelerated_Execution_Manager\intelhaxm-android.exe), выберите Изменить и посмотрите, сколько памяти выделено HAXM. Если это 2 ГБ или меньше, вы, вероятно, захотите поднять его как минимум на 4 ГБ. Затем перезапустите эмулятор и посмотрите, не падает ли загрузка процессора.

Ответ 9

Я уменьшил загрузку процессора моего эмулятора, установив частоту кадров монитора на 60 Гц. Это было на 144 Гц, и мой процессор работал на 60% - 70%. Изменяя только частоту кадров монитора, он теперь использует 3% использования.

Ответ 10

Изменение разрешения работало от меня. Я использовал Oreo 8.1 с разрешением 1440 x 2560 и 560 точек на дюйм. Сейчас я использую M-DPI Oreo 8.1

Ответ 11

Это довольно странно, но удаление внешней оболочки нашего виртуального устройства решило мою проблему. Я не знаю почему, но я рад, что это сделал. 🤫

Ответ 12

Отключить местоположение в настройках, а также отключить звуки касания.

Ответ 13

Обновление:

Я установил плагин Genymotion на genymotion.com/plugins, и он обладает потрясающей производительностью