03 February 2014

Faster Android emulator on Intel Architecture

The Eclipse is the main stable development environment for Android.
The performance of the Android emulator is really bad, but Intel has a solution for computers on a Intel Architecture.

The recent computers with an Intel processor have the Intel Virtualization Technology enabled, that allows the acceleration of the the Android Emulator.
In win Windows and Apple Mac OS there is the Intel Hardware Accelerated Execution Manager (Intel HAXM) or KVM for Linux.

In this document I am focusing on the configuration of the Intel HAXM in a windows environment.

The prerequisites are:
1) Android SDK must be installed
2) An Intel processor with support for Intel VT-x, EM64T and Execute Disable(XD) Bit functionality enabled from the BIOS

To install the Intel HAXM:
1) Open the Android SDK manager where you installed it
2) Go to Extras in the tree-view and select the Intel x86 Emulator Accelerator(HAXM) and press the Install button

3) After the installation the SDK manager displays that the extra is installed, but it only downloaded a executable named IntelHaxm.exe that must be executed manually.
The file is tipically where you insalled the Android SDK in sdk\extras\intel\Hardware_Accelerated_Execution_Manager. If you can't find it search in windows explorer for the file.
4) Execute the IntelHaxm.exe and set the amount of memory that you want to reserve for the emulator and install it.
If your computer doesn't meet the requirements and error will occur, so validate that you BIOS settings are enabled for the Virtualization Technology.

The next step is to create an Android Virtual Device (AVD) with hardware accelerated emulation:
1) Launch Eclipse
2) Go to the AVD Manager and create a new device
3) Select Intel Atom (x86) as the CPU/ABI. This option is only available for Intel x86 system images, so you must install it.
You can install the Intel x86 Atom system images using the Android SDK manager.

4) Switch on the GPU emulation

The memory options of the AVD are also important. RAM values greater than 768M usually may fail on windows depending on the system load. Progressively lower the RAM values until the AVD is stable.

On windows 8.1 there is a side effect: The error dump CRITICAL_STRUCTURE_CORRUPTION
Intel has released a hotfix for windows 8.1 that is not included on the Android SDK Manager download.

Download it here

No comments: