3

I'm currently away from home and forgot to bring my Nexus 7 with me, so I've been developing on an emulator. I'm using the HAXM Intel x86 system image and it's loads faster than the traditional ARM system image. Even then, I sometimes experience lag when it comes to rendering simple animations such as swiping across a ViewPager or flipping a fragment around with a "cover flip" sort of effect.

I've googled various articles regarding performance, but most of them seem to compare performance between the ARM system image and the Intel system image. Since I won't have access to my Nexus 7 before I release my new app, my question is this:

How does the performance on the Intel system image emulator correlate to a real device's performance? Is a real device significantly faster than the Intel emulator, or can I expect to see the same occasional stuttering that I see now on the emulator?

NewGradDev
  • 1,004
  • 6
  • 16
  • 35
  • I don't have actual numbers but I have tested my app directly on my Nexus 7 as well as with both the ARM system image and with HAXM. Hands down, it was faster for me to push it directly to physical hardware than to use the emulators. But if you don't have a physical device set up and available for testing, HAXM is the way to go. However, it may depend on what your app is actually doing and how much I/O is required (and how fast is your physical connection USB1, USB2, USB3) – ChileAddict - Intel Apr 22 '14 at 16:58

1 Answers1

3

HAXM is faster then emulated ARM and if Graphics Hardware Acceleration doesn't cause any problems it is quite usable. I was able to run Nexus 10 emulator without problems until something was "fixed" in hardware acceleration and my Mac(ATI) started to freeze every time I have launched emulator.

As I don't use mac nor windows anymore here some values for real device in comparison to KVM enabled Ubuntu:

Emulator (4.2.2 Intel 7inch, HW enabled, host i7 running Ubuntu 64 with KVM)

07-25 11:05:40.175: I/performance:(2287):
07-25 11:05:40.285: I/performance end:(2287):

Samsung Nexus

07-25 12:07:48.352: I/performance:(19139):
07-25 12:07:49.328: I/performance end:(19139)

Emulator wins massively. Task was to download few files from sdd parse them into json then write to db

robotoaster
  • 3,082
  • 1
  • 24
  • 23
  • So the HAXM emulator is significantly faster than a real ARM based device? Hmmmm, very interesting. I would expect the emulator to be fast, but not as fast as a real device. Does this mean that my app will run slower on a real device versus the Intel emulator? If so, then I may be in a bit of trouble. – NewGradDev Jul 25 '13 at 11:23
  • this is small test of app starting up. App is optimised so it doesn't require much. I need something heavier to get better data. But when it comes to testing apps in the end you always need to test it on the real thing. – robotoaster Jul 25 '13 at 11:27
  • Ahh ok, that makes sense. Just found this question too: http://stackoverflow.com/questions/2893273/how-does-android-emulator-performance-compare-to-real-device-performance?answertab=active#tab-top. It's a bit old, but it's based on a few of the same key points. Take a look at the accepted answer... looks like I/O is faster on the emulator but most other aspects are faster on a real device. – NewGradDev Jul 25 '13 at 11:35