Jelly Bean's new rendering

BenSkywalker

Diamond Member
Oct 9, 1999
9,140
67
91
Before I got into any real analysis I wanted to get some hands on time with a variety of devices and dig a bit more into what exactly 4.1 changed around compared to previous builds of Android to make things smoother. Have 4.1 running on a couple of 7s, the GS3 and the original Atrix and been testing them out along with another GS3 and original Atrix running 4.0 and 2.3 respectively. Some observations.

JellyBean isn't "faster", in fact it would appear to be slower in ideal situations almost always even compared to GingerBread. It is, however, smoother and loses performance at the top end while giving the impression of making the bottom end perform better.

Based on documentation and observations JB is using a timed loop for all rendering elements of the UI. Triple Buffered and locked at a 16ms target for render state, this means if you have any screen elements that aren't updating fast enough, the last known render state is used and drawn and the next frame is put together. This is actually slower then the previous Android builds in an ideal situation(in performance terms) and appears to be directly comparable to iOS. Slower response, but smooth and constant across the board. Gives the overall impression of being 'faster' to those who wouldn't be able to tell the difference, which is going to be the overwhelming majority of the people and pretty much everyone all the time they are not actively looking for it.

The method they are using isn't one they should have been handling all along either. This is clearly a case where hardware progressed far enough for them to change the way in which they handle the OS interface on a procedural basis. Due to the wide differences in screen elements that Android has, this type of rendering method would have rather severe performance issues on hardware that wasn't capable of keeping up with the timing. The triple buffering will cover you for ~33ms, but the inability of older devices to handle changes in render states faster then that would cause massive performance issues. If they were to do things like remove widgets and live backgrounds, they probably could get away with it on most of the devices released in the last couple of years, but this is the type of rendering setup that will bring a device like the OG Droid to its' knees and probably the majority of the single core phones(not that single core itself is the issue, but the GPUs they shipped with weren't up to the task).

If anyone has ever used an emulator before and turned off the speed limits and seen how insanely fast things went, this is the type of rendering system that JB has moved to. They were always locked by VSync in the past, but the initial response was going to be faster then the new method as was their peak performance(draw it as fast as we can and let VSync limit us).

With JB now using a fixed render time target, moving forward devices should fairly quickly level out in terms of smoothness. There will be some disparity at first as those with less then ideal hardware or additional launcher overhead is going to be just enough to cut into the render time(this will go away with hardware), after that we should have a fairly uniform rendering experience across JB and beyond devices until Google opens up modified render states to the OEMs(motion blur etc).

One other notable thing that was painfully obvious, TouchWiz is still painfully bad, ended up swapping over the SPB for the SGS3, very clunky interface. Unfortunately it isn't likely to change given how incredibly popular Samsung devices are :(
 

T_Yamamoto

Lifer
Jul 6, 2011
15,007
795
126
I'd rather have my UI faster and feel crisper than laggy. Gingerbread was terrible in terms of crispness.
 

Keysplayr

Elite Member
Jan 16, 2003
21,211
50
91
Upgraded my GSII from 2.3 to Ice Cream Sammich 4.0. A few different colors and icons. What is does really well, is eat my battery faster. Does Jelly Bean offer any more efficiency over ICS? I hope so.
As far as speed, I've noticed no difference going from 2.3 to 4.0. Maybe a little more smoothness, but that could just be placebo effect.
 

gorcorps

aka Brandon
Jul 18, 2004
30,739
454
126
Upgraded my GSII from 2.3 to Ice Cream Sammich 4.0. A few different colors and icons. What is does really well, is eat my battery faster. Does Jelly Bean offer any more efficiency over ICS? I hope so.
As far as speed, I've noticed no difference going from 2.3 to 4.0. Maybe a little more smoothness, but that could just be placebo effect.

I noticed no difference in battery life between ICS and JB. That said, I didn't notice a difference with GB either. It's a phone I charge every night regardless.
 

tommo123

Platinum Member
Sep 25, 2005
2,617
48
91
my sgs2 (int) has about 50% charge left when i go to bed after being unplugged for 16 hours.

some people have problems with some rogue background tasks screwing up their battery life though. (android OS) was hitting high % points for some
 

vshah

Lifer
Sep 20, 2003
19,003
24
81
Upgraded my GSII from 2.3 to Ice Cream Sammich 4.0. A few different colors and icons. What is does really well, is eat my battery faster. Does Jelly Bean offer any more efficiency over ICS? I hope so.
As far as speed, I've noticed no difference going from 2.3 to 4.0. Maybe a little more smoothness, but that could just be placebo effect.

i was so disappointed with the sgsII ICS upgrade. while 2.3->4.0 in stock android was a massive shift in UI design and cleanliness, the 2.3->4.0 shift in touchwiz land had almost zero visible change. really pissed me off when I updated my dad's international sgs2. I put cm9 on it asap.
 

grkM3

Golden Member
Jul 29, 2011
1,407
0
0
You need to use the official jellybean rom for the galaxy nexus,its is 2x faster than my gs3 running a port of it.

It litterally feels like a next gen hardware upgrade over ics.I find myself using my old nexus more than my gs3 running a hacked port of jellybean and in no way is it faster than the nexus using jelly.

Keep in mind google made it for the nexus and people are taking the source and hacking it to work on there cells.I have yet to get 3g,gps,nfc and mms to work right on my gs3 running jelly bean and EVERY thing works on the nexus and flys because google engineers made it from the get go for that device.

Try using jelly bean on a nexus with googles kernal,drivers for that os on that phone and then tell us if its not fast as fuck
 

cl-scott

ASUS Support
Jul 5, 2012
457
0
0
What is easy to forget for people on an enthusiast forum like this, is that most people are never going to go into this level of analysis. What they care about is how fast something feels, and so having a very consistent level of performance across the entire OS is going to translate into a better overall experience for a larger number of people.

Besides, none of this is even remotely new. Developers have been pulling stunts like this for ages. Doing little things like boosting the process priority on UI elements, so when you click on a menu or a control button, the reaction is near instantaneous. The task linked to the menu item or control button will still take X number of CPU cycles to complete no matter what, and you might even argue that setting the priority of the GUI higher slows down the execution of those processes completing... But because the OS feels more responsive, people feel like the process is completing faster, or at least that their computer isn't "bogged down" or whatever colloquialism you want to use.
 

psych2

Member
Jun 15, 2012
109
0
0
i was so disappointed with the sgsII ICS upgrade. while 2.3->4.0 in stock android was a massive shift in UI design and cleanliness, the 2.3->4.0 shift in touchwiz land had almost zero visible change. really pissed me off when I updated my dad's international sgs2. I put cm9 on it asap.

I think what Touchwiz and the other skins are trying to do is build some sort of UI/UX consistency for the non techy folks. For example if you look through the stock settings icon in AOSP you can see a lot of major changes throughout each revision. Does it bother you or me? Probably not but it might confuse mom. Moral of the story as ever is get a Nexus device lol.
 
Aug 23, 2000
15,509
1
81
my sgs2 (int) has about 50% charge left when i go to bed after being unplugged for 16 hours.

some people have problems with some rogue background tasks screwing up their battery life though. (android OS) was hitting high % points for some

The Yahoo Email client is the absolute worst I've seen. Ever since I ditched it, I can go 2 days with moderate use, or a full day with heavy use. With that steaming pile of bits, I couldn't go 8 hours.
 

Yuriman

Diamond Member
Jun 25, 2004
5,530
141
106
You need to use the official jellybean rom for the galaxy nexus,its is 2x faster than my gs3 running a port of it.

It litterally feels like a next gen hardware upgrade over ics.I find myself using my old nexus more than my gs3 running a hacked port of jellybean and in no way is it faster than the nexus using jelly.

Keep in mind google made it for the nexus and people are taking the source and hacking it to work on there cells.I have yet to get 3g,gps,nfc and mms to work right on my gs3 running jelly bean and EVERY thing works on the nexus and flys because google engineers made it from the get go for that device.

Try using jelly bean on a nexus with googles kernal,drivers for that os on that phone and then tell us if its not fast as fuck

This.

Ports are generally using the hwcomposer (and perhaps other drivers too) from ICS and won't really have the same level of smoothness of a Nexus device running JB. They're essentially still using the ICS rendering engine.

The S3 is fast but it'll be even faster when Samsung leaks (or releases) a proper JB compatible hwcomposer.
 

jiffylube1024

Diamond Member
Feb 17, 2002
7,430
0
71
You need to use the official jellybean rom for the galaxy nexus,its is 2x faster than my gs3 running a port of it.

It litterally feels like a next gen hardware upgrade over ics.I find myself using my old nexus more than my gs3 running a hacked port of jellybean and in no way is it faster than the nexus using jelly.

Keep in mind google made it for the nexus and people are taking the source and hacking it to work on there cells.I have yet to get 3g,gps,nfc and mms to work right on my gs3 running jelly bean and EVERY thing works on the nexus and flys because google engineers made it from the get go for that device.

Try using jelly bean on a nexus with googles kernal,drivers for that os on that phone and then tell us if its not fast as fuck

+1. I upgraded from a GS II i9100 (running official 4.0.4) to a Galaxy Nexus running official Google 4.1.1 and the difference is night and day. I checked out a GS III in stores (running official 4.0.4 + TouchWiz), and it seems to run not quite as smooth or nicely as the Nexus.
 

shortylickens

No Lifer
Jul 15, 2003
80,287
17,081
136
Charging it every night is not an acceptable excuse for wasting battery power. If I actually use my phone during the day it will die long before I get home.
 
Feb 19, 2001
20,155
23
81
ugh can't wait for jellybean to leak out for the SGS2. we ALL know our phones are capable of running fast. this is what every post about lag has addressed in these forums.

call us ifans or whatever, but I can tell that once people get fully working hwcomposer on JB, they will NEVER EVER switch back. Just look at people rave how fast their Nexus devices are with Jellybean. lol.
 

BenSkywalker

Diamond Member
Oct 9, 1999
9,140
67
91
Does Jelly Bean offer any more efficiency over ICS?

Glad you asked the question Keys, would be tricky to answer for others. Render state is timed loop @16ms then flip on JB, render state is wait to flip on ICS, that can certainly end up in a difference of battery life- calculating out which way that would go per device would probably make for a good Comp Sci PhD thesis ;)

while 2.3->4.0 in stock android was a massive shift in UI design and cleanliness, the 2.3->4.0 shift in touchwiz land had almost zero visible change.

IMO Touchwiz is significantly worse then Blur.

You need to use the official jellybean rom for the galaxy nexus,its is 2x faster than my gs3 running a port of it.

Two Nexus7s tested, I have seen what a proper build can do :)

Doing little things like boosting the process priority on UI elements

That is the interesting thing with JB, they didn't boost priority on UI elements, they reduced it significantly. It gives the illusion that a lot of people seem to like, much smoother performance with the penalty being a lower peak. Now to be fair, the bottom came up *a lot* more then the top came down, was just interesting to observe.

ugh can't wait for jellybean to leak out for the SGS2.

Samsung's build? Hope you are going to run a custom ROM ;)

Just look at people rave how fast their Nexus devices are with Jellybean.

The interesting thing is that they are slower in best case situations, always. Worst case however, the speedup is dramatic. Using Vellamo the Atrix went from ~670 to ~1450, but its' initial response is slower and so is loading of most apps. It just demonstrates to me that people's perception of "fast" has nothing to do with speed, just with how constant it is.
 

Dulanic

Diamond Member
Oct 27, 2000
9,966
590
136
2 problems I see... #1 most of those devices are using a "ported" version of JB which has no optimization and patch work drivers. The only valid test device is the Nexus 7. Also, this completely ignores the update to transitions etc...

Also, Android Police has a great article that drills into the specifics. I still reserve my full judgement till I have a official JB update to compare a official ICS update to.

http://www.androidpolice.com/2012/0...roject-butter-how-it-works-and-what-it-added/
 
Last edited:

BenSkywalker

Diamond Member
Oct 9, 1999
9,140
67
91
2 problems I see... #1 most of those devices are using a "ported" version of JB which has no optimization and patch work drivers. The only valid test device is the Nexus 7.

So why isn't the Nexus7 showing a large advantage if what you say is valid? Putting it up against a Transformer with ICS the Nexus7 doesn't have any advantage in initial response or load times, just has a much more constant framerate.

Also, Android Police has a great article that drills into the specifics.

Uhm, that isn't getting into specifics, that is an exceptionally dumbed down explenation to help people who know nothing at all about graphics get their head around it :) Nothing at all wrong with that type of write up, I actually like them because it helps to have something to point to so people who can't be bothered to learn about something at least have a vague understanding.
 

Dulanic

Diamond Member
Oct 27, 2000
9,966
590
136
So why isn't the Nexus7 showing a large advantage if what you say is valid? Putting it up against a Transformer with ICS the Nexus7 doesn't have any advantage in initial response or load times, just has a much more constant framerate.



Uhm, that isn't getting into specifics, that is an exceptionally dumbed down explenation to help people who know nothing at all about graphics get their head around it :) Nothing at all wrong with that type of write up, I actually like them because it helps to have something to point to so people who can't be bothered to learn about something at least have a vague understanding.

It's still apples to oranges comparison. I'm not saying anything is valid or invalid unless I had a device that had both ICS & JB officially available to test :) Google says it does have an advantage, which if you watch google's project butter video, it looks to be slightly true using their high framerate capture camera. Is it? Don't know, could be marketing could be true. I think we would need to have a GNex device to test with the original ICS installed and then one with JB installed. Also, both would need to be tested fully stock no apps installed to have a true comparison.

So not saying you're right or wrong or anything in between, just saying we need valid data to compare.
 

BenSkywalker

Diamond Member
Oct 9, 1999
9,140
67
91
So not saying you're right or wrong or anything in between, just saying we need valid data to compare.

I think you are getting confused, what I'm saying doesn't contradict Google at all. People just have messed up perception. JB is not *faster* it is much *smoother*. What people have been looking for is how *smooth* the OS is, and that is about the perception of speed, not the actual speed. Actual straight out speed, the older OSs win, in terms of delivering a constant level of performance, JB is *much* better.

If you were comparing graphics cards and one had an average of 90FPS and minimum of 12FPS while the other had an average framerate of 75FPS and a minimum of 48FPS which would you chose? I think any reasonable person would take the latter in that statement even though it is actually the *slower* overall part in terms of when you using it it *feels* much faster.

You get what I'm saying?
 

Dulanic

Diamond Member
Oct 27, 2000
9,966
590
136
I think you are getting confused, what I'm saying doesn't contradict Google at all. People just have messed up perception. JB is not *faster* it is much *smoother*. What people have been looking for is how *smooth* the OS is, and that is about the perception of speed, not the actual speed. Actual straight out speed, the older OSs win, in terms of delivering a constant level of performance, JB is *much* better.

If you were comparing graphics cards and one had an average of 90FPS and minimum of 12FPS while the other had an average framerate of 75FPS and a minimum of 48FPS which would you chose? I think any reasonable person would take the latter in that statement even though it is actually the *slower* overall part in terms of when you using it it *feels* much faster.

You get what I'm saying?

I got it alll along :) I completely understand what you are saying, and I agree 100% with the "smoother" part. The faster part, I don't have valid data to compare. Google could have made other optimizations that made it both faster and smoother, but I just haven't seen straight data supporting that one way or another. Google's video with slow motion capture shows things not only being smoother but also launching faster.... but I question that video and it looks to me that they press the "button" on the ICS phone after the JB phone by a few ms which could make up that difference. That is all I am saying... just need more/better data to confirm or deny that claim.
 

BrightCandle

Diamond Member
Mar 15, 2007
4,762
0
76
Having had both on the same hardware I am pretty convinced that Jelly Bean is a worthwhile change. Most of the time I am convinced that it is running smoother and the additional latency doesn't show. Its not like I am running a high FPS game on it. But the latency does occasionally irritate me, there seems to be some odd timing issues around the GUI and touch such that the screen needs to settle before it can be used, which is quite annoying. That didn't exist before so in many cases I suspect that my use is now slower, but my eyes are fooled of smooth motion more often.
 

destrekor

Lifer
Nov 18, 2005
28,799
359
126
I think you are getting confused, what I'm saying doesn't contradict Google at all. People just have messed up perception. JB is not *faster* it is much *smoother*. What people have been looking for is how *smooth* the OS is, and that is about the perception of speed, not the actual speed. Actual straight out speed, the older OSs win, in terms of delivering a constant level of performance, JB is *much* better.

If you were comparing graphics cards and one had an average of 90FPS and minimum of 12FPS while the other had an average framerate of 75FPS and a minimum of 48FPS which would you chose? I think any reasonable person would take the latter in that statement even though it is actually the *slower* overall part in terms of when you using it it *feels* much faster.

You get what I'm saying?

And that's the thing - having a smooth UI that hides loading time inconsistencies is a huge boon for the user experience. Sure, at times, making it work so will actually lead to performance loss, but we're at a point where performance is great and they should be focusing on the "little things."

I've been thoroughly enjoying the stock ROM on my Nexus 7, and cannot wait (but am, in fact, waiting) for a stable custom JB ROM for my Galaxy Nexus.

It just appearing to be smoother goes a long way in providing a "mellow" experience. I like the performance and customization and everything I can do with Android, have been a huge Android fan since the original Moto Droid (before that, I was trying to extend the life of a WinMo phone with ROMs and tweaks)... but UI stuttering and visible performance loss/loading times was an ugly ugly issue. You'll find it still with every single phone and OS out there, even on desktops, even on Apple devices... but how often it is present is largely determined by how optimized the OS is, or, how well the OS can hide it in most instances. And of course, it is determined by just how much the user is actually doing/trying to do.

They've had major performance in roads, and lately, they've been even more focused on the UX then ever before (which was hardly at all). ICS and JB have made Android, for lack of a better phrase, a more pleasing experience. And I simply cannot complain about that. Even if that means an ever-so-slight regression in raw performance. With an OS, there is often a "one-step back, two steps forward" approach, as long as things are handled correctly.