Emülatör, tamamen yazılım olarak çalışmak yerine makinenizin donanımını (ör. CPU, GPU ve modem) kullanabiliyorsa en iyi şekilde çalışır. Performansı artırmak için makinenizin donanımını kullanma özelliğine donanım hızlandırma denir.
Emülatör, deneyiminizi iki temel şekilde iyileştirmek için donanım hızlandırmayı kullanabilir:
- Daha iyi ekran oluşturma için grafik hızlandırma
- Daha yüksek yürütme hızı için sanal makine (VM) hızlandırma
Donanım hızlandırma, çoğu makinede varsayılan olarak etkindir. Makinenizde etkinleştirilmemişse bu sayfada, emülatörden daha yüksek performans elde etmek için grafik ve sanal makine (VM) hızlandırmayı nasıl yapılandırabileceğiniz açıklanmaktadır.
Grafik hızlandırmayı yapılandırma
Android cihazlar, ekranda grafik oluşturmak için Gömülü Sistemler için OpenGL (OpenGL ES veya GLES) ve Vulkan API'lerini kullanır. Grafik hızlandırma, oluşturma işlemini hızlandırmak için bilgisayarınızın donanımını (genellikle GPU) kullanmanızı sağlar. Performans için donanım hızlandırma önerilse de bilgisayarınız grafik sürücüsü desteği veya eksik sistem görüntüsü gereksinimleri nedeniyle uyumlu değilse yazılım modunu kullanmanız gerekebilir.
AVD Yöneticisi'nde bir Android Sanal Cihazı (AVD) oluşturduğunuzda emülatörün donanım veya yazılım oluşturma kullanıp kullanmayacağını belirtebilirsiniz. Otomatik modda emülatör, bilgisayarınıza göre donanım veya yazılım grafik hızlandırması kullanılıp kullanılmayacağına karar verir. Emülatörü komut satırından başlatırsanız da ayarı geçersiz kılabilirsiniz.
AVD Yöneticisi'nde grafik hızlandırmayı yapılandırma
Bir AVD için grafik hızlandırmayı yapılandırmak üzere aşağıdaki adımları uygulayın:
- Cihaz Yönetim Paneli'ni açın.
- Yeni bir AVD oluşturun veya mevcut bir AVD'yi düzenleyin.
- Configuration (Yapılandırma) penceresinde, Additional Settings (Ek Ayarlar) sekmesinin altındaki Emulated Performance (Öykünülmüş Performans) bölümünü bulun.
- Grafik hızlandırma seçeneği için bir değer seçin.
- Son'u tıklayın.
Grafik hızlandırmayı komut satırından yapılandırma
Bir AVD'yi komut satırından çalıştırırken grafik hızlandırma türü belirtmek için aşağıdaki örnekte gösterildiği gibi -gpu seçeneğini ekleyin:
emulator -avd avd_name -gpu mode [{-option [value]} ... ]
mode değeri aşağıdaki seçeneklerden birine ayarlanabilir:
auto: Emülatörün AVD, bilgisayar kurulumu ve kalite metriklerine göre donanım veya yazılım grafik hızlandırması arasında seçim yapmasına izin verin. Bu, çoğu kullanıcı için önerilen moddur.host: Donanım hızlandırma için bilgisayarınızdaki GPU'yu kullanın. Bu seçenek genellikle emülatör için en yüksek grafik kalitesini ve performansını sağlar ve hızlandırılmış Vulkan oluşturma için macOS'te MoltenVK'yi etkinleştirebilir. Ancak grafik emülasyonuyla ilgili sorun yaşarsanız yazılım oluşturmaya geçmeniz gerekebilir.software: AVD, istenen emülasyon özellikleri ve kalite metrikleri için en uygun yazılım oluşturma arka ucunu kullanın.autoveyahostmodlarıyla ilgili sorun yaşıyorsanız bu seçeneği kullanmanız önerilir.lavapipe: Mesa 3D sürücüleriyle yazılım oluşturmayı kullanın.swiftshader: GLES ve Vulkan iş yükleri için SwiftShader ile yazılım oluşturmayı kullanın.swangle: ANGLE arka ucuyla SwiftShader yazılım sürücülerini kullanın.
Aşağıdaki mode seçenekleri kullanımdan kaldırılmıştır:
mesa: 25.3.0 sürümünde desteği sonlandırıldı.angle: 27.0.2 sürümünde desteği sonlandırıldı.angle_indirect: 34.2.14 sürümünde desteği sonlandırıldı.guest: 36.4.9 sürümünde kullanımdan kaldırıldı.swiftshader_indirect: 36.4.9 sürümünde kullanımdan kaldırıldı.swangle_indirect: 36.4.9 sürümünde kullanımdan kaldırıldı.
Sanal makine hızlandırmayı yapılandırma
Sanal makine hızlandırma, emülatörün yürütme hızını önemli ölçüde artırmak için bilgisayarınızın işlemcisini kullanır. Hipervizör adı verilen bir araç, bilgisayarınızın işlemcisinin sağladığı sanallaştırma uzantılarını kullanarak bu etkileşimi yönetir. Bu bölümde, sanal makine hızlandırmayı kullanma koşulları ve her işletim sisteminde sanal makine hızlandırmanın nasıl ayarlanacağı açıklanmaktadır.
Genel gereksinimler
Emülatörle sanal makine hızlandırmayı kullanmak için bilgisayarınızın bu bölümdeki genel şartları karşılaması gerekir. Bilgisayarınızın, işletim sisteminize özgü diğer gereksinimleri de karşılaması gerekir.
Geliştirme ortamı gereksinimleri
Sanal makine hızlandırmayı kullanmak için geliştirme ortamınızın aşağıdaki koşulları karşılaması gerekir:
- SDK Araçları: Minimum sürüm 17; önerilen sürüm 26.1.1 veya daha yeni bir sürüm
AVD: Gerekli Android sürümü aşağıdaki tabloda açıklanmıştır.
CPU Mimarisi Sistem resmi şartı X86_64 Android 2.3.3 (API düzeyi 10) ve sonraki sürümler için x86 veya x86_64 sistem görüntüleri ARM64 Android 5.0 (API düzeyi 21) ve sonraki sürümler için arm64-v8a sistem görüntüleri
Sanallaştırma uzantısı gereksinimleri
Geliştirme ortamı gereksinimlerine ek olarak bilgisayarınızın işlemcisi sanallaştırma uzantılarını desteklemelidir. Desteklenen işlemciler şunlardır:
- Intel Sanallaştırma Teknolojisi'ne (VT-x, vmx) sahip Intel işlemciler (ör. Intel Core iX ve Intel Core Ultra işlemciler)
- AMD-V (SVM) özellikli AMD işlemciler (ör. AMD Ryzen işlemciler)
- Apple Silicon
Intel ve AMD işlemciler için ek koşullar:
Intel ve AMD işlemciler için ikinci düzey adres çevirisi (Intel EPT veya AMD RVI) gerekir. Çoğu modern Intel ve AMD işlemci, ikinci düzey adres çevirisini destekler. Yalnızca sanallaştırma uzantıları sunan birinci nesil Intel veya AMD işlemcilerde ikinci düzey sayfa çevirileri olmayabilir.
İşlemcinizin gerekli uzantıları destekleyip desteklemediğinden emin değilseniz üreticinin sitesinde işlemcinizin teknik özelliklerini kontrol edin. İşlemciniz bu uzantıları desteklemiyorsa sanal makine hızlandırmayı kullanamazsınız.
Kısıtlamalar
Sanal makine hızlandırmada aşağıdaki kısıtlamalar vardır:
- Sanal makine hızlandırmalı bir emülatörü, VirtualBox, VMWare veya Docker tarafından barındırılan bir sanal makine gibi başka bir sanal makinede çalıştıramazsınız. Sanal makine hızlandırmalı bir emülatörü doğrudan ana makinenizde çalıştırmanız gerekir.
- İşletim sisteminize ve hipervizörünüze bağlı olarak, sanal makine hızlandırmalı bir emülatör çalıştırırken başka bir sanallaştırma teknolojisi kullanan yazılımları çalıştıramayabilirsiniz. Bu tür yazılımlara örnek olarak sanal makine çözümleri, belirli antivirüs programları ve bazı hile önleme çözümleri verilebilir ancak bunlarla sınırlı değildir. Bu durum genellikle Hyper-V'nin kapalı olduğu Windows'ta görülür. Bu tür yazılımların çoğu, Android emülatörüyle sorunsuz bir şekilde bir arada bulunabilir. Ancak çakışmalar meydana geldiğinde, sanal makine hızlandırmalı emülatörün bu tür yazılımlarla aynı anda çalıştırılmaması önerilir.
Hipervizörler hakkında
Sanal makine hızlandırma için bilgisayarınızın işlemcisi tarafından sağlanan sanallaştırma uzantılarını kullanan bir araç olan hipervizör gerekir.
Hipervizör ve sanal makine hızlandırması olmadan emülatör, sanal makinedeki makine dilini ana bilgisayarın mimarisine uyacak şekilde blok blok çevirmelidir. Bu işlem oldukça yavaş olabilir. Hipervizör kullanıldığında, sanal makine ile ana bilgisayarın mimarisi eşleşirse emülatör, hipervizör aracılığıyla kodu doğrudan ana işlemcide çalıştırabilir. Bu iyileştirme, emülatörün hem hızını hem de performansını önemli ölçüde artırır.
Sizin için en uygun hipervizör, bilgisayarınızın işletim sistemine ve yapılandırmasına bağlıdır. Daha fazla bilgi için aşağıdaki bölümlerden birini inceleyin:
- Windows'da sanal makine hızlandırmayı yapılandırma
- macOS'te sanal makine hızlandırmayı yapılandırma
- Linux'ta sanal makine hızlandırmayı yapılandırma
Hipervizörün yüklü olup olmadığını kontrol etme
Bilgisayarınızda hipervizör yüklü olup olmadığını kontrol etmek için emülatörün -accel-check komut satırı seçeneğini kullanabilirsiniz.
Aşağıdaki örneklerde, emülatör accel-check seçeneğinin nasıl kullanılacağı gösterilmektedir. Her örnekte Sdk, Android SDK'nın konumudur:
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.
Windows'da sanal makine hızlandırmayı yapılandırma
Windows'da, Microsoft tarafından sağlanan ve Windows 10 sürüm 1803 veya sonraki sürümleri gerektiren Windows Hipervizör Platformu'nu (WHPX) kullanmanızı öneririz. Ancak Android Studio, Windows için daha yüksek bir sürüm gerektirebilir. Bu gibi durumlarda Android Studio sistem gereksinimlerini uygulayın.
Windows Hipervizör Platformu varsayılan olarak etkinleştirilmemiş olabilir. Bu gibi durumlarda, etkinleştirmek için Windows Hipervizör Platformu'nu kullanarak sanal makine hızlandırmayı yapılandırma bölümündeki adımları uygulayın. Etkinleştirildikten sonra yeniden başlatma gerekebilir.
Windows Hypervisor Platform'u kullanarak sanal makine hızlandırmayı yapılandırma
WHPX'i etkinleştirebilmeniz için bilgisayarınızın aşağıdaki koşulları karşılaması gerekir:
- Intel işlemciler: Sanallaştırma Teknolojisi (VT-x), Genişletilmiş Sayfa Tabloları (EPT) ve Sınırsız Misafir (UG) özellikleri için destek. Bilgisayarınızın BIOS ayarlarında VT-x etkinleştirilmelidir.
- AMD işlemciler: AMD Ryzen işlemci önerilir. Bilgisayarınızın BIOS ayarlarında sanallaştırma veya SVM etkinleştirilmelidir.
- Android Studio 3.2 Beta 1 veya sonraki sürümler
- Android Emulator 27.3.8 veya sonraki sürümler
- Windows 10 veya sonraki sürümler
WHPX'i Windows'a yüklemek için aşağıdaki adımları uygulayın:
- Windows masaüstünde Windows simgesini tıklayarak Başlat menüsünü açın.
Arama çubuğuna Windows özelliklerini aç veya kapat yazın.
Windows özelliklerini aç veya kapat denetim masası görünür ve seçilir.

Denetim masasını başlatmak için Enter tuşuna basın veya Windows özelliklerini aç veya kapat'ı tıklayın.
Windows Hypervisor Platform'un yanındaki kutuyu işaretleyin.

Tamam'ı tıklayın.
Yükleme tamamlandıktan sonra bilgisayarınızı yeniden başlatın.
Windows'da Android Emulator hiper yönetici sürücüsünü (AEHD) kullanarak sanal makine hızlandırmayı yapılandırma
Android Emulator hipervizör sürücüsünü yükleyip kullanabilmeniz için bilgisayarınızın aşağıdaki koşulları karşılaması gerekir:
- Sanallaştırma uzantısına sahip Intel veya AMD işlemciler.
64 bit Windows 11 veya Windows 10 (32 bit Windows desteklenmez)
Windows 8.1, Windows 8 ve Windows 7 kullanıcıları AEHD 1.7 veya daha eski sürümleri kullanmaya devam edebilir. Ancak bu tür senaryolar için destek sunulmaz.
Windows Hyper-V Hypervisor'ı da kullanan özellikler, Windows Özellikleri iletişim kutusunda devre dışı bırakılmalıdır.
Windows Özellikleri iletişim kutusunda Windows Hipervizör Platformu seçili olmasa bile belirli Windows bileşenleri de Windows Hyper-V Hipervizör'ü etkinleştirir ve kullanır. Bunlar arasında Hyper-V ve Çekirdek Yalıtımı gibi güvenlik özellikleri yer alır. (Hyper-V özelliğinin Hyper-V Hipervizörü ile aynı OLMADIĞINI unutmayın.) Bu özelliklere ihtiyacınız varsa bunun yerine WHPX kullanın.
AMD işlemcilerde Android Emulator hipervizör sürücüsü, Android Studio 4.0 Canary 5 veya sonraki sürümlerde SDK Manager aracılığıyla yüklenebilir.
Intel işlemcilerde Android Emulator hipervizör sürücüsü, Android Studio Flamingo veya sonraki sürümlerde SDK Manager aracılığıyla yüklenebilir.
SDK Manager'dan yüklemek için aşağıdaki adımları uygulayın:
- Tools > SDK Manager'ı seçin.
- SDK Tools sekmesini tıklayın ve Android Emulator hypervisor driver'ı seçin.
- Android Emulator hipervizör sürücüsünü indirip yüklemek için Tamam'ı tıklayın.
Yükleme işleminden sonra, aşağıdaki komut satırı komutunu kullanarak sürücünün doğru şekilde çalıştığını doğrulayın:
AEHD 2.1 ve sonraki sürümler
sc query aehdDurum mesajı aşağıdaki bilgileri içerir:
SERVICE_NAME: aehd ... STATE : 4 RUNNING ...Aşağıdaki hata mesajı, BIOS'unuzda sanallaştırma uzantısının etkinleştirilmediği veya Hyper-V'nin devre dışı bırakılmadığı anlamına gelir:
SERVICE_NAME: aehd ... STATE : 1 STOPPED WIN32_EXIT_CODE : 4294967201 (0xffffffa1) ...AEHD 2.0 ve önceki sürümler
sc query gvmDurum mesajı aşağıdaki bilgileri içerir:
SERVICE_NAME: gvm ... STATE : 4 RUNNING ...Aşağıdaki hata mesajı, BIOS'unuzda sanallaştırma uzantısının etkinleştirilmediği veya Hyper-V'nin devre dışı bırakılmadığı anlamına gelir:
SERVICE_NAME: gvm ... STATE : 1 STOPPED WIN32_EXIT_CODE : 4294967201 (0xffffffa1) ...
Android Emulator hipervizör sürücüsü GitHub'dan da indirilip yüklenebilir.
Sürücü paketini açtıktan sonra yönetici ayrıcalıklarıyla komut satırında silent_install.bat komutunu çalıştırın.
Yönetici ayrıcalıklarına sahip bir komut satırında aşağıdaki komutları kullanarak Android Emulator hipervizör sürücüsünü kaldırın:
AEHD 2.1 ve sonraki sürümler
sc stop aehd
sc delete aehd
AEHD 2.0 ve önceki sürümler
sc stop gvm
sc delete gvm
macOS'te sanal makine hızlandırmayı yapılandırma
macOS'te Android Emulator, yerleşik Hypervisor.Framework'ü kullanır. Bu çerçeve, macOS 10.10 (Yosemite) ve sonraki sürümleri gerektirir. Ancak Android Studio, macOS için daha yeni bir sürüm gerektirebilir. Bu gibi durumlarda Android Studio sistem gereksinimlerini uygulayın.
Linux'ta sanal makine hızlandırmayı yapılandırma
Linux tabanlı sistemler, KVM yazılım paketi aracılığıyla sanal makine hızlandırmayı destekler. Linux sisteminize KVM yükleme talimatlarını uygulayın ve ardından KVM'nin etkinleştirildiğini doğrulayın. Ubuntu sistemleri için Ubuntu KVM Kurulumu başlıklı makaleyi inceleyin.
Şartlar
KVM'yi çalıştırmak için belirli kullanıcı izinleri gerekir. KVM yükleme talimatlarında belirtilen yeterli izinlere sahip olduğunuzdan emin olun.
Linux'ta sanal makine hızlandırmayı kullanmak için bilgisayarınızın aşağıdaki şartları da karşılaması gerekir:
- Intel işlemciler için: Sanallaştırma Teknolojisi (VT-x), Intel EM64T (Intel 64) özellikleri ve Execute Disable (XD) Bit işlevi için destek etkinleştirilmiş olmalıdır.
- AMD işlemciler için: AMD Sanallaştırma (AMD-V) desteği.
Linux'ta KVM'nin yüklü olup olmadığını kontrol etme
KVM'nin yüklü olup olmadığını kontrol etmek için emülatörün -accel-check komut satırı seçeneğini kullanabilirsiniz. Alternatif olarak, kvm-ok komutunu içeren cpu-checker paketini yükleyebilirsiniz.
Aşağıdaki örnekte kvm-ok komutunun nasıl kullanılacağı gösterilmektedir:
cpu-checkerpaketini yükleyin:sudo apt-get install cpu-checker egrep -c '(vmx|svm)' /proc/cpuinfo
Çıktının 1 veya daha yüksek olması, sanallaştırmanın desteklendiği anlamına gelir. Çıkışın 0 olması, CPU'nuzun donanım sanallaştırmayı desteklemediği anlamına gelir.
kvm-okkomutunu çalıştırın:sudo kvm-ok
Beklenen çıktı:
INFO: /dev/kvm exists KVM acceleration can be usedAşağıdaki hatayı alırsanız sanal makineleri çalıştırmaya devam edebilirsiniz. Ancak sanal makineniz KVM uzantıları olmadan daha yavaş çalışır.
INFO: Your CPU does not support KVM extensions KVM acceleration can NOT be used
Linux'ta KVM'yi yükleme
KVM'yi yüklemek için aşağıdaki komutu kullanın:
Cosmic (18.10) veya sonraki sürümler:
sudo apt-get install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils
Lucid (10.04) veya sonraki sürümler:
sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils
Karmic (9.10) veya daha eski sürümler:
sudo aptitude install kvm libvirt-bin ubuntu-vm-builder bridge-utils
Intel HAXM'yi Kaldırma Kılavuzu
Intel, HAXM'nin geliştirilmesini durdurduğu için HAXM'nin desteği bir süredir (01/2023) sonlandırılmıştır.
Android Emulator, 36.2.x.x sürümünden itibaren artık HAXM'yi kullanmayacak. Daha önce HAXM'yi kullanıyorsanız yeni bir hipervizör sürücüsü yüklemeniz gerekecek. Microsoft'un Windows Hipervizör Platformu'nu (WHPX) kullanmanızı öneririz.
HAXM'e bağlı başka bir yazılımınız yoksa ve Intel HAXM'i tutup kendiniz yönetmeyi tercih etmiyorsanız Intel HAXM'i Windows sisteminizden tamamen kaldırmanız önerilir.
Intel HAXM'yi kaldırmak için aşağıdaki adımları uygulayın:
Intel HAXM'nin yüklü olup olmadığını kontrol etme
Intel HAXM'nin Windows sisteminizde yüklü olup olmadığını belirlemek için bir Windows komut konsolu açın ve aşağıdaki komutu çalıştırın:
sc query intelhaxm
Intel HAXM yüklü ve çalışıyorsa komut çıkışında aşağıdaki mesajı görürsünüz.

Intel HAXM yüklü ancak devre dışıysa komut çıkışında aşağıdaki mesajı görürsünüz.

Her iki durumda da Intel HAXM çalışıyor veya devre dışı bırakılmış olsa da yüklenir. Intel HAXM'yi kaldırmaya devam etmek için sonraki adıma gitmeniz gerekir.
Intel HAXM yüklü değilse aşağıdaki mesajı görürsünüz.

Android Studio'daki SDK Manager'ı kullanarak Intel HAXM'yi kaldırma
Geçmişte SDK Manager ile HAXM'yi yüklediyseniz modülü "SDK Tools" sekmesinde görmeye devam edersiniz.
Android Studio'dan SDK Manager'ı açın, "SDK Tools" sekmesine gidin ve "Intel x86 Emulator Accelerator (HAXM installer) - Deprecated" satırına gidin. Aşağıdaki ekran görüntüsüne benzer bir ekran görürsünüz.

Aşağıdaki ekran görüntüsünde gösterildiği gibi onay kutusunun işaretini kaldırın.

"Apply" (Uygula) düğmesini tıkladığınızda aşağıdaki iletişim kutusu gösterilir.

Intel HAXM başarıyla kaldırıldığında aşağıdaki ekranı görürsünüz.
Kaldırma işlemi tamamlandı ve burada durabilirsiniz.

Herhangi bir hata olursa sonraki adıma geçin.
Windows "ayarlar" bölümünden Intel HAXM'yi kaldırın.
Windows "Ayarlar"ı açıp "Uygulamalar > Yüklü uygulamalar" bölümüne gidin.
Aşağıdaki ekran görüntüsünde gösterildiği gibi "Intel Donanım Hızlandırmalı Yürütme Yöneticisi" girişini bulun ve "Uninstall"ı (Kaldır) tıklayın.

Intel HAXM kaldırma programı çalıştırılmalı ve sonuç bildirilmelidir. Kaldırma işlemi başarılı olursa Intel HAXM yükleyici paketini silme bölümüne gidin. Aksi takdirde sonraki adıma geçin.
Komut satırını kullanarak kaldırma
"sc stop intelhaxm" komutunu çalıştırarak Intel HAXM hizmetini durdurun. Aşağıdaki çıkışı görürsünüz.

"sc delete intelhaxm" komutunu çalıştırarak Intel HAXM hizmetini silin. Aşağıdaki çıkışı görürsünüz.

Intel HAXM yükleyici paketini silme bölümüne gidin.
Intel HAXM yükleyici paketini silin.
Bu adım yalnızca Intel HAXM'yi Windows "ayarlar" veya komut satırı üzerinden kaldırırken gereklidir. Bu adım uygulanmazsa Android Studio'nun SDK Manager'ı, Intel HAXM'yi "Yüklü" olarak listelemeye devam edebilir.
Yükleyici paketi<Android SDK klasörünüz>\extras\intel konumunda bulunur.
Android SDK, varsayılan olarak "C:\Users\<Windows Kullanıcı Kimliğiniz>\AppData\Local\Android\Sdk" konumuna yüklenir. Aşağıdaki ekran görüntüsünde bir örnek görebilirsiniz.
