Friday, October 11, 2019

Emulator 29.2.4 Canary: Fixes, AMD Hypervisor Preview

Emulator 29.2.4 is now available in the Canary and Dev channels. Changes:
  • Windows: Fixed issue where "VCPU shutdown request" would occur if loading snapshots while the emulator is running.
  • Fixed freezes related to the battery page.
  • Speculative fix landed for a potential hang that has to do with ADB. If you notice the emulator taking a long time to respond, see if 29.2.4 fixes the issue, and if not, try force killing the ADB process.
  • Vulkan: ASTC LDR compressed textures are now supported via emulation if not supported on the host GPU (feature: textureCompressionASTC_LDR).
  • Input
    • Linux: Fixed Alt key not working on non-QWERTY layouts.
    • Fixed issue where virtual scene camera WASDQE controls did not work with non-QWERTY layouts.
  • Google Maps UI
    • Fixed font size on popup dialog.
    • Fixed issue when starting routes from the Points page.
Preview: Hypervisor for running the emulator on AMD CPUs on Windows

Currently, Windows Hypervisor Platform (WHPX) is required to run the emulator on AMD CPUs on Windows. However, there are compatibility and performance issues; some machines cannot work with WHPX and the experience is slower than with Intel CPUs and HAXM.

To address this, since emulator 29.2.3, we've added a new hypervisor backend + driver, based on KVM, that allows you to run the emulator on Windows with AMD CPUs with compatibility and performance that should be on par with Intel HAXM.

We're still working out bugs with it, so we'll only make this initially available as a sideload from this link. Instructions:
  1. Be on an AMD CPU.
  2. Ensure that WHPX/Hyper-V are disabled, through Windows Optional Features. Credential Guard may also need to be disabled. This requires a system restart.
  3. Unzipping gvm_install.zip and running the silent install script will install the hypervisor driver.
  4. The emulator should be able to run after that, assuming it is 29.2.3 or later.
  5. Running the silent install script with -u will uninstall the driver.