Emulator akan berjalan optimal jika dapat menggunakan hardware komputer Anda, seperti CPU, GPU, dan modem, bukan berjalan sebagai software murni. Kemampuan untuk menggunakan hardware komputer Anda guna meningkatkan performa disebut akselerasi hardware.
Emulator dapat menggunakan akselerasi hardware untuk meningkatkan pengalaman Anda dengan dua cara utama:
- Akselerasi grafis untuk rendering layar yang lebih baik
- Akselerasi mesin virtual (VM) untuk kecepatan eksekusi yang lebih baik
Akselerasi hardware diaktifkan secara default pada sebagian besar komputer. Jika tidak diaktifkan di komputer Anda, halaman ini akan menjelaskan cara mengonfigurasi akselerasi grafis dan mesin virtual (VM) untuk mendapatkan performa yang lebih tinggi dari emulator.
Mengonfigurasi akselerasi grafis
Perangkat Android menggunakan OpenGL for Embedded Systems (OpenGL ES atau GLES) dan Vulkan API untuk merender grafis di layar. Akselerasi grafis memungkinkan penggunaan hardware komputer Anda (biasanya GPU) untuk mempercepat proses rendering. Meskipun akselerasi hardware direkomendasikan untuk performa, Anda mungkin perlu menggunakan mode software jika komputer tidak kompatibel karena dukungan driver grafis atau persyaratan image sistem tidak ada.
Saat membuat Perangkat Virtual Android (AVD) di AVD Manager, Anda dapat menentukan apakah emulator menggunakan rendering hardware atau software. Dalam mode otomatis, emulator memutuskan apakah akan menggunakan akselerasi grafis hardware atau software berdasarkan komputer Anda. Anda juga dapat mengganti setelan jika memulai emulator dari command line.
Mengonfigurasi akselerasi grafis di AVD Manager
Untuk mengonfigurasi akselerasi grafis untuk AVD, ikuti langkah-langkah ini:
- Buka Device Manager.
- Buat AVD baru atau edit AVD yang ada.
- Di jendela Configuration, temukan bagian Emulated Performance pada tab Additional Settings.
- Pilih nilai untuk opsi Akselerasi grafis.
- Klik Finish.
Mengonfigurasi akselerasi grafis dari command line
Untuk menentukan jenis akselerasi grafis saat menjalankan AVD dari command
line, sertakan opsi -gpu
, seperti ditunjukkan pada contoh berikut:
emulator -avd avd_name -gpu mode [{-option [value]} ... ]
Nilai mode
dapat disetel ke salah satu opsi berikut:
auto
: Memungkinkan emulator memilih antara akselerasi grafis hardware atau software berdasarkan AVD, penyiapan komputer, dan metrik kualitas.host
: Menggunakan GPU di komputer Anda untuk akselerasi hardware. Opsi ini biasanya memberikan kualitas dan performa grafis tertinggi untuk emulator dan dapat mengaktifkan MoltenVK di macOS untuk mempercepat rendering Vulkan. Namun, jika mengalami masalah dengan emulasi grafis, Anda mungkin perlu beralih ke rendering software.swiftshader_indirect
: Menggunakan varian SwiftShader yang kompatibel dengan Quick Boot untuk merender grafis menggunakan akselerasi software. Opsi ini adalah alternatif yang baik untuk modehost
jika komputer Anda tidak dapat menggunakan akselerasi hardware.
Opsi mode
berikut tidak lagi digunakan:
swiftshader
: Tidak digunakan lagi di versi 27.0.2. Sebagai gantinya, gunakanswiftshader_indirect
.angle
: Tidak digunakan lagi di versi 27.0.2. Sebagai gantinya, gunakanswiftshader_indirect
.mesa
: Tidak digunakan lagi di versi 25.3. Sebagai gantinya, gunakanswiftshader_indirect
.guest
: Tidak digunakan lagi untuk level API 28 dan yang lebih baru. Sebagai gantinya, gunakanswiftshader_indirect
.angle_indirect
: Tidak digunakan lagi di versi 34.2.14. Sebagai gantinya, gunakanswiftshader_indirect
.
Mengonfigurasi akselerasi VM
Akselerasi VM menggunakan prosesor komputer Anda untuk meningkatkan kecepatan eksekusi emulator secara signifikan. Alat yang disebut hypervisor mengelola interaksi ini dengan ekstensi virtualisasi yang disediakan oleh prosesor komputer Anda. Bagian ini menguraikan persyaratan penggunaan akselerasi VM dan menjelaskan cara menyiapkan akselerasi VM pada setiap sistem operasi.
Persyaratan umum
Untuk menggunakan akselerasi VM dengan emulator, komputer Anda harus memenuhi persyaratan umum di bagian ini. Komputer Anda juga harus memenuhi persyaratan lain yang khusus untuk sistem operasi Anda.
Persyaratan lingkungan pengembangan
Untuk menggunakan akselerasi VM, lingkungan pengembangan Anda harus memenuhi persyaratan berikut:
- SDK Tools: Minimum versi 17; direkomendasikan versi 26.1.1 atau yang lebih baru
AVD: Versi Android yang diperlukan dijelaskan dalam tabel berikut.
Arsitektur CPU Persyaratan Image Sistem X86_64 Image sistem x86 atau x86_64 untuk Android 2.3.3 (level API 10) dan yang lebih tinggi ARM64 Image sistem arm64-v8a untuk Android 5.0 (level API 21) dan yang lebih tinggi
Persyaratan ekstensi virtualisasi
Selain persyaratan lingkungan pengembangan, prosesor komputer Anda harus mendukung ekstensi virtualisasi. Prosesor yang didukung adalah:
- Prosesor Intel dengan Teknologi Virtualisasi Intel (VT-x, vmx), seperti prosesor Intel Core iX dan Intel Core Ultra
- Prosesor AMD dengan AMD-V (SVM), seperti prosesor AMD Ryzen
- Apple silicon
Persyaratan Tambahan untuk prosesor Intel dan AMD:
Penerjemahan alamat tingkat kedua (Intel EPT atau AMD RVI) diperlukan untuk prosesor Intel dan AMD. Sebagian besar prosesor Intel dan AMD modern mendukung terjemahan alamat tingkat kedua. Hanya prosesor Intel atau AMD generasi pertama yang menawarkan ekstensi virtualisasi yang mungkin tidak memiliki terjemahan halaman tingkat kedua.
Jika tidak yakin apakah prosesor Anda mendukung ekstensi yang diperlukan, periksa spesifikasi prosesor di situs produsen. Jika prosesor Anda tidak mendukung ekstensi ini, Anda tidak dapat menggunakan akselerasi VM.
Batasan
Akselerasi VM memiliki batasan berikut:
- Anda tidak dapat menjalankan emulator akselerasi VM di dalam VM lain, seperti VM yang dihosting oleh VirtualBox, VMWare, atau Docker. Anda harus menjalankan emulator yang diakselerasi VM langsung di komputer host Anda.
- Bergantung pada sistem operasi dan hypervisor, Anda tidak dapat menjalankan software yang menggunakan teknologi virtualisasi lain di saat yang sama ketika menjalankan emulator yang diakselerasi VM. Contoh software tersebut mencakup, tetapi tidak terbatas pada, solusi mesin virtual, program antivirus tertentu, dan beberapa solusi anti-penipu. Situasi ini sebagian besar diamati di Windows dengan Hyper-V nonaktif. Sebagian besar software semacam ini dapat digunakan berdampingan dengan emulator Android tanpa masalah apa pun. Namun, saat konflik terjadi, sebaiknya jangan jalankan emulator yang diakselerasi VM secara bersamaan dengan software tersebut.
Tentang hypervisor
Akselerasi VM memerlukan hypervisor, sebuah alat yang menggunakan ekstensi virtualisasi yang disediakan oleh prosesor komputer Anda.
Tanpa hypervisor dan akselerasi VM, emulator harus menerjemahkan kode mesin dari blok demi blok VM agar sesuai dengan arsitektur komputer host. Proses ini dapat berjalan dengan sangat lambat. Dengan hypervisor, saat VM dan arsitektur komputer host cocok, emulator dapat menjalankan kode secara langsung pada prosesor host menggunakan hypervisor. Peningkatan ini meningkatkan kecepatan dan performa emulator secara drastis.
Hypervisor yang paling sesuai untuk Anda bergantung pada konfigurasi dan sistem operasi komputer Anda. Untuk informasi selengkapnya, baca salah satu bagian berikut:
- Mengonfigurasi akselerasi VM di Windows
- Mengonfigurasi akselerasi VM di macOS
- Mengonfigurasi akselerasi VM di Linux
Memeriksa apakah hypervisor terinstal
Anda dapat menggunakan opsi command line -accel-check
emulator untuk memeriksa
apakah hypervisor saat ini terinstal pada komputer Anda.
Contoh berikut menunjukkan cara menggunakan opsi accel-check
emulator. Pada
setiap contoh, Sdk
adalah lokasi Android SDK:
Windows:
c:\Users\janedoe\AppData\Local\Android> Sdk\emulator\emulator -accel-check accel: 0 WHPX(10.0.22631) is installed and usable. accel
macOS:
janedoe-macbookpro:Android janedoe$ ./Sdk/emulator/emulator -accel-check accel: 0 Hypervisor.Framework OS X Version 13.2 accel
Linux:
janedoe:~/Android$ ./Sdk/emulator/emulator -accel-check accel: 0 KVM (version 12) is installed and usable.
Mengonfigurasi akselerasi VM di Windows
Akselerasi VM di Windows dapat menggunakan salah satu dari dua hypervisor:
- Windows Hypervisor Platform (WHPX)
- Driver hypervisor Android Emulator (AEHD)
Windows Hypervisor Platform menggunakan Hyper-V Hypervisor yang disediakan Windows, dan menawarkan kompatibilitas terbaik dengan tingkat ketidakstabilan yang lebih rendah. Jika memungkinkan, Anda harus menggunakan WHPX.
Jika sistem tidak mendukung WHPX, atau jika Anda memiliki masalah lain tentang penggunaannya, Anda dapat menggunakan Driver Hypervisor Android Emulator.
Mengonfigurasi akselerasi VM menggunakan Platform Windows Hypervisor
Sebelum mengaktifkan WHPX, komputer Anda harus memenuhi persyaratan berikut:
- Prosesor Intel: Dukungan untuk fitur Virtualization Technology (VT-x), Extended Page Tables (EPT), dan Unrestricted Guest (UG). VT-x harus diaktifkan di setelan BIOS komputer Anda.
- Prosesor AMD: Prosesor AMD Ryzen direkomendasikan. Virtualisasi atau SVM harus diaktifkan di setelan BIOS komputer Anda.
- Android Studio 3.2 Beta 1 atau yang lebih tinggi
- Android Emulator versi 27.3.8 atau yang lebih tinggi
- Windows 10 atau yang lebih tinggi
Untuk menginstal WHPX di Windows, ikuti langkah-langkah ini:
- Dari desktop Windows, klik ikon Windows untuk membuka Menu Start.
Menggunakan kotak penelusuran, ketik Turn Windows features on or off.
Panel kontrol Turn Windows features on or off akan muncul, dan dipilih.
Tekan tombol Enter, atau klik Turns Windows Features on or off, untuk meluncurkan panel kontrol.
Centang kotak di samping Windows Hypervisor Platform.
Klik OK.
Setelah penginstalan selesai, mulai ulang komputer Anda.
Mengonfigurasi akselerasi VM menggunakan driver hypervisor Android Emulator (AEHD) di Windows
Sebelum dapat menginstal dan menggunakan driver hypervisor Android Emulator, komputer Anda harus memenuhi persyaratan berikut:
- Prosesor Intel atau AMD dengan ekstensi virtualisasi.
Windows 11 atau Windows 10 64-bit (Windows 32-bit tidak didukung)
Pengguna Windows 8.1, Windows 8, dan Windows 7 dapat terus menggunakan AEHD 1.7 atau yang lebih lama. Namun, tidak akan ada dukungan yang diberikan untuk skenario tersebut.
Fitur yang juga menggunakan Windows Hyper-V Hypervisor harus dinonaktifkan pada Dialog Fitur Windows.
Komponen Windows tertentu juga mengaktifkan dan menggunakan Windows Hyper-V Hypervisor, meskipun Windows Hypervisor Platform tidak dipilih dalam Dialog Windows Features. Ini termasuk fitur keamanan seperti Hyper-V, Isolasi Inti, dan lainnya. (Perhatikan bahwa fitur Hyper-V TIDAK sama dengan Hyper-V Hypervisor.) Jika Anda memerlukan fitur ini, gunakan WHPX.
Di Prosesor AMD, driver hypervisor Android Emulator dapat diinstal melalui SDK Manager di Android Studio 4.0 Canary 5 atau yang lebih baru.
Di Prosesor Intel, driver hypervisor Android Emulator dapat diinstal melalui SDK Manager di Android Studio Flamingo atau yang lebih baru.
Untuk menginstal dari SDK Manager, ikuti langkah-langkah berikut:
- Pilih Tools > SDK Manager.
- Klik tab SDK Tools dan pilih Android Emulator hypervisor driver.
- Klik OK untuk mendownload dan menginstal driver hypervisor Android Emulator.
Setelah penginstalan, pastikan driver beroperasi dengan benar menggunakan perintah command line berikut:
AEHD 2.1 dan yang lebih tinggi
sc query aehd
Pesan status menyertakan informasi berikut:
SERVICE_NAME: aehd ... STATE : 4 RUNNING ...
Pesan error berikut berarti bahwa ekstensi virtualisasi tidak diaktifkan di BIOS atau Hyper-V tidak dinonaktifkan:
SERVICE_NAME: aehd ... STATE : 1 STOPPED WIN32_EXIT_CODE : 4294967201 (0xffffffa1) ...
AEHD 2.0 dan yang lebih rendah
sc query gvm
Pesan status menyertakan informasi berikut:
SERVICE_NAME: gvm ... STATE : 4 RUNNING ...
Pesan error berikut berarti bahwa ekstensi virtualisasi tidak diaktifkan di BIOS atau Hyper-V tidak dinonaktifkan:
SERVICE_NAME: gvm ... STATE : 1 STOPPED WIN32_EXIT_CODE : 4294967201 (0xffffffa1) ...
Driver hypervisor Android Emulator juga dapat didownload dan diinstal dari
GitHub.
Setelah mengekstrak paket driver, jalankan silent_install.bat
di command line
dengan hak istimewa administrator.
Uninstal driver hypervisor Android Emulator menggunakan perintah berikut pada command line dengan hak istimewa administrator:
AEHD 2.1 dan yang lebih tinggi
sc stop aehd
sc delete aehd
AEHD 2.0 dan yang lebih rendah
sc stop gvm
sc delete gvm
Mengonfigurasi akselerasi VM di macOS
Di macOS, Android Emulator menggunakan Hypervisor.Framework bawaan, yang memerlukan macOS v10.10 (Yosemite) dan yang lebih tinggi. Namun, Android Studio mungkin memerlukan versi yang lebih tinggi untuk macOS. Dalam kasus tersebut, ikuti persyaratan sistem Android Studio.
Mengonfigurasi akselerasi VM di Linux
Sistem berbasis Linux mendukung akselerasi VM melalui paket software KVM. Ikuti petunjuk untuk menginstal KVM di sistem Linux Anda, dan pastikan KVM telah aktif. Untuk sistem Ubuntu, lihat Penginstalan KVM Ubuntu.
Persyaratan
Pengoperasian KVM membutuhkan izin pengguna khusus. Pastikan Anda memiliki izin yang sesuai seperti yang ditentukan dalam petunjuk penginstalan KVM.
Untuk menggunakan akselerasi VM pada Linux, komputer Anda juga harus memenuhi persyaratan ini:
- Untuk prosesor Intel: Dukungan untuk Virtualization Technology (VT-x), fitur Intel EM64T (Intel 64), dan fungsionalitas Execute Disable (XD) Bit yang aktif.
- Untuk prosesor AMD: Dukungan untuk AMD Virtualization (AMD-V).
Memeriksa apakah KVM sudah terinstal di Linux
Anda dapat menggunakan opsi command line -accel-check
emulator untuk memeriksa apakah KVM sudah terinstal. Atau,
Anda dapat menginstal paket cpu-checker
yang berisi perintah kvm-ok
.
Contoh berikut menunjukkan cara menggunakan perintah kvm-ok
:
Instal paket
cpu-checker
:sudo apt-get install cpu-checker egrep -c '(vmx|svm)' /proc/cpuinfo
Output dengan nilai 1 atau yang lebih besar berarti virtualisasi didukung. Output dengan nilai 0 berarti CPU Anda tidak mendukung virtualisasi hardware.
Jalankan perintah
kvm-ok
:sudo kvm-ok
Output yang diharapkan:
INFO: /dev/kvm exists KVM acceleration can be used
Jika mengalami error berikut, berarti Anda masih dapat menjalankan mesin virtual. Namun, mesin virtual Anda akan menjadi lebih lambat tanpa ekstensi KVM.
INFO: Your CPU does not support KVM extensions KVM acceleration can NOT be used
Menginstal KVM di Linux
Gunakan perintah berikut untuk menginstal KVM:
Cosmic (18.10) atau yang lebih baru:
sudo apt-get install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils
Lucid (10.04) atau yang lebih baru:
sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils
Karmic (9.10) atau yang lebih lama:
sudo aptitude install kvm libvirt-bin ubuntu-vm-builder bridge-utils
Panduan untuk Uninstal Intel HAXM
Mulai dari emulator 33.x.x.x, HAXM tidak digunakan lagi karena Intel menghentikan pengembangan HAXM. Driver hypervisor Android Emulator (AEHD) menggantikan Intel HAXM pada Prosesor Intel.
Sebaiknya hapus Intel HAXM sepenuhnya dari sistem Windows, kecuali jika Anda menginstal software lain yang bergantung pada HAXM dan Anda memilih untuk mempertahankan Intel HAXM dan mengelolanya sendiri.
Untuk meng-uninstal Intel HAXM, ikuti langkah-langkah berikut:
Periksa apakah Intel HAXM sudah diinstal
Untuk menentukan apakah Intel HAXM diinstal di sistem Windows Anda, buka command console Windows dan jalankan perintah berikut:
sc query intelhaxm
Jika Intel HAXM diinstal dan dijalankan, Anda akan melihat pesan berikut
dalam output perintah.
Jika Intel HAXM diinstal tetapi dinonaktifkan, Anda akan melihat pesan berikut
di output perintah.
Dalam kedua kasus ini, terlepas dari apakah Intel HAXM berjalan atau dinonaktifkan, Intel HAXM sudah diinstal. Anda harus melanjutkan ke langkah berikutnya untuk terus meng-uninstal Intel HAXM.
Jika Intel HAXM tidak diinstal, Anda akan melihat pesan berikut.
Meng-uninstal Intel HAXM menggunakan SDK Manager dari Android Studio
Buka SDK Manager dari Android Studio, buka tab "SDK Tools", lalu
buka baris "Intel x86 Emulator Accelerator (HAXM Installer) - Deprecated". Tampilannya akan terlihat seperti screenshot berikut.
Hapus centang pada kotak seperti yang ditunjukkan pada screenshot berikut.
Klik tombol "Apply" dan dialog berikut akan muncul.
Setelah Intel HAXM berhasil di-uninstal, Anda akan melihat tampilan berikut.
Uninstal selesai dan Anda dapat berhenti di sini.
Jika terjadi error, lanjutkan ke langkah berikutnya.
Uninstal Intel HAXM menggunakan "settings" Windows.
Buka "settings" Windows dan buka "Apps > installed apps".
Cari entri "Intel Hardware Accelerated Execution Manager", lalu klik
"Uninstall", seperti yang ditunjukkan pada screenshot berikut.
Uninstaller Intel HAXM harus berjalan dan melaporkan hasilnya. Jika uninstal berhasil, buka Hapus paket penginstal Intel HAXM. Atau, lanjutkan ke langkah berikutnya.
Meng-uninstal menggunakan command line
Hentikan layanan Intel HAXM dengan menjalankan 'sc stop intelhaxm'. Anda akan melihat output berikut.
Hapus layanan Intel HAXM dengan menjalankan 'sc delete intelhaxm'. Anda akan melihat output berikut.
Buka Delete Intel HAXM penginstal package.
Hapus paket penginstal Intel HAXM.
Langkah ini hanya diperlukan saat meng-uninstal Intel HAXM menggunakan "settings" atau command line Windows. Tanpa langkah ini, SDK Manager Android Studio dapat terus mencantumkan Intel HAXM sebagai "Terinstal".
Paket penginstal terletak di<Your Android SDK folder>\extras\intel.
Secara default, Android SDK akan diinstal di "C:\Users\<Your Windows User ID
>\AppData\Local\Android\Sdk". Lihat contoh pada screenshot berikut.