• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

When will Google implement GPU-acceleration in Android?

Status
Not open for further replies.
WP7 looks smooth because what its drawing is very simple. Bunch of squares and tiles. What Android draws on the screen tends to be much more complex.
That's one aspect, but not the whole picture. The Android UI still is not hardware accelerated (it uses Dalvik still). WP7 is. Load the same large image on WP7 and a Snapdragon-based vanilla device, and you'll see a world of difference in zooming and panning. However, some custom UIs (like Sense and Touchwiz) are believed to offer limited hardware acceleration.

Screen animations on the Galaxy S is indeed smoother than on the Droid Incredible.
Comparing a stock Droid Incredible and a stock Samsung Captivate, I've found the opposite to be true. However, My Incredible became much smoother with 2.2 (when Dalvik got JIT, and Dalvik does not support hardware acceleration, hence why I'm of the crowd that believes Sense is not hardware accelerated, but I digress...). The Captivate was running on 2.1. We'll see how it does on 2.2.

When you run benchmarks---benchmarks themselves are not accelerated---there is a huge difference between the Galaxy S and Qualcomm 8250 numbers.
Like you, I've always maintained that benchmarks are nice, but they don't tell the whole picture. For instance, the SGX 540 benches 2-3X that of the Adreno 200. Playing NFS:Shift on both platforms, while the SGX feels smoother, the average person won't notice a huge difference. So I agree with you here.

Some of the redraw lags you see on the Galaxy S comes not from drawing speed, but from caching parts of the UI to the flash memory. Samsung's RFS can be excruciatingly slow at times, but it can also very quick once the cache is loaded.
But since 2.2, my Incredible has zero lag on the main UI. No lag > some lag, which even you are admitting to. So I'll just repeat that, thus far, my experience has been that the Incredible has smoother response than the Captivate. But, I believe that this is a combination of the UIs being software accelerated, better programming by HTC on Sense, and other factors. In hardware accelerated areas (Dungeon Defenders), the Samsung wins hands down.

Most live wallpapers are not as GPU intensive. Until once you see the Coca Cola holiday live wallpaper that is. Putting it on the Droid Incredible vs. Desire Z, the difference of smoothness between the two is apparent.
Just installed it to try it out. I don't doubt what you say, but why would I? Adreno 205 > Adreno 200. But, I wanted to try it out and see how it performed. Yup, it definitely lags! That's an area where I wouldn't be surprised to see OMAP and Hummingbird platforms (not to mention 2nd/3rd gen Snapdragons) kill the 1st gen Snapdragon.
 
Dalvik has nothing to do with being accelerated or not. WP7 apps run on a virtual machine for .NET, Graphics acceleration is done outside of the Dalvik.

I'm pretty sure the Galaxy S is smoother than my Droid Incredible when it comes to frame rates. Frame rates is just part of the overall feel of UI "smoothness". What you're seeing from the Droid Incredible is the benefit of faster caching, not graphics acceleration.

Benchmarks do isolate certain systems for testing. Apps don't do that Apps only tell the general picture. Benchmarks are specific. When you are hitting 55fps (Galaxy S, Nexus S) or 57 FPS (Desire Z), I'm pretty sure graphics acceleration is present in the OS.

Again, you're looking at Lag. Lag is more a factor of caching (I/O), taking data temporarily saved into the cache and draw them into the screen. You should look at framerate choppiness because FPS is the prime determinant of graphics acceleration. Graphics acceleration is about filling squares and surfaces. HTC Sense is accelerated. You know this when you swipe a square widget left to right and the square are does not flicker like its one solid object. In other words, all the bits drawn move as a complete square.

Bit blits is the simplest move a graphics accelerator can do. Android UI does that, and HTC Sense, Samsung Touchwiz does that even more.

Another function you can see is is how a frosted glass overlay would move on top of the surface beneath it with no flicker, like one solid object on top of another. That is another function of graphics acceleration and you can see this on the Android UI.

If you make a Friendstream widget, which is translucent, swipe it left and right and see how it draws over the background. Solid. That's another function of graphics acceleration. Even if the background is a live wallpaper the translucency is solid.
 
I think there is some excommunication between you and me. I understand graphics acceleration, and that the Droid 2/X/Pro, the Galaxy S, and the Adreno 205-based Snapdragons are better at graphics acceleration. Ad no time did I ever try to debate that with you.

Again, you're looking at Lag. Lag is more a factor of caching (I/O), taking data temporarily saved into the cache and draw them into the screen.
I'm sorry, I'll clarify my position on this. You stated this;

Screen animations on the Galaxy S is indeed smoother than on the Droid Incredible.
I stated that I disagreed. You then came up with varying reasons as to why the Galaxy S lags in response. To be honest, I don't care of the lag is caused by cache, garbage collection, or leprechauns, Sense UI has no lag on the Incredible when panning or zooming the interface, Touchwiz currently does unless you perform the lag fix. For other areas truly affected by hardware acceleration, I agree with you 100% and there is no need for further debate on that subject.

But, if you want to continue debating responsiveness of Sense vs. Touchwiz, I don't see that as productive either. I've compared my Incredible to the Captivate, and I find Sense more responsive. You've obviously found the opposite. I feel that we both have credible opinions as I have no reason to doubt your experience, only that I can relate to mine better.
 
Responsiveness has nothing to do with graphics acceleration. I am only telling you that Touchwiz is accelerated because screen animations (as in the movement of screen polygons)---not UI responsiveness---is indeed smoother on the Galaxy S. Lagfix doesn't introduce graphics acceleration, what it does is replace the Galaxy S file system with one of the Linux ones.

Responsivness has a lot to do with I/O and the Galaxy S has crappy file I/O. I believe lagfix introduces ext2 or ext3 into the Galaxy S instead, removing RFS. The Nexus S introduces ext4, replacing the standard Android YAFFS.
 
Responsiveness has nothing to do with graphics acceleration. I am only telling you that Touchwiz is accelerated because screen animations---not UI responsiveness---is indeed smoother on the Galaxy S. Lagfix doesn't introduce graphics acceleration, what it does is replace the Galaxy S file system with one of the Linux ones.

Seems you and I are discussing two different things. Like I said, I probably took it out of context. I thought you were talking about UI responsiveness when you were clearly talking about the accelerated animations.
 
Not a good website to test. Loaded the same site on my Droid Incredible. Zooming was a smooth, but scrolling was a little smoother on the Galaxy. Still, I have no doubt that if they loaded a website like NFL.com - Official Site of the National Football League, we'd see a much better difference there. The stock browser on the Incredible lags horribly there when zooming, panning, or scrolling. Dolphin HD is better, but still not like what we saw there. Good job Samsung.
 
Um I stopped reading after this. The rest of the post is not even worth reading. Must be a Microsoft employee.

I think he's just talking about UI performance, and if so, he's correct. Both the iPhone and WP7 use hardware (GPU) acceleration for the UI interaction. Stock Android does not, though some companies (HTC, Samsung) are adding more GPU accelerated aspects to their custom UIs with every release.

Here's the current Google Code thread on it (I have it starred);
Issue 6914 - android - Make android use the GPU (if available) for UI and browsing. - Project Hosting on Google Code

And here's a Google employee/coder's response to it:

This is something we've investigated a couple of years ago already and that we revisit
regularly. Of course we thought of using the GPU, but there are non-trivial issues on
many Android devices (a G1-class device for instance supports only one OpenGL
context at a time, which would prevent you from using any OpenGL based app like
games or augmented reality apps.) In our past experiments we even found many
cases in which using the GPU was slower than normal rendering.

New devices might allow us to overcome the past limitations that made GPU support
a not-so-good solution.

The "choppiness" and "lagginess" you are mentioning are more often related to heavy
garbage collection than drawing performance.
 
WP7 1.0 leapfrogged Android 2.3, iPhone leapfrogged Android on it's first release also, Maemo also blows it out of the water! Android had multiple major updates, but stil fails to make a smooth browser experience, and WP7 blows it out of the water on it's first try! (1.0)

Seriously, when will Google take the smoothness in the browser seriously? They are far behind!

But let's be fair here, the speed, the rendering and all is very very nice, blowing the competition out of the water, only UI and smoothness is remaining in the Android browser departement.

Still waiting for you to ever refer this to any specific handset you've personally used running Android.

Just one.
 
Also, if you think Androids browser, lets say G2, is more smooth than iphone, than ypu're living in denial.

There's advantages to each. I've stated that I own a Droid Incredible (similar to the G2, slightly faster CPU, slower GPU), and my wife owns the iPhone 4. I also recently sold my Zune HD, which like WP7 and iOS, is all GPU accelerated.

With that said, I find the GPU accelerated hardware to be smoother, but artificially responsive. On Android, there are definitely web pages that lag, often ones that are heavy in images and/or flash content. But even on those, when I pinch to zoom, it seems like the page responds to my touch. If my two fingers start on two specific points at the beginning of the animation, they will end on the same points ad the end of the animation. On iOs/WP7, and Zune HD, the screen outpaces your movement. The smoothness of the animation is more important than the accuracy of your touch.

So yes, iOS is smoother. But going by the dictionary definition, Android is more accurately responsive. You can tell that Apple prioritized the user experience and has been playing catch-up on features, whereas Android is the polar opposite. Eventually, they will both meet in the middle, but because Apple has an intentionally locked down system, I'm sticking with Android.
 
Also, if you think Androids browser, lets say G2, is more smooth than iphone, than ypu're living in denial.

You seem to want to beat this horse and accuse others with different opinions of living in denial.

Even if someone engages you on key points you make, you seem to shift the argument and repeat yourself.

It's the second thread on the same issue.

I wouldn't be happy with a stock iPhone, but those are the only ones I've used at length (not demos or quick looks - at length) and I wasn't happy with my phone stock, so it behavior is based on its souped-up kernel.

Therefore, if I say my phone doesn't succumb to your claim, you can't accuse me of living in denial - you've not seen it, and I'm representative of many rooters.

Your persistent attack on the browser is baffling. I speak as a mod who has just had to merge two threads that are essentially identical in intent.

When someone makes the perfect phone, I expect we'll all buy one - I will anyway, and I won't care who makes it.

The stock Android browser shares much of the same open source codebase that Apple's own browser uses - indeed, much of the code in that repository came from Apple.

Each maker optimized from there. If Apple did a better job of making their code with their specified hardware smoother for their stock product compared to others, so be it.

As Medion points out, there's other factors to judge a browser on and as I point out, that doesn't make anyone disagreeing with your viewpoint delusional.

Now, I have simple questions -

  • What is the real point of this thread?
  • What are you trying to achieve here?
  • What is it you want?

Before, I engaged you as a user - please note that now I'm engaging you as a mod. I not accusing, I'm asking for answers to those questions.

FWIW - I've enjoyed these threads for what I've learned that I thought I knew before - I hope others feel the same way.

But I've yet to learn to accept that I should feel shame and develop envy for other products or allow continued snide remarks against those with other viewpoints, and that's how the constant, repetitive arguments are appearing to me at this point.

I applaud all of our community for meeting your technical claims head on and at face value and not succumbing to the flame wars so endemic of other forums when facing similar challenges.
 
NO, that's a different user with some Android enthusiasm on one hand and this issue on the other - perhaps the confusion is all mine, but I got the job, so I ask. ;)
 
Was an interesting comparison. The author states that the two Droids were running Android 2.2, but I'd have to question how. He uploaded the video on July 3rd. The Incredible 2.2 OTA landed in late August (roll outs started on the 26th). The X was a month later. Since 2.2, the Incredible is MUCH smoother, but, still not quite as smooth as the iPhone 4.

I agree with you that Google needs to start adding GPU acceleration into their user interface. Doing so would help cut down on these 3rd party interfaces, not that I have anything against choice. However, right now you're just beating a dead horse. For two pages, you're screaming about the same thing. Look at one of the first responses you got on page one. There's a link to the Google Code discussion on this very subject. It is a priority.

For a smooth UI, there's no denying that WP7 and the iPhone are ahead of the game right now. But that's one feature of many. You need to take the features you want, weight them against each other, and pick a phone that best gives you the features you want. No phone is perfect, it will be a compromise. For me, it was the Droid Incredible. For you, it just might be an iPhone. I say go for it.
 
I don't trust out-of-the-box shoot-outs because most phones I've used has every cpu-wasting feature turned on and I don't know - personally - how to discriminate those shoot outs against reality or what the reviewer was on about.

Out of the box, my Evo was buttery smooth - laggy as my old yellow hound dog but smooth and not near what I enjoy now, but buttery smooth.

As a CDMA owner, I've used iPhones (from company pool or co-workers - including extensively the iP4) while on travel needing that GSM goodness. Maybe if they'd offered a non-AT&T alternative years back, I'd have an iPhone. I always found the overall desktop interface to be too much in my face, but past that, the apps worked great and the Apple browser was the first on a cell phone that I'd ever used that just worked right, in my opinion. Those were, for obvious business reasons - not jailbroken or tuned.

The Droid is an earlier effort and while it allowed people to explore new phone boundaries, I don't consider its comparison relevant today. It's fine for what it is, but an iPhone - like a Samsung Galaxy-class, an HTC Desire-class or the Droid X are more what I'd characterize as superphones - a step above smartphone because of deep memory and user satisfaction with near-laptop utility because of the ability to add productivity apps.

I've already conceded - while hinting at my background as Mach kernel dev among other things - that Apple does many things very, very well (and I did not work for Apple, just for the record).

Here's the foodchain, we all know it -

App running under vendor-specified launcher running under Android OS running within the constraints of a device-specific kernel running on a motherboard containing a lot of important silicon, including the SoC processor that other threads are nutz about.

Apple is not a software company - Apple is a hardware company that makes incredibly good software to showcase and sell their hardware.

Apple completely specified the iPhone hardware and controls its updates to differentiate itself as special in the Market.

The only phone I know that's close to that is the Google Nexus - but it's platform mission isn't to differentiate itself as the better Android - it's always to drive home the point that the Google phone proves to all errant vendors that the basic performance claims and features can be met with an existing popular platform, and therefore (from their POV) light the way for users to expect things without drinking the "but Android is so difficult to implement" Kool-Aide.

Evo and Droid X and Samsung Galaxy-class rooters will all attest (ok - some might attest, I went overboard there) to superior browser performance after installing a custom kernel and tuning things.

If your point is that out of the box and as configured, the iPhone browser has some superior characteristic (whatever it may be) and that's what many people see in the comparison - well - ok.

What I see - for my own beloved Evo, for the Droid X, for the iP4 - is that as consumers, it's us against them - they'll go as far as they have to, then slather the rest with marketing. In Android's case, the various vendors have ROI objectives that in their mind allows compromised performance. I can safely level the same claim against the entire iOS - Android is more like the early Darwin/OS X days in platform potential than Apple is ever allowing iOS to be.

To the topic at hand - browser performance.

You measure by smoothness, I claim to have an out. I also claim with candor that I've no idea how a properly-tuned jailbroken iP4 will perform against my phone. I claim similar smoothness and I know there's no comparison with rendering speed - my older-generation processor with a custom kernel will speed through long forum pages in ways that a stock iP4 only dreams about.

But if the browser is about information, why not attack a real issue, rooted at the app, and not at an unknown lower layer (to whit - is this smoothness of which you speak an app issue, an integration issue or a tuning issue (with underlying s/w components such as the OS, the launcher or the kernel))?

I think the web is about information.

I think that all Android phones are lacking when running this simple test:

The HTML5 test - How well does your browser support HTML5?

My desktop Firefox hits 139 and 4 bonus points. My desktop Safari on SnowLeopard hits 208 with 7 bonus points. My Evo hits 176 and no bonus points. I have Flash so I win, but seriously against the open standard, I score low on html5 rendering of video support.

Tell me the iPhone or Win7 phone wins there and I'll concede victory to those platforms in that important area of information flow from the web.

Tell me that any single, tertiary metric wins on stock, never-used-in-my-experience configurations and I remain confused.

I can't agree that the iPhone4 is superior in that particular way - I can only concede that out of the box, it simply sucks less than the phones in the comparison video (none of which, including the iP4 are showing their true strength).

World of difference between sucking less and getting something right. More so when also considering configuration.

That's my answer as a user.

I went to this trouble of posting for one reason: that any reasonable single user perspective deconstructs any absolutist statements, example given, the claim that people disagreeing with an unconstrained premise are living in denial.

Now - how does that answer shape my original questions to you as a mod?

What's the point of your quest here?

What is it you want to establish or prove - or discover?
 
Shoot outs are useless. Please note that in many of these videos, the iPhone would show less of a page while the Android browser would show more. Ergo, the Android browser would have to work more to display more of the web page. Yet despite having to format more of a page, the Android browser is more often faster, often equal to the iPhone browser.

The iPhone browser itself isn't very useful for me because it always have some issues reflowing text around the edges of the screen (doesn't). Thus, often have to display it on landscape to read a webpage text properly. This is contrast to the aggressive font resizing and text reflowing of the Android browser. Click on the paragraph and it often zooms to the right and readable size.
 
That still begs the question, why burden the CPU with that task when you have a GPU sitting there that can do it better? Which also allows the CPU to use more of its resources on other tasks.
I think miamicanes sums up one of the issues very well: expensive, proprietary, and heavily guarded GPU drivers.

But as you mention yourself, Skia has to support offloading the various drawing operations to the GPU (via OpenGL) in the first place. If it doesn't, the manufacturer of an Android phone would have to add this support themselves, even if they chose to purchase a GPU driver license.

It's probably relevant to keep in mind that if Skia starts supporting GPUs, and most phones get GPUs, they will become required to render the interface properly. In other words, if Android starts becoming dependent on the presence of a GPU in a phone, they would effectively exclude phone manufacturers not willing to license a GPU driver.
So Google has every interest in keeping Skia working kind-of-good on the CPU, because it means that more phone manufacturers are able to adopt Android - and it makes Android phones cheaper as well - if they don't have to license a GPU driver.

Android: Where is our GPU Acceleration!? - Page 3 - Android Forums

On another interesting note, I can see that a Google employee recently (December 22) has begun adding support for GPU rendering in Skia: trunk/gpu/src - skia - Project Hosting on Google Code
And he/she calls it a "gpu backend", which seems to suggest that CPU execution is still in use, thus - as far as I can tell - avoiding the aforementioned issue of alienating manufacturers not willing to invest in GPU drivers.

Perhaps this is what we're seeing the fruit of in this clip, which features a - seemingly, at least - GPU accelerated Galaxy S:
http://www.youtube.com/watch?v=MkZZXeF5uV8

It sure looks smooth to me!
 
Correct me if I am wrong, but if it is JUST a licensing thing, couldn't the company acquire the license only for certain handsets? Seems to me like it would be within their best interest to have only their higher end models have hardware acceleration and leave the budget models without. The number one thing that people coming from the iPhone complain about is smoothness. Seems like a no brainer to me, as it would possibly get new adopters of android as well.
 
Correct me if I am wrong, but if it is JUST a licensing thing, couldn't the company acquire the license only for certain handsets? Seems to me like it would be within their best interest to have only their higher end models have hardware acceleration and leave the budget models without. The number one thing that people coming from the iPhone complain about is smoothness. Seems like a no brainer to me, as it would possibly get new adopters of android as well.

Agreed. I have an iPhone 4 as my personal phone and have a Droid X (rooted, Apex 1.3.1) as my work phone. I adore my X, but the choppinesss of the user interface just drives me insane at times. I constantly find myself whipping out my IP4 to check a website just because it is so much smoother.

It's sad, because I see much more value and potential in the Android platform as opposed to iOS, but my OCD for silky smooth interaction requires me to keep the IP4.
 
It's sad, because I see much more value and potential in the Android platform as opposed to iOS, but my OCD for silky smooth interaction requires me to keep the IP4.

I think this is what consumers are evolving into. There are a ton of people that are willing to give up function for beauty.

Not calling you out here, just stating that there are millions of people in the same boat as you. I was, for a while, but I am also willing to do the tweaking and such and got my EVO 98% as smooth as the iPhone (the iPhone has hiccups too every now and then if browsing or using for extended periods of times). I think android would easily seduce iOS fans if it was as smooth as iPhone out of the box.
 
Status
Not open for further replies.
Back
Top Bottom