[Из песочницы] История о том, как запустить эмулятор Android или сэкономить на процессоре intel

Здравствуйте! Хочу поделиться решением одной проблемы. Как запустить эмулятор на amd-шном процессоре на Windows 10, используя WHPX.

Предыстория


Я собрал года 4 назад домашний комп, который подходил всем моим запросам. На процессоре решил сэкономить — взял amd. К компу вопросов нет.

pz9h1cseohy9qch5y7q3gia7ubu.png

Потом занялся разработкой под Android и тут меня ждал сюрприз! Эмулятор запускался только на процессоре intel. Его можно было запустить без аппаратной виртуализации конечно, используя вот этот совет www.youtube.com/watch? v=QTbjdBPKnnw&t=127s, но кто пользовался знает, что эмулятор может запускаться очень долго. У меня с 12ГБ доходило до 10 мин. Это может конечно из-за встроенной видеокарты.

Основное рабочее место у меня было в офисе, поэтому особо переживал и тестировал дома на реальных устройствах. Но пару месяцев назад стал нужен именно эмулятор. Первой мыслью было конечно купить intel-овский процессор. Но нужно было покупать ещё материнскую плату и видеокарту. Скорее всего я бы так и поступил, если бы не наткнулся на обновлённые требования к системе. В требованиях написано, что эмулятор всё таки можно запустить на Windows 10 (с обновлениями после апреля 2018) с помощью технологии WHPX.

Теперь основная часть истории, как это сделать. Всё оказалось не так тривиально. Заранее прошу прощения за упущения, потому что не могу назвать себя знатоком ни в «железе», ни в Windows.

Инструкция


После всех обновлений эмулятор естественно не запустился. AndroidStudio пыталась запустить эмулятор с помощью HAXM и выбрасывала ошибку «Emulator: emulator: ERROR: x86 emulation currently requires hardware acceleration!».

Далее приведу инструкцию с ссылками упустив кучу подробностей и моих «танцев с бубном».

Скачиваем утилиты и проверяем поддерживает ли процессор hyper-v.

Должен поддерживать для работы с аппаратной виртуализацией.

2. Обновляем Windows 10 до версии 1803 (апрель 2018):

kbjrviw2_4evbg4hwjlt1he8_ei.png

3. Удаляем HAXM:

x5x5wb-8ruxvjy_cy-360_jh82e.png

4. Включаем в bios режим виртуализации. Он там может называеться IOMMU, а не VT.

yzp335xfvpkich03cy6simyu8_m.png

5. Качаем обновления для bios с официального сайта. Для моего asus, например, они были здесь.

6. Обновляем bios по инструкции типа этой.

Версия Bios должна стать что-то около 3001:

h6yoppbduyyve5odc9i-mepv4x8.png

7. Заходим на сайт microsoft и изучаем инструкцию для включения компонента.

8. Нужно проверить требования Hyper-V. Для этого в командной строке набираем systeminfo. Проверяем, чтобы отображались эти значения:

0kp5k4sqebyfmkftclfwopby4gm.png

У меня же вместо это было сообщение:

785cy86tknvxf2sjvp6zk5of_pq.png

На официальном сайте написано, что пока не будет стоять Yes-Yes-Yes-Yes система WHPX не будет работать. У меня же эмулятор запускается, при включенной низкоуровневой оболочке.

9. Далее в руководстве предлагается включить компонент hyper-v (он по умолчанию отключен):

bx1uj91bpehzwutgexcih1gqk2s.png

В русском переводе наименования несколько отличаются:

6sv5okhgdybckjh0ls9vbe6r0su.png

Кстати, после отключения компонента «Платформа низкоуровневой оболочки Windows», «Требования hyper-v» становятся Yes-Yes-Yes-Yes. Не понял этот момент. Если кто разбирается, напишите в комментариях.

10. Определяем, нужно ли нам всё это? Или легче было купить intel)

После этих настроек всё должно заработать:

crx9cnugopk_oearbhz3dhv1hq0.png

Хочу отметить, используя технологию WHPX и процессор amd, запуск эмулятора занимает примерно столько же времени, сколько на процессоре intel. Учитывая, что остальное «железо» сравнимо по своим параметрам.

© Habrahabr.ru