Настройте аппаратное ускорение для эмулятора Android.

Эмулятор работает лучше всего, если он может использовать аппаратное обеспечение вашего компьютера, такое как процессор, видеокарта и модем, а не работать как чистое программное обеспечение. Возможность использования аппаратного обеспечения вашего компьютера для повышения производительности называется аппаратным ускорением .

Эмулятор может использовать аппаратное ускорение для улучшения вашего опыта двумя основными способами:

  • Графическое ускорение для улучшенной визуализации экрана
  • Ускорение виртуальной машины (ВМ) для повышения скорости выполнения

Аппаратное ускорение включено по умолчанию на большинстве компьютеров. Если на вашем компьютере оно не включено, на этой странице описано, как настроить ускорение графики и виртуальных машин (ВМ) для повышения производительности эмулятора.

Настроить графическое ускорение

Устройства Android используют API OpenGL для встраиваемых систем (OpenGL ES или GLES) и Vulkan для рендеринга графики на экране. Графическое ускорение позволяет использовать аппаратное обеспечение компьютера (обычно графический процессор) для ускорения рендеринга. Хотя аппаратное ускорение рекомендуется для повышения производительности, вам может потребоваться использовать программный режим, если ваш компьютер несовместим из-за поддержки графического драйвера или отсутствия требований к системному изображению.

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

Настройте графическое ускорение в AVD Manager

Чтобы настроить графическое ускорение для AVD, выполните следующие действия:

  1. Откройте диспетчер устройств .
  2. Создайте новый AVD или отредактируйте существующий AVD .
  3. В окне «Конфигурация» найдите раздел «Эмулированная производительность» на вкладке «Дополнительные настройки» .
  4. Выберите значение для параметра «Графическое ускорение» .
  5. Нажмите кнопку Готово .

Настройка графического ускорения из командной строки

Чтобы указать тип графического ускорения при запуске AVD из командной строки, включите опцию -gpu , как показано в следующем примере:

emulator -avd avd_name -gpu mode [{-option [value]} ... ]

Значение mode может быть установлено на одно из следующих значений:

  • auto : разрешить эмулятору выбирать между аппаратным или программным ускорением графики на основе AVD, настроек компьютера и показателей качества.
  • host : использование графического процессора вашего компьютера для аппаратного ускорения. Этот вариант обычно обеспечивает максимальное качество графики и производительность эмулятора и может включить MoltenVK на macOS для ускоренного рендеринга Vulkan. Однако, если у вас возникнут проблемы с эмуляцией графики, вам может потребоваться переключиться на программный рендеринг.
  • swiftshader_indirect : использовать версию SwiftShader , совместимую с Quick Boot, для рендеринга графики с использованием программного ускорения. Этот вариант — хорошая альтернатива host -режиму, если ваш компьютер не поддерживает аппаратное ускорение.

Следующие параметры mode устарели:

  • swiftshader : устарело в версии 27.0.2. Вместо него используйте swiftshader_indirect .
  • angle : устарело в версии 27.0.2. Вместо этого используйте swiftshader_indirect .
  • mesa : устарело в версии 25.3. Вместо него используйте swiftshader_indirect .
  • guest : не рекомендуется для API уровня 28 и выше. Вместо него используйте swiftshader_indirect .
  • angle_indirect : устарело в версии 34.2.14. Вместо него используйте swiftshader_indirect .

Настроить ускорение виртуальной машины

Ускорение виртуальных машин использует процессор вашего компьютера для значительного повышения скорости работы эмулятора. Инструмент, называемый гипервизором, управляет этим взаимодействием, используя расширения виртуализации, предоставляемые процессором вашего компьютера. В этом разделе описаны требования для использования ускорения виртуальных машин и описывается, как настроить ускорение виртуальных машин в каждой операционной системе.

Общие требования

Для использования ускорения виртуальной машины с помощью эмулятора ваш компьютер должен соответствовать общим требованиям, указанным в этом разделе. Также компьютер должен соответствовать другим требованиям, связанным с вашей операционной системой.

Требования к среде разработки

Чтобы использовать ускорение виртуальной машины, ваша среда разработки должна соответствовать следующим требованиям:

  • Инструменты SDK : минимальная версия 17; рекомендуемая версия 26.1.1 или более поздняя
  • AVD : Требуемая версия Android описана в таблице ниже.

    Архитектура ЦП Требования к образу системы
    X86_64 Системные образы x86 или x86_64 для Android 2.3.3 (уровень API 10) и выше
    ARM64 Системные образы arm64-v8a для Android 5.0 (уровень API 21) и выше

Требования к расширению виртуализации

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

  • Процессоры Intel с технологией виртуализации Intel (VT-x, vmx), такие как процессоры Intel Core iX и Intel Core Ultra
  • Процессоры AMD с AMD-V (SVM), такие как процессоры AMD Ryzen
  • Apple Silicon

Дополнительные требования для процессоров Intel и AMD:

Для процессоров Intel и AMD требуется трансляция адресов второго уровня (Intel EPT или AMD RVI). Большинство современных процессоров Intel и AMD поддерживают трансляцию адресов второго уровня. Только процессоры Intel или AMD первого поколения с расширениями виртуализации могут не иметь трансляции страниц второго уровня.

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

Ограничения

Ускорение виртуальной машины имеет следующие ограничения:

  • Эмулятор с ускорением виртуальной машины (ВМ) невозможно запустить внутри другой ВМ, например, на виртуальной машине, размещённой в VirtualBox, VMWare или Docker. Эмулятор с ускорением виртуальной машины необходимо запустить непосредственно на хост-компьютере.
  • В зависимости от вашей операционной системы и гипервизора, запуск программного обеспечения, использующего другую технологию виртуализации, одновременно с эмулятором с ускорением виртуальной машины (ВМ) может быть невозможен. Примерами такого ПО являются, помимо прочего, решения для виртуальных машин, некоторые антивирусные программы и ряд античит-решений. Чаще всего такая ситуация наблюдается в Windows с отключенным Hyper-V. Большинство такого ПО могут без проблем работать с эмулятором Android. Однако в случае возникновения конфликтов рекомендуется не запускать эмулятор с ускорением виртуальной машины (ВМ) одновременно с таким ПО.

О гипервизорах

Для ускорения виртуальной машины требуется гипервизор — инструмент, который использует расширения виртуализации, предоставляемые процессором вашего компьютера.

Без гипервизора и ускорения виртуальной машины эмулятору приходится транслировать машинный код виртуальной машины блок за блоком, чтобы он соответствовал архитектуре хост-компьютера. Этот процесс может быть довольно медленным. С гипервизором, если архитектура виртуальной машины и хост-компьютера совпадают, эмулятор может запускать код непосредственно на процессоре хоста, используя гипервизор. Это улучшение значительно увеличивает как скорость, так и производительность эмулятора.

Выбор подходящего гипервизора зависит от операционной системы и конфигурации вашего компьютера. Подробнее см. в одном из следующих разделов:

Проверьте, установлен ли гипервизор

Вы можете использовать параметр командной строки эмулятора -accel-check чтобы проверить, установлен ли на вашем компьютере гипервизор.

В следующих примерах показано, как использовать опцию accel-check в эмуляторе. В каждом примере Sdk — это местоположение Android SDK:

Окна:

c:\Users\janedoe\AppData\Local\Android> Sdk\emulator\emulator -accel-check
accel:
0
WHPX(10.0.22631) is installed and usable.
accel
В Windows доступно несколько вариантов гипервизоров. Поэтому то, что вы видите, может отличаться от приведенного здесь примера. Например, в сообщении может встречаться одно из следующих ключевых слов: AEHD , GVM (прежнее название AEHD).

macOS:

janedoe-macbookpro:Android janedoe$ ./Sdk/emulator/emulator -accel-check
accel:
0
Hypervisor.Framework OS X Version 13.2
accel

Линукс:

janedoe:~/Android$ ./Sdk/emulator/emulator -accel-check
accel:
0
KVM (version 12) is installed and usable.

Настройте ускорение виртуальной машины в Windows

Ускорение виртуальных машин в Windows может использовать один из двух гипервизоров:

  • Платформа гипервизора Windows (WHPX)
  • Драйвер гипервизора эмулятора Android (AEHD)

Платформа Windows Hypervisor использует гипервизор Hyper-V, поставляемый вместе с Windows, и обеспечивает наилучшую совместимость и снижение нестабильности. По возможности следует использовать WHPX .

Если ваша система не поддерживает WHPX или у вас есть другие опасения по поводу его использования, вы можете использовать драйвер гипервизора эмулятора Android .

Настройка ускорения виртуальной машины с использованием платформы Windows Hypervisor

Прежде чем вы сможете включить WHPX, ваш компьютер должен соответствовать следующим требованиям:

  • Процессоры Intel: поддержка технологий виртуализации (VT-x), расширенных таблиц страниц (EPT) и функций неограниченного гостевого режима (UG). VT-x необходимо включить в настройках BIOS вашего компьютера.
  • Процессоры AMD: рекомендуется процессор AMD Ryzen. Виртуализация или SVM должны быть включены в настройках BIOS вашего компьютера.
  • Android Studio 3.2 Beta 1 или выше
  • Эмулятор Android версии 27.3.8 или выше
  • Windows 10 или выше

Чтобы установить WHPX в Windows, выполните следующие действия:

  1. На рабочем столе Windows щелкните значок Windows, чтобы открыть меню «Пуск».
  2. Используя строку поиска, введите Включение или выключение компонентов Windows .

    Должна появиться панель управления «Включение и выключение компонентов Windows» , которую можно выбрать.

  3. Нажмите клавишу Enter или щелкните Включение или выключение компонентов Windows , чтобы запустить панель управления.

  4. Установите флажок рядом с пунктом «Платформа гипервизора Windows» .

  5. Нажмите ОК .

  6. После завершения установки перезагрузите компьютер.

Настройте ускорение виртуальной машины с помощью драйвера гипервизора эмулятора Android (AEHD) в Windows

Прежде чем вы сможете установить и использовать драйвер гипервизора Android Emulator, ваш компьютер должен соответствовать следующим требованиям:

  • Процессоры Intel или AMD с расширением виртуализации.
  • 64-битная Windows 11 или Windows 10 (32-битная Windows не поддерживается)

    Пользователи Windows 8.1, Windows 8 и Windows 7 могут продолжать использовать AEHD 1.7 или более ранние версии. Однако поддержка для таких сценариев предоставляться не будет.

  • Функции, которые также используют гипервизор Windows Hyper-V, должны быть отключены в диалоговом окне «Функции Windows».

    Некоторые компоненты Windows также активируют и используют гипервизор Windows Hyper-V, даже если платформа гипервизора Windows не выбрана в диалоговом окне «Компоненты Windows». К ним относятся функции безопасности, такие как Hyper-V , изоляция ядра и другие. (Обратите внимание, что функция Hyper-V — это НЕ то же самое, что гипервизор Hyper-V.) Если вам нужны эти функции, используйте WHPX .

На процессорах AMD драйвер гипервизора Android Emulator можно установить через SDK Manager в Android Studio 4.0 Canary 5 или более поздней версии.

На процессорах Intel драйвер гипервизора Android Emulator можно установить через SDK Manager в Android Studio Flamingo или более поздней версии.

Для установки из SDK Manager выполните следующие действия:

  1. Выберите Инструменты > Менеджер SDK.
  2. Откройте вкладку «Инструменты SDK» и выберите драйвер гипервизора эмулятора Android .
  3. Нажмите «ОК» , чтобы загрузить и установить драйвер гипервизора Android Emulator.
  4. После установки убедитесь, что драйвер работает правильно, с помощью следующей команды командной строки:

    AEHD 2.1 и выше

    sc query aehd
    

    Сообщение о статусе содержит следующую информацию:

    SERVICE_NAME: aehd
           ...
           STATE              : 4  RUNNING
           ...
    

    Следующее сообщение об ошибке означает, что либо расширение виртуализации не включено в BIOS, либо Hyper-V не отключен:

    SERVICE_NAME: aehd
           ...
           STATE              : 1  STOPPED
           WIN32_EXIT_CODE    : 4294967201 (0xffffffa1)
           ...
    

    AEHD 2.0 и ниже

    sc query gvm
    

    Сообщение о статусе содержит следующую информацию:

    SERVICE_NAME: gvm
           ...
           STATE              : 4  RUNNING
           ...
    

    Следующее сообщение об ошибке означает, что либо расширение виртуализации не включено в BIOS, либо Hyper-V не отключен:

    SERVICE_NAME: gvm
           ...
           STATE              : 1  STOPPED
           WIN32_EXIT_CODE    : 4294967201 (0xffffffa1)
           ...
    

Драйвер гипервизора Android Emulator также можно скачать и установить с GitHub . После распаковки пакета драйвера запустите silent_install.bat в командной строке с правами администратора.

Удалите драйвер гипервизора Android Emulator, выполнив следующие команды в командной строке с правами администратора:

AEHD 2.1 и выше

   sc stop aehd
   sc delete aehd

AEHD 2.0 и ниже

   sc stop gvm
   sc delete gvm

Настройка ускорения виртуальной машины на macOS

В macOS эмулятор Android использует встроенный Hypervisor.Framework , для которого требуется macOS версии 10.10 (Yosemite) и выше. Однако для Android Studio может потребоваться более высокая версия. В таких случаях следуйте системным требованиям Android Studio.

Настройка ускорения виртуальной машины в Linux

Системы на базе Linux поддерживают ускорение виртуальных машин с помощью программного пакета KVM . Следуйте инструкциям по установке KVM в вашей системе Linux, а затем убедитесь, что KVM включён. Для систем Ubuntu см. раздел Установка Ubuntu KVM .

Требования

Для запуска KVM требуются определённые права пользователя. Убедитесь, что у вас есть достаточные права, указанные в инструкциях по установке KVM.

Чтобы использовать ускорение виртуальной машины в Linux, ваш компьютер также должен соответствовать следующим требованиям:

  • Для процессоров Intel: включена поддержка технологии виртуализации (VT-x), функций Intel EM64T (Intel 64) и функциональности Execute Disable (XD) Bit.
  • Для процессоров AMD: поддержка виртуализации AMD (AMD-V).

Проверьте, установлен ли KVM в Linux

Вы можете использовать параметр командной строки эмулятора -accel-check , чтобы проверить, установлен ли KVM. Также можно установить пакет cpu-checker содержащий команду kvm-ok .

В следующем примере показано, как использовать команду kvm-ok :

  1. Установите пакет cpu-checker :

    sudo apt-get install cpu-checker
    egrep -c '(vmx|svm)' /proc/cpuinfo
    

    Значение 1 или больше означает, что виртуализация поддерживается. Значение 0 означает, что ваш процессор не поддерживает аппаратную виртуализацию.

  2. Выполните команду kvm-ok :

    sudo kvm-ok
    

    Ожидаемый результат:

    INFO: /dev/kvm exists
    KVM acceleration can be used
    

    Если вы получили следующую ошибку, это означает, что вы по-прежнему можете запускать виртуальные машины. Однако без расширений KVM виртуальная машина работает медленнее.

    INFO: Your CPU does not support KVM extensions
    KVM acceleration can NOT be used
    

Установить KVM на Linux

Для установки KVM используйте следующую команду:

Cosmic (18.10) или более поздняя версия:

sudo apt-get install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils

Lucid (10.04) или более поздняя версия:

sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils

Кармический (9.10) или более ранний:

sudo aptitude install kvm libvirt-bin ubuntu-vm-builder bridge-utils

Руководство по удалению Intel HAXM

HAXM уже давно не поддерживается (01/2023), так как Intel прекратила разработку HAXM .

Начиная с версии 36.2.xx, эмулятор Android больше не использует HAXM. Если вы использовали его ранее, вам потребуется установить новый драйвер гипервизора. Мы рекомендуем использовать платформу гипервизора Windows ( WHPX ) от Microsoft.

Рекомендуется полностью удалить Intel HAXM из вашей системы Windows, если только у вас не установлено другое программное обеспечение, зависящее от HAXM, и вы не решите сохранить Intel HAXM и управлять им самостоятельно.

Чтобы удалить Intel HAXM, выполните следующие действия:

Проверьте, установлен ли Intel HAXM

Чтобы определить, установлен ли Intel HAXM в вашей системе Windows, откройте командную консоль Windows и выполните следующую команду:

   sc query intelhaxm

Если Intel HAXM установлен и запущен, в выводе команды вы увидите следующее сообщение.

Если Intel HAXM установлен, но отключен, в выводе команды вы увидите следующее сообщение.

В обоих случаях, независимо от того, запущен ли Intel HAXM или отключен, он установлен. Чтобы продолжить удаление Intel HAXM, перейдите к следующему шагу .

Если Intel HAXM не установлен, вы увидите следующее сообщение.

Удалите Intel HAXM с помощью SDK manager из Android Studio.

Если вы ранее устанавливали HAXM с помощью SDK Manager, модуль всё ещё должен быть указан на вкладке «SDK Tools». Откройте SDK Manager из Android Studio, перейдите на вкладку «SDK Tools» и найдите строку «Intel x86 Emulator Accelerator (HAXM installer) — Deprecated». Должно выглядеть так, как показано на снимке экрана ниже.

Снимите флажок, как показано на следующем снимке экрана.

Нажмите кнопку «Применить», и должно появиться следующее диалоговое окно.

После успешного удаления Intel HAXM вы увидите следующее. Удаление завершено, и вы можете остановиться здесь .

В случае возникновения ошибок перейдите к следующему шагу .

Удалите Intel HAXM с помощью «параметров» Windows.

Откройте «Параметры» Windows и перейдите в раздел «Приложения > Установленные приложения».

Найдите запись «Intel Hardware Accelerated Execution Manager» и нажмите «Удалить», как показано на следующем снимке экрана.

Программа удаления Intel HAXM должна запуститься и сообщить о результатах. Если удаление прошло успешно, перейдите к разделу «Удаление пакета установщика Intel HAXM» . В противном случае перейдите к следующему шагу .

Удаление с помощью командной строки

  1. Остановите службу Intel HAXM, выполнив команду sc stop intelhaxm. Вы должны увидеть следующий вывод.

  2. Удалите службу Intel HAXM, выполнив команду sc delete intelhaxm. Вы должны увидеть следующий вывод.

  3. Перейти к удалению установочного пакета Intel HAXM .

Удалить установочный пакет Intel HAXM.

Этот шаг требуется только при удалении Intel HAXM через «Параметры» Windows или командную строку. Без этого шага менеджер SDK Android Studio может по-прежнему отображать Intel HAXM как «Установленный».

Установочный пакет находится в папке <Ваша папка Android SDK>\extras\intel. По умолчанию Android SDK устанавливается в папку "C:\Users\<Ваш идентификатор пользователя Windows>\AppData\Local\Android\Sdk". См. пример на снимке экрана ниже.