1. For a while now we've been keeping track of mobile browser performance using two relatively popular JavaScript heavy benchmarks that are a regular fixation in our smartphone reviews. If you've read any of those reviews, you should immediately be able to name them - SunSpider and RightWare's BrowserMark. Tracking JavaScript performance thus far has helped us codify and track SoC performance, but really understanding and quantifying overall browsing smoothness has remained a somewhat more daunting task. Moreover, JavaScript performance is just one facet of many that contribute to the user's perception of browsing speed.

Real web browsing performance is a unique combination of system performance, the Android browser itself, and what contributions or customizations (if any) the OEM has made in the shipping browser build. This is to say nothing of the numerous third party browsers out there. Qualcomm's Innovation Center recently made public a tool for gauging overall browser performance that it has used for a while to checkpoint and gauge performance in house and in collaboration with OEMs. We've used a subtest or two from it in a few reviews already, and it's named Vellamo.


Left to right: T-Mobile SGS2, Motorola Atrix, AT&T SGS2, HTC Sensation, LG Optimus 3D, Xiaomi Mi-One

First off, Qualcomm sent us five dual-core smartphones, almost all of which we've seen and tested before. Just to be sure, we verified that nothing has been tampered with and that all were running the latest shipping OEM ROM and started fresh with a complete reset. We also added another, the T-Mobile SGS2 bringing that total to six devices. 

Smartphones
  T-Mobile SGS2 Motorola Atrix AT&T SGS2 HTC Sensation LG Optimus 3D Xiaomi Mi-One
SoC 1.5 GHz APQ8060 1.0 GHz Tegra 2 1.2 GHz Exynos 4210 1.2 GHz MSM8260 1.0 GHz OMAP4430 1.5 GHz MSM8260
RAM 1 GB LPDDR2 1 GB LPDDR2 1 GB LPDDR2 768 MB LPDDR2 512 MB LPDDR2 1 GB LPDDR2
OS Android 2.3 Android 2.3 Android 2.3 Android 2.3 Android 2.2 Android 2.3

The selection we've made isn't meant to be totally comprehensive, but gives an idea for just how much performance varies from one OEM to another, largely as a function of changes made to the browser on their respective versions of Android. These devices are all dual core and what I'd personally consider of the latest generation (dual core, Android 2.3, e.t.c.). We're going to be updating our Smartphone Bench category soon (something I've been behind on, as of late) with Vellamo scores for devices as well. 

If you've been reading our reviews, basically every device except for the T-Mobile SGS2 (which we're going to review shortly) and the Xiaomi Mi-One should be relatively familiar. The Mi-One is from a Chinese OEM we haven't seen devices from before called Xiaomi, but is a surprisingly decent performer and has one of the most unique (and surprisngly speedy) skins I've ever seen on Android. 

Vellamo Test Breakdown

Vellamo's test are divided into a few categories, and start with Rendering tests which stress the performance of HTML5 <canvas> elements. Although Vellamo at present exists on Android as a standalone application, the tests themselves are entirely HTML and JavaScript and run inside Android WebView views which use the Android WebKit browser and whatever optimizations have been made by the OEM. Vellamo as an application simply exists around the tests to measure FPS, dropped frames, time, and report scores. 

First among these tests is See the Sun Canvas, which renders increasingly demanding stages of a 2D rotating butterfly in an HTML5 <canvas> element. The first stage starts out with cubes, then moves to circles, then circles of different color, and finally alpha-blended for the maximum load. 

Vellamo - See The Sun Canvas

The Xiaomi Mi-One is a new device for us, but delivers strikingly fast performance thanks to the work that Xiaomi has done to the stock Android browser. I found the SGS2's backing store pretty decent as well, but you can see how much difference there is in performance between the two despite packing the same 1.5 GHz dual core snapdragon (APQ8060 and MSM8260 differ solely in baseband - APQ lacks one).

The next test is Deep Sea Canvas which tests almost the same parameters as See the Sun, except tests are non-sequential here and are an attempt to fully load the platform.

Vellamo - Deep Sea Canvas

Interestingly enough, Exynos 4210 comes out on top of the pack. 

Next up is Aquarium canvas which tests the number of HTML5 canvas objects that can be rendered simultaneously. In addition, this test runs in a native Android Java implementation for comparison with the HTML5 <canvas> implementation in the browser. 

Vellamo - Aquarium Canvas

Vellamo calculates a score for each subtest alongside FPS and dropped frames, and we've chosen to report FPS wherever possible, but this test makes more sense being reported in base score. Interestingly enough the Sensation 4G edges out the faster T-Mobile SGS2.

Pixel Blender is next which draws multiple images over a static background and applies alpha blending. Vellamo calculates the graphics throughput of the browser in pixels per second to arrive at memory bandwidth for blitting and blending. 

Vellamo - Pixel Blender

Again there's a pretty shocking disparity between Samsung's browser and the Xiaomi, we're reporting the base score here as well.

Next up are the very familiar JavaScript VM tests which we've taken a look at many times before in numerous reviews. In Android's case, every browser is using the V8 JavaScript engine. First among these tests is SunSpider 0.9.1. We started using 0.9 and have moved to 0.9.1 for most things now, which still consists of a number of relatively short tests run 10 times. The final product is a completion time in milliseconds, and thusly lower is better. SunSpider is developed by the WebKit team of course.

Vellamo - SunSpider 0.9.1

SunSpider is to WebKit as the V8 benchmark suite is to, well, V8. It's another JavaScript benchmark which consists of a number of beefy tests (raytracing, regex, math, e.t.c.) and also exercises the VM's garbage collector. Vellamo runs v6 of the V8 benchmark which is latest.

Vellamo - V8 Benchmark (v6)

Next is SurfWax Binder, which measures the efficiency of JavaScript bindings code which links the VM to the rest of the browser's core and rendering core. It consists of a long series of nested function calls, which Vellamo measures in number of accesses per second. 

Vellamo - Surf Wax Binder

Where I feel Vellamo really shines however is this next suite, which we've shown scores from before, and this is the User Experience Test category. This is the area that until now has proven challenging to qualitate without using video or other subjective measures - things like scrolling performance and responsiveness. 

There are three tests here, starting with Ocean Flinger, which measures user experience when scrolling a page in a flinging manner. This is a test which consists of sample text, images, CSS, and JavaScript. ImageFlinger is a similar test which takes a dense grid of repeated JPEG images and scrolls it. Finally Text Flinger does the same thing, but with a repeated grid of densely packed text. We've reported Ocean Flinger in other tests before since it really is a combination of images and text (like we've already stated).

Vellamo - Ocean Flinger

Vellamo - Image Flinger

Vellamo - Text Flinger

I have to admit that Vellamo's numbers here closely mirror my own subjective scrolling performance perceptions when using the respective devices. The three scrolling tests represent a way to finally codify one of the more elusive (and yet easily perceptible) browser performance aspects. 

The final test is a networking loader suite which loads a page stored locally and times how long it takes in milliseconds. This is done in both hot and cold mode (with the caches cleared and not cleared) and is designed to test local performance. 

Vellamo - Networking Loader

Finally Vellamo also reports a total score which is a summation of all the base scores from each subtest. 

Vellamo Overall Score

The total score subjectively lines up with where I would mentally rank the devices - we've seen how competent Samsung's browser optimizations are (especially their browser's backing store), and how much sometimes HTC's Sense tends to weigh the platform down. Motorola's browser on the Atrix and LG's on the Optimus 3D take a more stock approach, and the Xiaomi surprises us with some serious optimizations from a company I doubt many in the US have heard of.

We're going to be adding (and simultaneously giving the same treatment) a few more benchmarks in preparation for a revamped testing suite for 2012 and an updated smartphone Bench as well. 

POST A COMMENT

82 Comments

View All Comments

  • weiln12 - Wednesday, November 16, 2011 - link

    I'm really curious how the performance changes when these phones are tested running stock (which in my experience is horrificly crap) and then also with MIUI and CM? In my experience with multiple devices, performance improved TREMENDOUSLY with CM7, to the point it was almost like an upgrade to a new device. Take the difference between the MI-One and the Sensation...they're the same chip, but with VASTLY different scores. Kinda makes you go "hmmm....".

    I think by having a reputable site like AnandTech do testing for these different devices it can help highlight the affect stock ROM skins and changes are having on Android. The skins and inconsistencies are the single reason I went back to an iPhone. It's interface is consistent, and performance is consistent (if not near as fast as CM). The whole experience is just consistent...which to me makes a big difference.

    I think having numbers behind the decision to differentiate their devices would be a huge benefit to consumers, and would be very eye-opening to a lot of people.

    Just my thoughts.
    Reply
  • cbutters - Wednesday, November 16, 2011 - link

    I have heard that a lot of the chinese phones are using CM7 base code right off the bat in many of their android phones, which may even explain the performance difference of the xiaomi. The good news is that most of these phones can be rooted and have custom ROMs which will improve performance. But like you are saying... wouldn't it be nice if we didn't have to rely on third parties to utilize the performance of the device.

    I think that the fracturing of android via carrier and manufactuer customization will come to an end in the next few years. I get the feeling that even with android 4.0 (ice cream sandwich) google is attempting to bring the interface together in a coherent and beautiful way that most carrier will choose to adopt instead of customizing their own frontend applications (sense, touchwiz, etc...)
    Reply
  • weiln12 - Thursday, November 17, 2011 - link

    I certainly hope you're right. I do wish that Google was able to exert more influence over the devices, if only for consistency's sake. I don't want all the random apps that I can't uninstall, I don't want Sense or some other resource hog. If the user wants to add that, fine, but it certainly shouldn't come from the factory that way. Reply
  • ThisWasATriumph - Wednesday, November 16, 2011 - link

    Just ran this on my Captivate with CM7.2 and got 846! Only single core and hanging with the big boys. See what a little optimization can do for a 1.5 year old phone? Reply
  • mortyg99 - Wednesday, November 16, 2011 - link

    just tried it on my t-mobile g2 running cm7.1 and got 636 Reply
  • nnitko - Wednesday, November 16, 2011 - link

    I have HTC Desire with MIUI (2.3.7) @ 1GHz and my overall score is 680 which is better than dual core Atrix 4G. I would say that's a damn good score for such an old phone. Good job MIUI! Reply
  • s44 - Wednesday, November 16, 2011 - link

    Lots of people are running out of time to change the original AT&T SGS2 for the Skyrocket... any quick pre-review summary on if the Snapdragon in the Hercules gets in the way in any non-game-use? Reply
  • TooYellow - Wednesday, November 16, 2011 - link

    This is a good comparison of the stock phone experience as a whole but it does not give good data on the true power of the platforms.

    I realize that only a small portion of the population uses a custom ROM for their phones. But standardizing the OS/skin across the phones will make the performance number more relevant to hardware benchmarks. Of course build optimization varies across devices running CM (or any AOSP ROM).

    I have a Sensation with Cyanongenmod 7 and it's leagues faster than Sense.
    Reply
  • Exodite - Wednesday, November 16, 2011 - link

    My stock, orginal Xperia arc using a 1.0GHz MSM8255 and firmware 4.0.2.A.0.42 got a result of 845.

    Not too bad.
    Reply
  • georgekn3mp - Wednesday, November 16, 2011 - link

    My HTC Rezound which I just got on release day from VZW on 11/14/2011. Dual core...MSM 86xx 1.5ghz with 1GB RAM running Sense 3.5... but the 1280x720 S-LCD resolution MAY slow the graphics a bit on the Adreno 220...I love this phone! And the iBeats do sound great.

    See the Sun Canvas: 56.66

    Deep Sea Canvas: 87.68

    Aquarium Canvas: 83.59

    Pixel Blender: 104

    Surf Wax Binder: 127.02

    Sun Spider: 2316

    V8 Benchmark: 696

    Ocean Flinger: 49.46

    Image Flinger: 18.1

    Text Flinger: 36.54

    Networking Loader: 82.72

    Overall Score: 883

    6th overall of 31 tested running 2.3.4
    Reply

Log in

Don't have an account? Sign up now