Как лучше настроить эмулятор

Как ускорить эмулятор Android на 400%

Последние несколько месяцев я работал над SDK для Android, входящим в платформу управления контентом Nuxeo. Особенно много работы было в последнее время, с приближением официального релиза SDK. Я хочу поделиться несколькими практическими советами по поводу разработки под Android, в частности тестирования и эмуляции. Уже после нескольких дней разработки я понял, что работа с эмулятором Android — не сахар, потому что он чудовищно медленный.

Начнём с того что он медленно запускается, но даже если использовать для ускорения запуска снапшот состояния, выполнение кода все равно происходит медленно, особенно в режиме отладки.

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

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

Эмуляция против симуляции

Я не разрабатываю софт под платформы от Apple, но похоже что у симулятора iPhone нет таких проблем с производительностью, как у эмулятора Android.

Одна из причин состоит в том что он работает не как «настоящий симулятор», т.к. инструкции CPU, используемые в симуляторе iPhone такие же, как у компьютера, на котором запущен симулятор (x86).

Android, с другой стороны, вынужден эмулировать настоящий процессор архитектуры ARM поверх процессора x86. Это добавляет довольно значительный оверхед в плане производительности.

По крайней мере для демонстрации приложения мне ни к чему эмулировать ARM, мне нужна только возможность запустить Android и моё приложение.

Android_x86

К счастью, существует open source проект по портированию Android на процессоры x86: http://www.android-x86.org/.

В проекте есть несколько образов для скачивания, и хотя они не успевают за всеми официальными релизами Android SDK, они предоставляют загрузочный образ Android 2.3, который меня и заинтересовал.

Настройка Android_x86 внутри VirtualBox

Первый шаг: загрузить ISO-образ Android_x86. Я использовал android-x86-2.3-RC1-eeepc.iso , который может быть загружен с http://www.android-x86.org/download.

Следующий шаг: создание виртуальной машины, способной запускать этот образ.

Я использовал VirtualBox, но слышал что QEmu тоже неплохо подходит.

Итак, в VirtualBox необходимо создать новую машину:

  • целевая OS: choose Linux
  • версия целевой OS: другая
  • Я использовал 1GB RAM и 1 CPU (остальные настройки оставил по умолчанию)
  • добавить жёсткий диск: VDI drive, динамический размер, 512 Mio
  • добавить CDROM, в который загружен скачанный ISO

В загрузочном меню выбираем установку на жёсткий диск:

В процессе установки придётся сделать следующее:

  • создать новый раздел на жёстком диске
  • отформатировать его в ext3
  • выбрать этот раздел для инсталляции Android

Когда установка завершится:

  • выключить виртуальную машину
  • удалить устройство CDROM, указывающее на ISO образ (в окне конфигурации VirtualBox)

Загружаем виртуальную машину: у Вас теперь есть работающий образ Android x86.

Но так как по умолчанию он сконфигурирован для Eee PC, это не идеальный вариант для тестирования приложений, предназначенных для экрана смартфона.

Теперь нам необходимо изменить конфигурацию под экран телефона.

Выключаем VM и VirtualBox.

Первый шаг: создать новые режимы разрешения. Я определил 3 режима:

Здесь Android2.3 это имя созданной виртуальной машины.

Теперь, когда мы объявили новые режимы, необходимо их использовать. Для этого придётся изменить параметры ядра.

Чтобы это сделать, необходимо перезапустить виртуальную машину и в мню загрузки выбрать Debug mode, чтобы Android загрузился с командной строкой.

Читайте также:  Как починить ведро оцинкованное

Запускаем виртуальную машину.

Когда она запустится, мы перемонтируем загрузочный раздел в read/write, чтобы можно было изменять конфигурацию Grub.

После этого можно будет редактировать файл menu.lst.

Теперь дублируем первый пункт меню (3 строки) и редактируем параметры ядра (первую запись «title» и две следующих строки).

Параметры по умолчанию таковы:

Параметры, которые я использовал:

Название впишите какое понравится.

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

Сохраните свой menu.lst (:wq) и перезапустите виртуальную машину используя меню VirtualBox.

Теперь можно будет запустить виртуальную машину Android, которая будет выглядеть как телефон.

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

  • Если не видите мышь на экране Android, используйте меню VirtualBox чтобы выключить mouse integration (кнопка Host+I).
  • Кнопка Windows соответствует кнопке Home в Android.
  • Esc соответствует кнопке «назад» в Android
  • F2 соответствует кнопке Menu
  • F3 соответствует кнопке поиска
  • Alt+F1 — переключение в консольный режим
  • Alt+F7 — переключение в режим GUI

Соединение виртуальной машины Android, AVD и Eclipse

Целью была возможность использовать новую виртуальную машину из Eclispe для тестирования и отладки приложений. Чтобы это сработало, нудно настроить сетевое соединение между основной операционной системой (где работает Eclipse) и гостевой VM. Для этого в VirtualBox есть несколько настроек в Network settings:

  • use bridge mode: он должен работать но для него может потребоваться запуск DHCP в основной ОС
  • host only network: создаёт виртуальную сеть между основной и гостевой машинами; это самый простой в использовании вариант

Когда сеть будет настроена, перезапустите виртуальную машину, войдите в режим командной строки (Alt+F1) и введите:

Это выведет текущий IP виртуальной машины. Обычно это будет что то вроде 192.168.56.101 для гостевой машины, основная получает адрес 192.168.56.1.

На основной машине открываем командную строку, переходим в директорию platform-tools для Android:

Это зарегистрирует виртуальную машину в качестве нового устройства:

Теперь можно запускать и отлаживать Ваше приложение прямо из Eclipse.

Как видите, прирост скорости весьма заметный:

  • Запуск VM занимает 2 секунды вместо 30
  • Приложения запускаются очень быстро, даже в режиме отладки (нет тормозов, присущих эмулятору ARM)

Добавляем SD карту

Используем файл в качестве SD карты

Из командной строки Android:

Теперь перезапускаем VM в режиме отладки, перемонтируем раздел в режиме чтение+запись и редактируем menu.lst чтобы добавить один параметр ядра:

Используем отдельный раздел

Здесь потребуется чуть больше работы.

Для начала придётся создать новый жёсткий диск в VirtualBox и подключить его к виртуальной машине.

Теперь запускаем машину в режиме отладки. Используем fdisk чтобы создать раздел. Когда раздел создан, надо его отформатировать:

Теперь редактируем menu.lst и добавляем параметр:

Впечатления от использования Android_x86 в качестве окружения для тестирования

Использование

Пока виртуальная машина работает как ожидалось, и кроме скорости различий особых я не заметил. Все проекты Android установились правильно. Примеры проектов из SDK собираются и работают нормально.

Единственный заметный глюк: приложение галереи (Cooliris) сломано, я пробовал с последней ночной сборкой образа — стало немного лучше, но проблемы всё равно остаются.

Ещё одна странность: примерно в 10% случаев виртуальная машина не загружается и её приходится перезагружать. Так как загрузка происходит очень быстро, это не особо мешает, но я всё равно постараюсь понять в чём тут дело.

Скорость

Тут различия видны невооружённым глазом.

Вот немного цифр, чтобы было понятнее насколько всё ускорилось:

Эмулятор Android на ARM работает примерно наполовину медленнее чем Nexus One, а Android x86 — примерно в два раза быстрее.

Источник

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

Предыстория

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

Потом занялся разработкой под 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!”.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Источник

Как заставить эмуляторы работать быстрее на ПК с Windows

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

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

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

Чтобы ускорить работу эмуляторов на ПК с Windows, есть несколько советов и приемов, которые вы можете попробовать, и некоторые из этих советов мы изложили в этой статье.

Заставьте эмуляторы работать быстрее за 4 простых шага:

  1. Проверьте спецификации системы
  2. Уменьшить разрешение
  3. Поднимите видеокарты
  4. Отключите избыточные приложения и процессы, чтобы освободить память

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

1. Проверьте технические характеристики системы

Эмуляторы – это мощные двигатели, которые требуют высоких системных характеристик для работы с оптимальной мощностью. По сути, такие компоненты, как процессор, графический процессор, ПЗУ, ОЗУ и тому подобное, должны быть на высшем уровне, если вы хотите, чтобы эмуляторы работали на вашем ПК с оптимальной скоростью.

Читайте также:  Как определить что не работает коммутатор

Удачно поставленные высокопроизводительные ПК с Windows 10 (64-разрядной), усовершенствованным процессором AMD или Intel (octa-core), 8 ГБ ОЗУ и высокопроизводительной настройкой графического процессора (с поддержкой OpenGL 2.0 и выше), помимо прочего, будут обычно работают лучше с эмуляторами, чем ПК с более низкими характеристиками.

Таким образом, если у вас компьютер с низкой спецификацией, лучшим решением может быть обновление/обновление вашего компьютера.

  • ЧИТАЙТЕ ТАКЖЕ . Какой эмулятор Android лучше всего подходит для игр на ПК?

2. Уменьшить разрешение

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

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

  1. Перейдите в меню настроек и выберите Плагин/BIOS .
  2. На вкладке Плагин нажмите значок Настроить рядом с раскрывающимся меню GS .
  3. Следуйте инструкциям на экране, чтобы уменьшить разрешение.
  4. Перезагрузите компьютер.
  5. После этого ваши эмуляторы должны работать с повышенной скоростью.

Этот метод лучше всего подходит для эмуляторов игровых приставок, таких как PCSX2, PPSSPP и ePSXe.

3. Увеличить видеокарты

Как подчеркивалось ранее, большинству эмуляторов для нормальной работы требуется стандартная настройка графического процессора. Следовательно, вы можете ускорить работу эмуляторов на ПК с Windows, улучшив производительность видеокарт вашей системы. Для этого просто следуйте пошаговой инструкции ниже:

NVIDIA:

  1. Щелкните правой кнопкой мыши на рабочем столе вашего компьютера.
  2. Выберите NVIDIA Control Panel из контекстного меню.
  3. Нажмите Управление настройками 3D .
  4. Перейдите в Глобальные настройки.

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

Благодаря этому производительность NVIDIA будет повышена.

  • ЧИТАЙТЕ ТАКЖЕ : 5 эмуляторов для запуска игры Epic Seven на ПК с Windows

AMD:

  1. На рабочем столе нажмите кнопку «Пуск».
  2. Выберите Программы .
  3. В разделе Программы перейдите в Центр управления Catalyst и нажмите на него.
  4. Найдите и выберите Мощность .
  5. В разделе Power нажмите Параметры приложения с переключаемой графикой .
  6. Найдите эмуляторы на вашем компьютере.
  7. Установите для каждого эмулятора значение Высокая производительность .
  8. Перезагрузите компьютер.

Если вышеуказанные шаги будут выполнены соответствующим образом, видеокарты вашего ПК будут улучшены. Следовательно, это приведет к улучшению скорости/производительности эмулятора.

4.Отключите избыточные приложения и процессы, чтобы освободить память

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

Следовательно, чтобы ускорить работу ваших эмуляторов в этом случае, вам может потребоваться освободить часть памяти в вашей системе. И единственный способ сделать это – «убить» или отключить некоторые из запущенных приложений/процессов.

Для этого просто следуйте инструкциям ниже:

  1. В окне рабочего стола вашей системы нажмите Пуск.
  2. Найдите и выберите Выполнить или просто нажмите клавишу Windows + клавиши R , чтобы открыть диалоговое окно запуска.
  3. Введите msconfig в поле.
  4. Перейдите на вкладку «Службы», чтобы открыть все запущенные приложения и процессы.
  5. Убейте или отключите избыточные процессы или приложения (это могут быть антивирусные программы или эмуляторы, не являющиеся необходимыми).
  6. Отключение этих программ/процессов позволяет выделять больше ресурсов оставшимся процессам, что повышает их производительность.

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

Есть и другие заметные хитрости, хитрости и решения, которые можно использовать для повышения скорости работы эмуляторов на ПК. Некоторые из них влекут за собой включение VT – Virtual Technology – в BIOS и отключение окна отладки среди других.

В любом случае вышеперечисленные приемы, если они правильно реализованы, повысят скорость работы всех (или некоторых) эмуляторов на вашем ПК.

Источник

Оцените статью