Google engineer tells us why iOS will remain more fluid than Android OS

December 6, 2011
33

We may be die-hard Android fans here at Android Community, but we've all at least given iOS a chance to shine its light. One of its best features is handling UI actions perfectly, thus leaving the user willing to wait for longer page loads. Over on Google+, Google engineering intern Andrew Munn explained to us precisely why Android OS will never be as fluid as iOS or Windows Phone 7 devices.

What it boils down to is that Android OS renders all graphics continuously - and on the same priority. What differs in iOS and WP7 is that graphics rendering is queued for when it's needed. This is why when we open many applications at once within Android, we see the device start to slow down as it tries to keep up. In iOS, if an application isn't done loading and you start touching your screen, it will only finish loading when you release your finger. This also helps keep the device from working to hard on multiple tasks - which eventually drains your battery.

Put in Munn's words:

It’s not GC pauses. It’s not because Android runs bytecode and iOS runs native code. It’s because on iOS all UI rendering occurs in a dedicated UI thread with real-time priority. On the other hand, Android follows the traditional PC model of rendering occurring on the main thread with normal priority.

Personally, I love the way Android OS allows loading simultaneously to UI interaction. I'm pretty good at gauging the device's capabilities to the point where I'll know when the system may start to slow down. Also, hardware just keeps getting better and better. There will be a time when Android's "sluggish threshold" is much harder to reach than currently.

[via SlashGear]


Recent Stories
  • http://mobiletechview.blogspot.com J_Dav1

    I’m sure Android’s on demand design has advantages and with cpu’s that can handle the load faster we will start to see this sluggishness go away.

  • Joaquim

    Though I’m an Android fan, I find the queued rendering of iOS a better idea since it consumes less battery and doesn’t require as much CPU power. :/

  • Tin0904

    Although I am an Android fan, I also think that iOS graghic rending “style” is better
    not only save battery but also make the animations more sexy

  • Steve Lam

    “Also, hardware just keeps getting better and better.”

    This is a very lazy way to approach UI design. You can’t just depend on ‘better hardware’. Without proper, efficient software that can actually take advantage of hardware, you’re still going to be ‘slow’. look at the mess that is the blackberry playbook, a tablet with great hardware but horrible sluggish performance due to software crap like adobe air.

    • Michael Allen

      Funnily enough the good design (software wise) is Androids method. Think of a video game, what matters more? The graphics or the calculation? The calculations every time matter more, rather than preferring graphics over logic it prefers logic over graphics, so the framerate may drop but the game itself doesn’t slow down.

      Thats the same approach Android takes. So if something logic heavy causes a UI slowdown you can be guaranteed that atleast the logic will happen as quick as possible, leading to less slowdown in apps but married with the possibility of graphics stutter.

    • http://www.facebook.com/profile.php?id=708677298 Alf Lenni Erlandsen

      And… Since all manufacturers get better hardware Ios and Wp will still be faster. Unless, Google attempts to use the newest and best first, which they sorta do with their Nexus series. In short: Android will always be a bit slower, but thats ok.

  • 2435

    Just try to comment

  • 28765

    fefefefef

  • http://pulse.yahoo.com/_GEHFXH67KK5NVX6X7PBMFVPXPA Infrared

    As long as ICS offers a visible improvement in speed over Gingerbread/Honeycomb, I’ll be satisfied. Looking to speed up my underperforming HTC Sensation, and I’m also hoping the TF Prime will be very smooth with ICS as I’m possibly getting one.

    • http://www.androidcommunity.com Cory Gunther

      My sensation on CM7 works very well.. blazing fast, but yea I’m excited for ICS too

  • Anonymous

    So Android is slow because its interaction framework is designed poorly and they don’t want to fix it. Thanks for the explanation, Google.

    • Regularguy

      You’re an idiot. It’s designed differently and it’s not broken it just works in a different way. Don’t just post ignorant comments just because you don’t understand or like whats going on.

      • hmmm

        but at the end of the day, there’s lag… i don’t like excuses

      • Regularguy

        Yeah there is. It looks like it’s handled a lot better in ics though. Maybe because of the extra things rendered by the gpu.

      • Anonymous

        Not like my iPhone 4S didn’t lag to hell. My Android phone has less lag than my iPhone 4Shit. 3 days too long with that piece of crap 

      • Droidboy

        You’ve never owned an IPhone 4s. Your bs post is hard proof of that.

      • AJH1993

        Please go back to macrumors. 

      • AltayKai

        Youre a dirtbag.

      • AltayKai is a stupid Jap

        Says by a Japanese dirtbag.

      • Anonymous

        I’m not an idiot, I’m not just not an apologist. I’m an Android app developer (and I have been for years) so I have a pretty good understanding of how the system works. 

        There are virtually no perceivable benefits to the approach that Android is taking over the one that iOS and Windows Phone use. Failing to give higher priority to the UI thread means that mathematical calculations might complete faster, but you’re talking about a couple hundredths of a second at best. It’s trivial and nobody will notice the benefit. Meanwhile, there’s an extremely noticeable drop in UI performance that’s very apparent to every person that uses it. This design shows that Android’s engineers had a poor sense of priorities. 

        When you have limited resources you need to use them strategically in ways that will give you the biggest return. Actual Performance isn’t nearly as important as Perceived Performance. Making it *feel* fast should always be a higher priority than making it actually go faster. This is common knowledge among software developers. If you think you disagree with that it’s because you don’t understand basic software usability principles.

      • Precisi0n86

        Owned

  • Anonymous

    Oh, god. Erase this story. Now. This isn’t news. If you actually followed the Google+ conversation, even the author explains that his story is being incorrectly interpreted and had errors.

    As a developer I find these mis-informative blog posts very frustrating.

    https://plus.google.com/100838276097451809262/posts/fL5VacQMoKT

  • http://www.nerdshowandtell.com nerdshowandtell.com

    Bs story.. They guy doesnt work for google anymore, was just a lowly intern when he did, and never had access to any of the core source code he is commenting on… What a joke and troll post..

    • Dfgsg

      butt-hurt?

    • gegegegeg

      he never add access to OPEN SOURCE code that EVERYBODY has access to?

  • Yup

    Android used to be fast but then it took an arrow to the knee

    • AltayKai

      Shut up

      • AltayKai is a stupid Jap

        Butt-hurt, eh?

      • AltayKai

        making a discuss name just to use nasty words on me is simply the most saddest thing ive seen. wow..

      • voxnulla

        I actually think that making a Discuss account only to tell people to “shut up”, trying to negate their right to offer their opinion publicly, is probably more pathetic.

  • Tiago Franco

    So after all, the cause is a bad engineering decision. Makes sense.

  • Adey Jarvis

    so basically wait a few years before even considering an android phone. thanks, very useful.

  • http://www.facebook.com/albert.saintyves Albert Saint-Yves

    I’ve got my Nexus 4 today, website scrolling is very laggy compares with my iPad mini (even it has an ‘old’ hardware, it is more fluid than my Nexus 4). WTF.