Look at row 62 of this graph.

It is the time taken for a quick sort integer array, on a VM for android 4.4 (KitKat). How come that ART is faster except at an array size of 62000? In fact, it is significantly slower than Dalvik, as Dalvik takes 238 seconds, but ART takes 333 seconds. The result does not even fit the pattern of results, in rows 61 and 63. I could even say that its anomalous. This is very strange. Why does this happen?

  • I am not sure if it is off-topic on android.se, but this may probably get better attention on Stack Overflow. If you feel like migrating this question, flag for moderator attention.
    – Alvin Wong
    Nov 6, 2013 at 17:36
  • I think this should be on stackoverflow.com
    – phuclv
    Jun 30, 2014 at 10:56

1 Answer 1


Most probably the test is inconsistent. Have you tried repeating the test at least 100 times to have pseudo-valid statistic results? And are you sure the emulator is a valid platform on where to test such low-level things? It may be optimised for the Dalvik VM.

Best guess is to try it on a real device, like the new Nexus 5 or waiting for the Nexus 4 and Nexus 7 updates.

  • I was not the one doing the tests, I came across it while I was on an IRC channel, with a well known developer.
    – George
    Nov 6, 2013 at 21:03
  • I told you why I suspect the test is inconsistent, no matter who made the test. I'd suggest to run the code yourself once you've got a proper 4.4 release for your smartphone, or wait for further tests. That result may be the result of several factors, one of them a CPU or emulator hiccup. In statistics this kind of data is considered an outlier and most algorithms just ignore them (more or less).
    – Jack
    Nov 6, 2013 at 21:37

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .