Tuesday, December 6, 2011

Google’s Dianne Hackborn talks about hardware acceleration in Android, says it had it in it all along






Every time an Android device skipped a frame someone somewhere blamed it on the lack of hardware acceleration. Ice Cream Sandwich was hailed as the first iteration of Android to bring hardware acceleration, even though Honeycomb has been doing it all along so did the older versions of Android, to some extent.



As you can see, there is a lot of misinformation regarding this particular topic and so to address this, Google’s Dianne Hackborn decided to write a lengthy post on Google+ and put the issue to rest once and for all. She touched upon multiple points and I’ll attempt to summarize the important ones below.


First of all, as mentioned before, Ice Cream Sandwich is not the first version of Android to have full hardware acceleration. Honeycomb has had this feature since the day it came out. Also, even previous versions of Android, right from 1.0, have had some form of hardware acceleration, although the majority that was the rest was done by software/CPU.


You don’t necessarily need full hardware acceleration to have 60fps UI speed. A phone with fast enough CPU can achieve this. By “fast enough” I mean something like the Nexus S and not necessarily the newer dual-core phones.


The difference between Android 3.0 and 4.0 is that apps targeting 4.0 will now have hardware acceleration enabled by default. You can also force it now but it is not recommended as for apps not optimized to use the GPU as it would cause more harm than good. It would be better to wait for a version optimized for 4.0 to come out and then let it enable it on its own.


Hardware acceleration is not the quintessential solution to a smooth UI. It has a great impact on the hardware, especially the RAM. You can’t just enable it and expect everything to magically become smooth. In some cases it can make things slower, as it did on the Nexus S. Which is why, unlike the Galaxy Nexus, the Nexus S won’t be using hardware acceleration throughout the UI, a compromise that had to be made to make it work well.


There are a couple more things discussed in the post but I would suggest you read it in the source link below. Once you’re done with it, you can also go through the comments as there are some interesting points being made there as well. It would have been nice if Hackborn had taken some time to answer some of the questions there, though.

No comments:

Post a Comment