updated 06:55 pm EST, Tue December 6, 2011
Android sluggishness dissected versus iOS
Recent Google intern and soon-to-be Microsoft intern Andrew Munn has given an explanation as to why many Android devices are considerably laggier and less responsive than iOS or Windows Phone devices. While iOS puts graphics drawing as a real-time priority and lets users manage which priorities can be rendered in the background, Android treats the interface as a normal priority. As a result, Android devices can often bog down when they're trying to conduct other tasks at the same time.
Some of the issues also have to do with more specific software quirks. Android doesn't do garbage collection, or cleaning up unused memory and processes, very efficiently. Its Gallery photo app has to run at 30 frames per second or less to avoid large "hiccups," Munn said.
Apple also had a superior compositing engine that reduced the workload on the main processor, and the Dalvik just-in-time Java engine wasn't as refined even compared to normally slow desktop Java interfaces. Google policy may have even played a role in software, since Android developers aren't encouraged to emphasize interface speed where iOS developers are more likely to pay attention to responsiveness.
Hardware choices were sometimes at fault. The NVIDIA Tegra 2 processors common to most Android 3 tablets and some phones had low memory bandwidth and lacked NEON media instructions, both of which ironically bottlenecked the graphics expert's chip in visual tasks. Benchmarks from early this year showed the iPad 2's A5 beating the Tegra 2.
Some of the problems, though not all, can be fixed. Android 4.0 has interface hardware acceleration and runs considerably faster than earlier versions. Dalvik is still being optimized, and apps can be written to get around some of the compositing issues. As long as visuals weren't top priority, however, a platform like iOS or Windows Phone was always going to be more responsive; a quad-core Tegra 3 like that in the ASUS Transformer Prime could still slow down where Apple's devices would be consistently fast.