ARM Compatibility: Binary Translation

Similar to Apple's move from PowerPC to x86, Intel finds itself in a difficult position with bringing Atom to Android. The OS isn't an issue as it has already been ported to x86 and all further releases will be available in both ARM and x86 flavors. The bigger problem is application compatibility.

There's already support for targeting both ARM and x86 architectures in the Android NDK so anything developed going forward should be ok so long as the developer is aware of x86.

Obviously the first party apps already work on x86, but what about those in the Market?

By default all Android apps run in a VM and are thus processor architecture agnostic. As long as the apps are calling Android libraries that aren't native ARM there, once again, shouldn't be a problem. Where Intel will have a problem is with apps that do call native libraries or apps that are ARM native (e.g. virtually anything CPU intensive like a 3D game).

Intel believes that roughly 75% of all Android apps in the Market don't feature any native ARM code. The remaining 25% are the issue. The presumption is that eventually this will be a non-issue (described above), but what do users of the first x86 Android phones do? Two words: binary translation.

Intel isn't disclosing much about the solution, but by intercepting ARM binaries and translating ARM code to x86 code on the fly during execution Intel is hoping to achieve ~90% app compatibility at launch. Binary translation is typically noticeably slower than running native code, although Intel is unsurprisingly optimistic about the experience on Android. I'm still very skeptical about the overall experience but we'll have to wait and see for ourselves.

 

What's Different This Time Around: Google & A Sweet Reference Platform Final Words
Comments Locked

164 Comments

View All Comments

  • Dribble - Thursday, January 12, 2012 - link

    I see fudzilla managed to get a BenchmarkPi score:
    The HTC Thunderbolt (Snapdragon 1GHz): 888ms
    Lenovo K800 (1.6Ghz Atom): 743ms
    LG Optimus 2X (Tegra 2): 550ms
  • french toast - Thursday, January 12, 2012 - link

    Yea when you get past the Intel marketing and start digging you find its not really thtat special when compared to last years designs. hers some more. Intel medfield 3791 quadrant. samsung galaxy note @1.4ghz 4300+

    http://www.youtube.com/watch?v=k2SzV_bl76k

    If you level the clock speed and use the same software on the ARMs you would get better than this in cafeinemark;

    http://androidandme.com/2012/01/news/intel-medfiel...

    Add that to the other links i posted earlier, and do some multithreaded tests and the Atom doesn't look that impressive compared to duel core A9s on 40nm...let alone quad core kraits on 28nm...
  • dwade123 - Thursday, January 12, 2012 - link

    Give a a few years and we 'll see Intel dominating this market.
  • Targon - Thursday, January 12, 2012 - link

    This is a single-core chip....in an environment that is already going to be dominated by dual-core chips by the time it is released. What is Intel trying to do, emulate Palm, who would announce something that sounds great, then a year later when product is actually shipping, seems pretty weak? Palm died as a result(even though it was under the HP umbrella at the end), and Intel is just following that example of what NOT to do.

    Intel may have process advantages, but Intel doesn't do much when it comes to real innovation.
  • happycamperjack - Thursday, January 12, 2012 - link

    Judging from the BrowserMark and SunSpider, Medfield has tegra 3 beat for about 10% to 30% in a more single threaded application. But in a more threaded application such as photo editing apps, some games and also multitasking, Tegra 3 would come out on top. Not to mention Tegra 3 would probably do a lot better in battery life and 3D games as well.

    But backward compatibility for lower end Windows 8 tablets? Yes please!
  • Lucian Armasu - Friday, January 13, 2012 - link

    A 10% performance different shouldn't be surprising, considering Intel Atom is running at 1.6 Ghz and Tegra 3's first core is running at 1.4 Ghz. This only means that a Cortex A9 core is about as powerful as Atom at the same clock speed. And by the time it's out it will have to compete with Cortex A15, which is twice as powerful as Cortex A9 for the same clock speed. Plus it will be dual core vs the single core Atom. Krait chips should be in the same ballpark as Cortex A15, perhaps a bit weaker, but still much more powerful than Atom.

    As for the compatibility with Windows 8. I don't understand what's the benefit of that? To use programs that are not optimized for touch? Why? If that was such a big deal, you could already use Windows 7 tablets. Whether Microsoft is pushing for ARM tablets, or x86 tablets, they still have to start from scratch, because they need apps that are fully optimized for touch, and not for the mouse. So in this case x86 has no advantage over ARM, at least not more than it already had in the Windows7-era. And if Microsoft were smart, they'd actually push the ARM tablets instead to compete on battery life.
  • happycamperjack - Friday, January 13, 2012 - link

    You don't understand the benefit of backward compatibility?? Are you serious?? How about instant access to biggest libraries of applications ever while Windows 8 apps have time to mature.

    As for the performance of the chip, I was disappointed about Intel's SoC until I realize that it's actually running android 2.3. So it would be more fair to compare the performance against another Android 2.3, Galaxy S II, which benchmarked at half the speed of Intel! But it's GPU is definitely garbage.
  • thunng8 - Friday, January 13, 2012 - link

    The Motorola RAZR is also running 2.3.
  • french toast - Friday, January 13, 2012 - link

    What has been misleading about the Intel pushed benchmarks in this article, is that although the Medfield runs Gingerbread, it also run a heavily updated varient.2.3.7..which according to the boys over at xda, has been optimised to near ICS levels..
    Note that the phones benchmarked against it run stock Gingerbread which can be noticebely slower on older versions.

    Another thing to note, the phones benchmanrked against, also have heavy custom UI skins over the top..aka sense/touchwiz which saps power, hence why uses prefer to root their phone..for that very perforance enhanced reason.
    -Where as the Medfield reference phone does not.

    If you level all software equal, i very much doubt the Medfield would have a lead in any benchmark, and in some cases would likely lose, such as graphics, multhreaded, and battery use scenarios that stress the cpu.

    That is against phones that have been on the market 18months or so by the time Medfield ships AND are lower clocked A9s.
  • CUEngineer - Friday, January 13, 2012 - link

    You guys are hilarious... Obviously there will be an optimized OS version that google and intel worked on, since its using a different ISA then arm, they need to optimize the binaries to do things such as take advantage of instructions intel adds for performance which no ARM IP licenseee company is allowed to do... Any good company will optimize software to run on their hardware to give better results and that is valid...
    Intel has been doing high performance designs for many years now, ARM just designs their IP to work simple and without consuming much power, so it wouldnt be hard to think that intel analyzes certain performance features differently such as handling hits under misses and taking multiple miss requests without bottlenecking the system... an out of order CPU could make this impact less since other instructions might be able to be scheduled while waiting for the miss to be completed..
    Either way all you folks should worry about is how close those power numbers because once intel gets in this space it is going to dominate, and will have attractive offerings since everyone else is basically using the same IP from arm with different wrappers...

Log in

Don't have an account? Sign up now