Question is
I get "HAX is not working and emulator runs in emulation mode", is this related to Intel x86 Emulator Accelerator (HAXM) installation and running avd with cpu set to CPU Intel Atom (x86)? And even though it feels like AVD runs faster after i installed HAXM, does this message indicates that AVD performance is hindered. Should it be fixed and if so, how?
I am running on mac os x 10.9.1.
Listing what is installed on my system via android sdk manager:
==
==
AVD set up
Once i run avd:
(ruby-2.0.0-p353) .android $ tools/emulator -avd 1AVD -wipe-data -no-boot-anim -cpu-delay 0
i get following and emulator eventually loads
emulator: The memory needed by this VM exceeds the driver limit.
HAX is not working and emulator runs in emulation mode
This question is related to
android
macos
android-emulator
Download HAXM from SDK Manager
Open your SDK Manager from Android Studio, click the icon shown in the screen shot.
Click on "Launch Standalone SDK Manager" on the "Default Settings" Dialog.
Check node "Extras > Intel x86 Emulator Accelerator (HAXM installer)" and proceed with HAXM download.
Installing or Modifying HAXM
You can now access with installation (or modifying existing installtino) of HAXM by accessing the download location. Enter this path in "run"
%localappdata%\Android\sdk\extras\intel\Hardware_Accelerated_Execution_Manager
and double click the file "intelhaxm-android.exe"
You can increase the size of memory allocated to HAXM while modifying existing HAXM install. I have a machine with 32 GB of RAM and would like to launch multiple AVDs at same time (for automated testing etc.) so I have allocated 8 GB to HAXM.
Caveat
If you are running one AVD of one 1 GB and allocated 2 GB to HAXM, you cannot run another AVD with RAM more than 1 GB. Please make sure that Android Device Monitor is not running when you are modifying or installing HAXM (just to avoid any suprises).
These steps are tested on Windows platform, but generally could be applied to other platforms too with slight modification.
You have to verify than the size allocated while doing HAX installation is the same than the size in the AVD emulator configuration.
You can see in French here : http://blerow.blogspot.fr/2015/01/android-studio.html
For Windows.
In Android Studio
:
Tools > Android > AVD Manager > Your Device > Pencil Icon> Show Advanced Settings > Memory and Storage > RAM > Set RAM to your preferred size.
In Control Panel
:
Programs and Features > Intel Hardware Accelerated Execution Manager > Change > Set manually > Set RAM to your preferred size.
It is better for RAM sizes set in both places to be the same.
Re-open your AVD device configuration. by editing device in the AVD manager. proceed to select the AVD Android version. At the right pane a recommendation is displayed follow that recommendation and all will be fixed.
Yes it should be fixed, HAXM isn't working.
HAXM sometimes works; experience with HAXM is currently sporadic across platforms.
For instance, I've got late 2009 iMac running 10.8.5 and i7 processor @2.8Ghz, Android SDK 22.6 with all the goodies updated this morning (03/05/14). API17 will build emulators with HAXM acceleration on this iMac machine, API19 chokes out.
I also have early 2013 MBP 15" Retina running 10.8.5 and i7 processor @2.7Ghz, Android SDK 22.6 with all the goodies updated this morning (03/05/14). API17 will build emulators with HAXM acceleration, API19 works great too.
Ditto for my (personal) late 2013 MBP Retina 13" with dual-core i5 and Mavericks.
There is something going on for virtualization at the chip level missing from older CPU's (even i7's) that the new API19 x86 images need for HAXM to work. If API19 is not working, give API17 or even 16 a try.
Either increase the ram size allocated while doing HAX installation , so as to fit exactly or a bit more higher space than the ram size of the emulator which you want to launch in "Intel x86 Emulator Accelerator (HAXM) " mode,
Once you succeed with that, you can now able to view this in the console /log
In my case, this error was fixed when I set HAXM memory equal to AVD memory. HAXM memory 1024 MB = AVD memory 1024 MB
Hax is enabled
Hax ram_size 0x40000000
HAX is working and emulator runs in fast virt mode.
Upto this point the error should be fixed.
Now I'm listing my specific environment in case it could be of some help for someone using OS X.
OS X El Capitan 10.11.4
MacBook (13-inch), 2 GHz Intel Core 2 Duo, 4 GB Ram.
Android Studio 2.1
Marshmallow (23) x86 didn't pass the flashing Android icon screen for even hours.
Lollipop (22) x86 passed the flashing android icon screen and then showed
KitKat (19) x86 worked successfully and I could install the hello world there.
The way I solved it is by setting the AVD memory limit and HAXM memory to be equal in size which is 1 GB = 1024 MB. The AVD cannot have higher memory limit than the HAXM.
1. Setting the HAXM memory to be 1024 M
The only way to change the HAXM memory is by installing it again. I did it using the terminal. Locate Hardware_Accelerated_Execution_Manager in your machine. Then change directory that folder to run the installation script.
cd ~/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager
-OR-
cd ~/Library/Developer/Xamarin/android-sdk-macosx/extras/intel/Hardware_Accelerated_Execution_Manager
May need to change permissions:
sudo chmod 755 "HAXM installation"
Then:
./HAXM\ installation -m 1024
-OR-
sudo ./"HAXM installation" -m 1024
2. Setting the virtual device the same size with HAXM memory limit
This works for me. Good luck!
install the latest HAXM from intel: https://software.intel.com/en-us/android/articles/intel-hardware-accelerated-execution-manager
After this it's working
if you are running Intel processor make sure HAXM (IntelĀ® Hardware Accelerated Execution Manager) installer is install via SDK Manager by checking this option in SDK Manager. and then run the HAXM installer ext via the path below
your_sdk_folder\extras\intel\Hardware_Accelerated_Execution_Manager\intelhaxm.exe
also check the ram size allocated while doing HAX installation so it fits the ram size of your emulator.
This video shows all the required steps which may help you to solve the problem.
This video will also help you if you face problem after installing HAXM.
geckob's solution works perfectly. Caution: The HAXM that you provide is used across all running devices. So if you are testing on a phone and Tablet at the same time and each has a requirement of 1G. Then make sure your HAXM alloted is atleast 2G.
Default memory assigned to HAX is 1024MB. And the emulator has 1536MB apparently for Nexus 5x api 25.
if you're using Android Studio,
Works like a charm. :)
On your mac Open the finder then command + Alt + G
after type this /Users/${yourMacNameHere}/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager
your gonna to find installer of the emulator accelerator so run it and set up the memory you need modify it and retry to run your android application
If you are on a mac you can install haxm
using homebrew via cask which is a built-in extension (as of 2015) which allows installing non-open-source and desktop apps (i.e. chrome, firefox, eclipse, etc.):
brew cask install intel-haxm
If you are using Android Studio then you can achieve the same result from the menu Tools ? SDK Manager, and then on the SDK Tools tab, select the checkbox for Intel x86 Emulator Accelerator (HAXM installer), and click Ok.
My problem was that I could no longer run an emulator that had worked because I had quit the emulator application but the process wasn't fully ended, so I was trying to launch another emulator while the previous one was still running. On a mac, I had to use the Activity Monitor to see the other process and kill it. Steps:
Check the latest version of Has on Intel website and install it. Let the ram in recommended size "preset 2048", then try to run the app. Things should work fine.
Source: Stackoverflow.com