Go Back   Android Forums > Android Discussion > Android Lounge
Android Lounge A place for general Android discussion and questions.
Gamers - Check out our new sister sites!
Nintendo Wii U!    |    OUYA - $99 Android System!

test: Reply
 
LinkBack Thread Tools
Old December 21st, 2009, 08:45 PM   #1 (permalink)
Junior Member
Thread Author (OP)
 
Join Date: Dec 2009
Posts: 16
 
Device(s):
Carrier: Not Provided

Thanks: 0
Thanked 0 Times in 0 Posts
Default Why doesn't Android's GUI use GPU acceleration?

The biggest turnoff I have had with Android is how choppy elements of the graphical user interface are. It really affects the snappiness of the device. These are things like the animation of pulling the app drawer out, or scrolling through a page. Even on the Droid scrolling through a webpage is choppy, laggy and slow.

What I do know is that the iPhone takes advantage of the GPU and OpenGL to accelerate all these things. That is why all the animations and scrolling on the iPhone are silky smooth. What has always puzzled me is why they built Android to not take advantage of hardware that are in most of its phones. The CPU can only do so much, so it makes sense to have the GPU do what it's best at.

I read something once about Skia, the 2D rendering engine for Android, only being able to use the CPU. But how far off, if ever, are we from seeing GPU integration into the actual GUI? I'm not talking about games, I am talking the OS itself.

Any ideas?

uf15 is offline  
Reply With Quote
Sponsors
Old December 21st, 2009, 09:00 PM   #2 (permalink)
Senior Member
 
ari-free's Avatar
 
Join Date: Nov 2009
Posts: 1,493
 
Device(s): my Touch 4G slide
Carrier: Not Provided

Thanks: 23
Thanked 153 Times in 117 Posts
Default

choppy?
http://www.twitvid.com/5315F
ari-free is offline  
Reply With Quote
Old December 21st, 2009, 09:13 PM   #3 (permalink)
Junior Member
Thread Author (OP)
 
Join Date: Dec 2009
Posts: 16
 
Device(s):
Carrier: Not Provided

Thanks: 0
Thanked 0 Times in 0 Posts
Default

Quote:
Originally Posted by ari-free View Post
That was much better than the Droids I have played with, likely attributed to a 1ghz CPU, but it still isn't as smooth and fluid as the transitions in iPhone.

I just don't understand why Android wouldn't want to offload these things onto a GPU which is designed to do them brilliantly. Instead, they force the CPU to do it, which seems inefficient.
uf15 is offline  
Reply With Quote
Old December 22nd, 2009, 12:39 AM   #4 (permalink)
Member
 
Join Date: Dec 2009
Posts: 489
 
Device(s): Droid X
Carrier: Not Provided

Thanks: 38
Thanked 27 Times in 25 Posts
Default

^^There is a video on the web of Android 2.1 on a Droid and it's very smooth. It's not just the processor.

Yes on the current 2.0 OS, the App tray isn't very smooth but there are other aspects of Android that are, like the scrolling in contacts, notes etc. Also the the fading in and out of the Apps is very smooth. I don't think it's accurate to say Android isn't using the GPU at all. Maybe a dev can chime in, but the home ++ homescreen replacement for example, is much smoother than the stock homescreen which proves it's just in the programming and can be easily remedied.

Android 2.1 also proves that it's something that's easily fixable. Also in 2.0, while there is some choppiness, when launching and working in apps, the Droid is very quick so it really isn't a bother unless you look for it.

Contrast this with webOS where the entire OS is just extremely laggy and slow in many places. WebOS cannot leverage the GPU (yet) while Android can.

If 2.1 isn't using the GPU then it's some seriously slick programming to make that smooth.

Here are some of the videos:
Nexus One Animated Wallpapers on Droid with Android 2.1 | Redmond Pie

Motorola Droid Hacked To Run Android 2.1, Faster - Motorola droid 2.1 - Gizmodo
darreno1 is offline  
Last edited by darreno1; December 22nd, 2009 at 12:41 AM.
Reply With Quote
Old December 22nd, 2009, 08:46 AM   #5 (permalink)
Senior Member
 
Join Date: Nov 2009
Location: Freaking Ohio
Posts: 875
 
Device(s): Atrix 3.5G
Carrier: Not Provided

Thanks: 8
Thanked 19 Times in 19 Posts
Default

My droid has never been choppy. Runs just as smooth as my wife's iPhone, or my iPod touch.
barry99705 is offline  
Reply With Quote
Old December 22nd, 2009, 09:26 AM   #6 (permalink)
Junior Member
Thread Author (OP)
 
Join Date: Dec 2009
Posts: 16
 
Device(s):
Carrier: Not Provided

Thanks: 0
Thanked 0 Times in 0 Posts
Default

Quote:
Originally Posted by darreno1 View Post
^^There is a video on the web of Android 2.1 on a Droid and it's very smooth. It's not just the processor.

Yes on the current 2.0 OS, the App tray isn't very smooth but there are other aspects of Android that are, like the scrolling in contacts, notes etc. Also the the fading in and out of the Apps is very smooth. I don't think it's accurate to say Android isn't using the GPU at all. Maybe a dev can chime in, but the home ++ homescreen replacement for example, is much smoother than the stock homescreen which proves it's just in the programming and can be easily remedied.

Android 2.1 also proves that it's something that's easily fixable. Also in 2.0, while there is some choppiness, when launching and working in apps, the Droid is very quick so it really isn't a bother unless you look for it.

Contrast this with webOS where the entire OS is just extremely laggy and slow in many places. WebOS cannot leverage the GPU (yet) while Android can.

If 2.1 isn't using the GPU then it's some seriously slick programming to make that smooth.

Here are some of the videos:
Nexus One Animated Wallpapers on Droid with Android 2.1 | Redmond Pie

Motorola Droid Hacked To Run Android 2.1, Faster - Motorola droid 2.1 - Gizmodo
My understanding is that Android has access to the GPU, however does not use it for the things we are discussing like scrolling or menu animations. That is entirely done by the CPU via the 2D Skia engine. It seems as though the Android programmers just decided not to take advantage of GPU acceleration. Now, I am not saying that with a fast enough CPU that it cannot be smooth and fast, but it takes a whole lot of horsepower to get anywhere close to the iPhone's level.

WebOS is in the same boat. The Pre and Pixi have GPUs, but they are sitting dormant because there are no drivers and no hooks for WebOS's javascript and CSS to interface with it. So they are too relying solely on the CPU to animate menus, transitions and to scroll. The sad thing is that the non-compiled languages they use just cannot keep up with it as well as Android can, which makes it unusable.

But still, if you are scrolling through a webpage or seeing a screen transition or pulling up the drawer in Android 2.0, all of that is being done by the CPU. That is why it often looks like it is running at 15fps, while similar things on the iPhone look like they are running at 60fps.

I just don't understand why. It was probably easier, but using the GPU for things like this would make all Android devices much snappier and smoother.
uf15 is offline  
Reply With Quote
Old December 22nd, 2009, 01:13 PM   #7 (permalink)
Member
 
Join Date: Dec 2009
Posts: 489
 
Device(s): Droid X
Carrier: Not Provided

Thanks: 38
Thanked 27 Times in 25 Posts
Default

^^ Did you look at the videos?Those transitons are as smooth as can be. Whether or not the Gpu is being used is moot. Android 2.0 is just a stepping stone.
darreno1 is offline  
Reply With Quote
Old December 22nd, 2009, 02:16 PM   #8 (permalink)
Member
 
Join Date: Sep 2009
Location: East Coast
Posts: 246
 
Device(s): T-Mobile G1 Samsung Moment HTC EVO 4G
Carrier: Not Provided

Thanks: 0
Thanked 2 Times in 2 Posts
Default

If you look at the previous processors used, none of them had an accelerated GPU. The Arm 528mhz processor would have been super laggy if it used the required graphics under its GPU. However, Droid, which has a better CPU and GPU is capable to dividing both processes and render graphics through its GPU at an acceptable performance.
__________________
Technology enthusiast.
Robfactory is offline  
Reply With Quote
Old December 22nd, 2009, 08:43 PM   #9 (permalink)
Junior Member
Thread Author (OP)
 
Join Date: Dec 2009
Posts: 16
 
Device(s):
Carrier: Not Provided

Thanks: 0
Thanked 0 Times in 0 Posts
Default

Quote:
Originally Posted by Robfactory View Post
If you look at the previous processors used, none of them had an accelerated GPU. The Arm 528mhz processor would have been super laggy if it used the required graphics under its GPU. However, Droid, which has a better CPU and GPU is capable to dividing both processes and render graphics through its GPU at an acceptable performance.
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.
uf15 is offline  
Reply With Quote
Old January 4th, 2010, 09:30 PM   #10 (permalink)
Junior Member
 
Join Date: Jan 2010
Posts: 18
 
Device(s): CDMA Hero
Carrier: Not Provided

Thanks: 0
Thanked 0 Times in 0 Posts
Default

From what I've heard, the fault lies mostly with HTC, encouraged by wholesale indifference by the carriers. Here's the story I was told:

* Qualcomm makes the core chipset used by most HTC phones, and most Android phones were built by HTC until VERY recently. Thus, the things that got the most attention during Android's first year and a half of commercial availability were things directly supported by HTC phones.

* The price charged by Qualcomm for its chipset varies, depending upon what features the handset manufacturer chooses to license from them. Put another way, every Qualcomm chip in a given family has the silicon resources to do everything... but manufacturers are only allowed to use the features they pay Qualcomm for the right to use.

* Because the carriers don't care, and the carriers are HTC's real customers, HTC didn't care about GPU support, either. It saved a few cents per phone, and washed its hands of GPU support to boot.

* Making matters worse, Qualcomm only makes its chipset documentation available under NDA (at least, the parts dealing with "premium" capabilities), and only made it available to licensees (of which there were very, very few). Ergo, the documentation has been VERY hard to come by, and less likely to be leaked by a public-minded HTC employee for the good of humanity.

Put another way, there probably isn't a thing Qualcomm can do to stop the folks at xda-developers.com from releasing guerrilla video drivers for HTC Android phones that take advantage of acceleration if they can figure out how it works, but you'll never see a phone come out of the box new with GPU acceleration unless HTC officially licenses the capability from Qualcomm. Nor will you see Google making it easy to do an end-run around the official release to graft it on, because then Qualcomm would sue THEM.
miamicanes is offline  
Reply With Quote
Sponsors
Old June 25th, 2010, 01:34 PM   #11 (permalink)
New Member
 
Join Date: May 2010
Posts: 1
 
Device(s):
Carrier: Not Provided

Thanks: 0
Thanked 0 Times in 0 Posts
Default

"less likely to be leaked by a public-minded HTC employee for the good of humanity." Give me a break. the good of humanity??? This is the kind of naive bull%&*$ that pretends to be legitimate discourse on so many of these forums. Get real. What about the fact that this company has the legitimate right to make money in a market just like anybody else.
firefly123 is offline  
Reply With Quote
Old June 25th, 2010, 01:37 PM   #12 (permalink)
Member
 
Join Date: Mar 2010
Posts: 263
 
Device(s):
Carrier: Not Provided

Thanks: 0
Thanked 19 Times in 14 Posts
Default

Most likely to save power, the app drawer or other things are put on the CPU instead of the CPU and GPU, as that would take power.
vbetts is offline  
Reply With Quote
The Following User Says Thank You to vbetts For This Useful Post:
anomaly (June 25th, 2010)
Old July 18th, 2010, 04:06 PM   #13 (permalink)
New Member
 
Join Date: Jul 2010
Posts: 10
 
Device(s):
Carrier: Not Provided

Thanks: 0
Thanked 0 Times in 0 Posts
Default

Quote:
Originally Posted by vbetts View Post
Most likely to save power, the app drawer or other things are put on the CPU instead of the CPU and GPU, as that would take power.
Wrong. The GPU is designed to handle graphics. It is therefore inherently better than a CPU at doing precisely that. This means that it takes less power to do the same work compared to a general purpose CPU.
Nuukeer is offline  
Reply With Quote
Reply


Go Back   Android Forums > Android Discussion > Android Lounge
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT -5. The time now is 11:45 PM.
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2013, vBulletin Solutions, Inc.