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
POST A COMMENT

164 Comments

View All Comments

  • Penti - Wednesday, January 11, 2012 - link

    And it doesn't matter since the SoC's or rather CPU's aimed at Windows x86/64 tablets and Windows appliances does have SGX545. Windows 8 and Windows Phone (CE based) are two totally different OS's any way and Windows Phone is having a hard time just to support Qualcomm Snapdragon S1 and S2. I don't want to run Windows 8 Ribbon/MFC/WPF software on a phone platform neither do you. Microsoft won't support Windows Phone on x86. Microsoft won't support Windows 8 on this.

    They will as in Microsoft on Cedar Trail-M if PowerVR and Intel which have to ship them ever get their poor Windows drivers working. PowerVR/ImgTec aren't known for their Windows driver quality.

    In a tablet and even tablet-PC (which Microsoft is still going for) it's mostly the screen that uses power. It doesn't matter if the cpu and chipset uses the 5W TDP plus 2.1W TDP it's still more power efficient then anything else running Windows (NT). It's just a few watts and a screen that will use just as much if not more power. In a phone on the other hand you can't have massive batteries and screens.

    Intel is aiming the SoC towards Android handsets and tablets i.e. pads not tablet-pcs. They don't list DX support or even Windows Embedded support. Neither does it support more then 1GB of ram. It's built to interface with modem (baseband), LPDDR2, HDMI, MIPI-DSI, USB Phy, eMMC, with camera modules not with ordinary PC hardware topology of DDR3, PCI-e, LVDS/eDP, South bridge chipsets containing basic I/O. As well as support for USB, ethernet, SATA and whatnot in the SB. Memory will come included in the package too. Simply another platform.

    Not for powering Office 2010 and Visual Studio 2012. Look for other chips there.
    Reply
  • MySchizoBuddy - Tuesday, January 10, 2012 - link

    This would be very interesting if it is launched TODAY not end of year. Reply
  • tipoo - Tuesday, January 10, 2012 - link

    Yeah, that's why I'm wondering how it will perform against chips its actually going to compete with, namely Cortex A15 designs. The gap here is pretty big, but not insurmountable I think, and the A15 looks promising as well. Reply
  • tipoo - Tuesday, January 10, 2012 - link

    Colour me impressed! This looks like it will be a rather disruptive SoC, especially with ARM Binary Translation. The nice thing is its a single core so developers don't have to optimize for two or four cores to get maximum performance. Although, I wonder if something like the quad core Tegra 3 would be able to best its performance if everything was more optimized for multicore? And more importantly, how will it fare against Cortex A15 designs. But, yeah, I'm excited for this, even more so for the variant with the 543MP2. Reply
  • Morg. - Thursday, January 12, 2012 - link

    ARM binary translation will be slow ... like real slow.

    It's like a VM but on a different arch.

    The tegra3 is just slightly slower .. on 40nm

    Against A9 on the same process, ARM wins, against A15 ARM butchers.. nothing really different in the end - just that Intel can only count on process advantage to keep more or less in the race (so far).
    Reply
  • milli - Tuesday, January 10, 2012 - link

    Jason, yes I'm talking to you Jason Mick: oh how much you look like a fool now. Many people (including me) tried to warn you about your wrong article. Reply
  • DigitalFreak - Tuesday, January 10, 2012 - link

    Wrong site, foo. Reply
  • Iketh - Tuesday, January 10, 2012 - link

    I was thinking about that the entire time I was reading this. Reply
  • bji - Thursday, January 12, 2012 - link

    What are you guys talking about? Reply
  • mikeepu - Thursday, January 12, 2012 - link

    At first i thought the same thing as DigitalFreak, but i thought about it and went back to Jason Mick's article last month http://tinyurl.com/JasonMicksMedfieldArticle and found your comment. Yes. Yes, you did. Reply

Log in

Don't have an account? Sign up now