Продуктивність Android емулятора на Linux


2

Я встановив плагін Android SDK та eclipse на свій ноутбук, але з подивом дізнався, що емулятор з’їдає 100% одного з моїх процесорних ядер. У мене точно такі ж налаштування на настільній машині, що не має цієї проблеми. На обох комп'ютерах працює арка linux, і обидва були оновлені вчора.

Звичайно, на робочому столі є краще обладнання, ніж ноутбук, але я сподівався наблизитись до 50% використання процесора, ніж 100% на ноутбуці.

Обидва віртуальних пристрою Android мають однакові характеристики:

CPU: ARM
Target: Android 2.3.3 - API Level 10
Skin: WVGA800
SD Card: 512M
hw.lcd.density: 240
vm.heapSize: 24
hw.ramSize: 256

Хост ноутбука має Intel Core 2 T7200 @ 2 ГГц процесор з 2 Гб оперативної пам’яті.
Хост на робочому столі має AMD Phenom II X4 940 при частоті 3 ГГц з 8 Гб оперативної пам’яті.

Емулятор Android використовує лише 1 ядро, і ось результати використання процесора:
Ноутбук:

Cpu0  : 22.8%us, 76.5%sy,  0.0%ni,  0.3%id,  0.0%wa,  0.0%hi,  0.3%si,  0.0%st
Cpu1  : 11.2%us,  2.4%sy,  0.0%ni, 86.4%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   2055484k total,  1860304k used,   195180k free,     5276k buffers
Swap:  2000088k total,   106872k used,  1893216k free,   350780k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                       
 2026 xyz       20   0  396m 207m 7192 R  100 10.3   4:11.58 emulator-arm    

Настільний:

Cpu0  :  0.7%us,  0.0%sy,  0.0%ni, 99.3%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu1  :  1.3%us,  0.0%sy,  0.0%ni, 98.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu2  :  5.0%us,  1.3%sy,  0.0%ni, 91.9%id,  1.7%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu3  :  0.3%us,  0.3%sy,  0.0%ni, 99.3%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   7666324k total,  6506808k used,  1159516k free,  1650960k buffers
Swap:  8988348k total,        0k used,  8988348k free,  2867300k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                            
 2811 xyz       20   0  392m 220m 6276 S    8  2.9   0:33.58 emulator-arm     

Чи можна покращити продуктивність емулятора на ноутбуці?

[ОНОВЛЕННЯ] Я запускав емулятор з тими ж налаштуваннями, на тому ж ноутбуці під Win7, і після запуску він не використовував 100% ядра процесора на відміну від Linux. Крім того, я спробував запустити емулятор з терміналу в Linux, і це повідомлення я отримую, коли не отримую його під настільним хостом Linux:

Не вдалося налаштувати '/ dev / hpet', щоб мати таймер 1024 Гц. Це не фатальна помилка, але для кращої точності емуляції: 'echo 1024> / proc / sys / dev / hpet / max-user-freq' як корінь.

Я не дуже знайомий з rtc або hpet, але не здається, що параметр max-user-freq робить щось, я все одно отримую те саме попередження.

Відповіді:


1

Ваш процесор AMD, швидше за все, перемагає Intel, ніж ви думаєте. Ви можете спробувати емуляцію меншого розміру дисплея під час роботи на ноутбуці, або ви можете розглянути можливість дистанційного запуску емулятора на робочому столі, використовуючи NX або подібні.

Є також x86 порти Android, які нібито працюють набагато швидше (враховуючи, що вони працюють у віртуальній машині, а не імітуються), але я не маю жодного досвіду використання ними.


Це здається не проблемою з процесором, а швидше ядром або системним. Емулятор на тому ж процесорі не завжди використовує 100% процесор під Win7
Rado

1

Існує багато способів підвищення продуктивності емулятора андроїда. Перший і найпростіший спосіб - збільшити оперативну пам’ять, а також включити знімок

Знімок Android AVD

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

Але найефективнішим методом є завантаження зображення Intel x86. Якщо ваш процесор підтримує віртуалізацію (VT), то встановіть Intel HAXM теж, продуктивність буде значно збільшена.

Зображення для Android Intel x86

Ви також можете спробувати Android x86 (навчальний посібник тут ) у віртуальній машині та використовувати adb connect IPтакі команди, як налагодження в реальному пристрої через wifi.

adb connect

термін adb connect

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.