A couple of Android engineers, the Romain Guy and Chet Haase made an interesting post today on Android Developers. As if I needed another reason to drool over Android 4.0, turns out that for the first time ever — Ice Cream Sandwich will turn on hardware acceleration by default. This is the same hardware acceleration found in Android 3.2 for tablets but in that version, it required a developer had to enable GPU acceleration with a simple line of code.
So, what does this mean for the regular ‘ol end-user like you and me? Well, this will translate into an all around smoother and faster UI. Things like menu’s, scrolling and various animations should be more fluid and responsive in all apps regardless of whether a developer enables GPU acceleration or not. It’s one small step for man but a huge leap for Android.
If there’s one thing that’s always irked me about the Android UI, it’s the fact that in most cases, it’s choppy. Having a smooth and responsive UI is actually one of the (very) few things I envy about iOS or WP7. Just add this to the ever growing list of reasons why I absolutely cannot wait for Android 4.0 Ice Cream Sandwich. Hardware acceleration? Check! V’room v’room!
[Via Android-Developers]
Must.get.CM9.for.my.evo…I will saw off my right arm for a chance to get a galaxy nexus though.
I don’t know about you, but it would be pretty hard for me to use a smartphone with my right arm… especially when you want to…WOW that came out wrong..
o.O
Lol, thats perfect. That’s a good point..I suppose ambidexterity should be a learnable skill at that point, yeah?
What Mitchmoney meant was, how will you use the Galaxy Nexus to watch porn with only one arm?
eww.. you got a sick mind buddy.. a was talking about texting with only one arm would be difficult..
It is nice to see a stock UI that I will not immediately replace with a third party launcher.
Totally agree.
I pretty much agree, although have been using stock gingerbread UI for quite a while now. I just really hope they have redone the phone dialler so it is like the HTC one!
I have always hated this also and have looked for an app that just replaces the dialer while still connected to stock contacts. But i have come to realize that they will not replace it with a smart dialer because of the Google search bar where you can choose to only look through contacts.
Well I guess its cool and all,but thw galaxy s2 is the smoothest android yet. Just try it and see.
Well, its on by default by apps developed at the new API level (14). Legacy apps need to add one line to enable hardware acceleration to their apps.
But from here on out — it will be on, right?
I think in some cases developers will need to turn it off if their app performs worse with hardware acceleration.
True hardware acceleration comparable to iOS and WP7 is still a mystery in my book. I expect all the Google apps to be great, and I’ve seen videos of a GPU accelerated stock 4.0 browser. I believe GPU acceleration is used in the
gallery app with the panoramic and basic photo editing features. But from my understanding this link doesn’t speak to the performance of the overall UI.
Also, I think 4.0 will give phones better optimization for dual-core, which may help with performance.
Multi-core processing is handled by the underlying operating system… LINUX, which is ***THE*** high end multi-user-multi-core operating system. No additional provision is required. Certain APPLICATIONS, which may have been single threaded, could have required modification to make use of multiple cores, but that’s up to the specific application’s developer(s). For example, an application that does all of its heavy processing in a single thread will only utilize a single core. If the application splits the work between 2 or more threads, each thread will be able to run simultaneously when multiple cores are available.
For what it’s worth, just about every app I use (and the core OS) is silky smooth on the Galaxy S 2. I just hope that 4.0 keeps things as smooth as 2.3 is on my GS2.
That’s because of how beast the SGSII is lol. The hardware acceleration will make it just as smooth (or at least a lot smoother) for phones with lesser hardware. This is how the iPhone 4 has the exact same hardware as the SGS, yet the iPhone 4 is magically smoother. All comes down to the that hardware acceleration.
I also have heard that TouchWiz is tweaked to allow hardware acceleration in the UI. That’s a huge reason it is so smooth, so ICS is just bringing that to everyone!
SGS has faster hardware than the iPhone 4. PowerVR SGX540 vs PowerVR SGX535. 540 is a lot faster and carries out more operations per second.
That just proves Kyle’s point that hardware acceleration makes a big difference on performance of the UI.
If you are using the stock ROM you should know that Samsung actually took the step of adding hardware acceleration to TouchWiz.
Really? I had not heard that. I heard that it was the quad-core MALI GPU that Sammy dropped into the GS2. But whatever they did, it absolutely worked — it’s as smooth if not smoother than the iPhone.
Mali-400 is a dual-core GPU.
they say quad-core here: http://www.anandtech.com/show/4760/arms-mali400-mp4-is-the-fastest-smartphone-gpufor-now)
Quad-core? Really? Can you point me to where it says the GS2 is quad-core?
On anantech: “Samsung implemented a 4-core version of the Mali-400 in the 4210 and its
resulting performance is staggering as you can see above. Although it’s
still not as fast as the PowerVR SGX 543MP2 found in the iPad 2, it’s anywhere from 1.7 – 4x faster than anything that’s shipping in a smartphone today.”
(http://www.anandtech.com/show/4760/arms-mali400-mp4-is-the-fastest-smartphone-gpufor-now)
That’s pretty cool actually. There’s no use for it just yet as games for android aren’t pushing the limits but I’m sure it’s useful for the GPU acceleration of the UI.
——————————
Been waiting for hardware acceleration since I was on froyo, thought gb would bring it, then honeycomb and now finally ICS has it!
Honeycomb has it.
I think that is awesome but my hope is that once ICS makes it to the HD2 that it will be able to take advantage of hardware acceleration considering the older hardware.
Sweet. Nexus for me!!
But I don’t think they have fully implemented hardware acceleration in the launcher UI yet.
Pretty sure it’s there in the stock ICS launcher. Looked smooth as all heck in the videos..
The launcher was accelerated since Android 2.something. I forget which.
Chris, how are you just finding this out? This has BEEN known.
T’was just posted today. o_O
Check the source link.
I’m not saying this was NEVER known. I posted this for those who DIDN’T know (like me) until those Android engineers made their post today.
And while I did know that ICS would bring GPU acceleration, what I never knew is that unlike 3.2 — it would be enabled by DEFAULT. No need to do anything =)
If I’m not misreading it, it’s only enabled by default for “all apps” that target API level 14 (i.e. v4.0):
“In Android 4.0 (API level 14), hardware acceleration, for the first time, is on by default for all applications. For applications at lower API levels, you can turn it on by adding android:hardwareAccelerated=”true” to the tag in your AndroidManifest.xml.”So, if the app was configured for earlier versions of Android, the developer still needs to include the configuration change to enable hardware acceleration (even if running it under Android 4.0)…
Yeah, I was wondering that. Do developers usually update to the newer API levels?
I was playing around with Android game development for a little while and from what I could tell most developers actually use the lowest API level they can that still allows all the features they need, while allowing them to market to the largest audience possible(people with outdated phones).
Well that sucks (and makes sense).
Ye but there is a difference between keeping “minimum api level” as low as possible to maintain comparability. And to not update the “target api level” tag. Which is the one in question here.
Aha, I had a feeling I was missing something! Thanks for clearing it up morten.
The API level of the application should only be increased if the application REQUIRES features that are only available in the newer API. The option to add that tag to the manifest enables one to target a lower API level while enabling this new optional feature.
I wonder if someone could make an app that would automatically add that line of code for every application on the phone…
It´s not that easy to add a line on the manifest file (the one where you have to add that line) of every apk file. When you change the apk´s files you have to sign it again, which you can´t do on the phone. However, you can change the android´s source code and create a ROM which ignores that line from the manifests and always sets the acc. to enabled
It wouldn’t actually involve modifying the applications, just the PACKAGE MANAGER. When an application is installed, the manifest is read, and most aspects of it are stored in /data/system/packages.xml. You would simply modify that file, sync, and reboot. Then hardware acceleration would be enabled for ALL applications (or at least for the ones that were overridden).
LOL the funniest part is that Quentyn posted it on THIS SITE back in October. Don’t you read Phandroid? :P
https://phandroid.com/2011/10/19/android-4-0-ice-cream-sandwich-has-hardware-acceleration/
This really have to be a major selling point for me. This tips the hat in favor of the Nexus a lot. Biggest problem I see is:
-Porting ICS MUST disable the hardware buttons on the bottom
-Successful ports will now have a lot of useless dead space at the bottom of the phone
What in the world are you talking about? SDK ports have already been shown on the Nexus S with the hardware buttons working and no screen space wasted.
Yeah. It was confirmed shortly after the announcement (if not during) that phones with hardware buttons will work as they do now and will not include virtual buttons on top of it.
Just wondering…is the iPhone never choppy? I just saw the Stuff.tv video review of the GN and in some places…it looked slightly choppy.
I’ve noticed it tends to stumble with Flash.
that made me smile :)
iOS is VERY smooth. When you scroll and swipe, it’s almost like the interface is connected to your finger, it’s really amazing. I’m looking forward to having an Android phone that feels that good.
Maybe that wasn’t the final release?
Try the galaxy s 2,there is no choppiness there.
i have not seen the stuff.tv video; but i have seen a lot of videos of the galaxy nexus (i cant wait to have one :( ) and it seems to be really really smooth.
Appart from some cases where it is not, but you can also see the video was taken on an old version of the nexus/ics (launchers icons, colors are those of gingerbread).
Anyway, we should wait for the final release to make our opinions.
Am I missing something or was this not already stated at the keynote?
so Romain is now THE Romain Guy?
Let’s be honest here (in case anyone from Google is reading this):
3 years(?) behind iOS for hardware acceleration. There’s almost ZERO excuse for that from a world-class organization of 20,000 employees, but I’m glad they finally made it.
*Insert iOS copy+ paste joke in here*
Dude, bringing hardware acceleration to a system like Android, which is basically running on a Java virtual machine, is massively different that bringing it to iOS which is by default running on an openGL canvas. It’s required a monumental effort which I’m glad is finally finished.
The order of events was:
Live Wallpapers – (2.1) these debuted the Renderscript pipeline that could run hardware acceleration in parallel with the Dalvik VM
Honeycomb – (3.0) was the first time that it was shown that the underlying UI could be run using Renderscript acceleration but was capped at 30fps because HC was hacked together.
ICS – (4.0) full 60fps hardware acceleration of UI elements whilst maintaing the Dalvik VM app security model. A tremendous achievement.
Android is now better placed than iOS or WP7. It will now run smooth on yesterday’s and today’s top end hardware whilst also having versions (2.3.7) that will run on anything – coffee-machines/smart-home equipment/watches you name it – and not need a GPU.
I just wonder what HTC will do with an almost perfect and polished UI?
HTC will most likely slap Sense 3.5 over stock ICS.. which is a bummer…
They’ll certainly make an ugly, bloated, irritating, POS UI overlay, like they always do. SENSE DIE DIE DIE YOU POS!!!
GPU Acceleration just makes my heart melt with Android UI. Can’t wait to upgrade to my next phone.
This (on release of the phone), the camera (zero shutter lag), and the updates straight from Google are why I’m getting the Nexus over the RAZR. I am too excited for ICS to wait any longer than I have to!
The Menu and scrolling on my OG Incredible is smooth – but it’s the responsiveness that I really want. I don’t like that elastic bouncy lag that the UI gives under my finger, whereas iOS and WP7 are waaaay more responsive to the touch.
Hardware acceleration is a huge plus all around. I have a live wallpaper called “Nexus Revamped Pro”, I bought it before the “Nexus” live wallpaper was available to everyone outside the Nexus One, and it features Hardware acceleration. It’s the only live wallpaper to NOT lag my homescreen that I have, and it’s really good on battery, I don’t notice a change at all with it.
There goes the only advantage iOS and WP7 had. Well Siri is one, but that’s just a matter of time until an app will be as good or better.
siri isn’t an advantage Android has had the same damn thing for a while as a matter of fact wth do you think the genius button was?
Try vlingo
https://market.android.com/details?id=com.vlingo.client&feature=search_result
I wish Samsung would accelerate their hardware manufacturing process and get me my damn Nexus already.
so i guess in the galaxy nexus demo it wasnt turned on? it looked pretty choppy to me
xXxVirusxXx has had GodMode for 6 months. This doesn’t surprise me.
good call from google : adding the hardware acceleration in honeycomb as an opt-in (but awesome) feature then making it the default for ICS is the way to go.
With this approach, devs have no excuse to do not adapt their code to use hardware acceleration.
the “check v’room v’room” thing…. lol