Javascript Performance

Although smartphones are clearly headed for a life beyond simple messaging, web browsing and phone duties, we are still lacking the tools to measure performance in areas other than a component of web page rendering. Measuring javascript performance is one component of the entire web page rendering process but it's the most mature in terms of something we can benchmark.

Sunspider is quite possibly the most well known of these javascript tests:

We expected Snapdragon S4 to do very well here based on our preview numbers and it did not disappoint. Although it's not quite as fast as Intel's Medfield, it's clearly the fastest smartphone SoC in this test otherwise. It's worth noting that HTC is able to deliver performance that's within 5% of Qualcomm's Snapdragon S4 MDP, a significant improvement over where things were last year.

The Sunspider test makes good use of 1 - 2 cores but there are times when it'll stress all four on a Tegra 3. For the most part however, NVIDIA's extra cores go unused in this benchmark. Krait and HTC's ICS browser definitely offer a significant advantage over the performance of the ICS launch vehicle, Samsung's Galaxy Nexus. This is honestly the hardware that Google should have used as the basis for its Nexus platform, it's too bad that it wasn't available at the end of last year.

BrowserMark is another js benchmark in our suite:

Here the international and AT&T One Xes trade spots as Tegra 3's extra cores are able to give it the slight edge in performance. Once again we're talking about the fastest smartphones in our test suite.

Low Level FP Performance

Linpack isn't a great indication of smartphone performance, but it is a good test of the floating point capabilities of the CPUs in these SoCs. ARM has steadily been improving FP performance for the past few generations but we're going to see a big jump to Krait/A15. As most client smartphone workloads are integer based and those that are FP heavy end up relying on the GPU, an advantage here doesn't tell us much today (particularly because Linpack isn't running native code but rather atop Dalvik) other than how speedy the FPUs are:

Improved single threaded FP and memory performance is something we get with Krait, and it's demonstrated quite well by the AT&T One X. While you're unlikely to see this magnitude of an advantage in most real world smartphone workloads, this is an architectural advantage of Qualcomm's Krait that's worth mentioning. However these days most FP intensive workloads on smartphones are handled by the GPU, making this performance advantage mostly academic at this point.

Linpack, like many scientific workloads, scales up to multiple cores quite nicely. If we spawn as many threads as there are logical cores (2 for Intel and Qualcomm, but 4 for NVIDIA's Tegra 3) we can see how these SoCs fare in a multithreaded world:

BaseMark OS

Rightware's BaseMark OS is a general purpose benchmark designed to better simulate overall Android performance. It includes a heavily threaded benchmark, file IO tests, and compression/decompression tasks that all contribute to its overall score. We only have results from the HTC One S/AT&T One X (Snapdragon S4), One X (Tegra 3), Galaxy Nexus (OMAP 4) and the Lava phone (Medfield) here:

As expected, the AT&T One X does very well in this general purpose, OS-level benchmark. The device significantly outperforms Samsung's Galaxy Nexus, which isn't a surprise given how dated the hardware was at the time of launch. Again the magnitude of advantage is likely exaggerated by this benchmark, but there's no changing the fact that HTC makes the fastest Android smartphones on the planet for now.

Note that the performance difference between the two One X models is likely exaggerated by BaseMark OS as well. In our regular use we found the two to be fairly similar in performance, with the slight edge going to the AT&T One X but not by a huge margin. You'd be hard pressed to tell these two apart.

Vellamo

Vellamo is a Qualcomm developed benchmark that focuses primarily on browser performance, both in rendering and UI speed. The results are heavily influenced by the browser used on the device being tested. As a whole Vellamo isn't always indicative of whether or not you're going to get a smooth browsing experience, but it's another datapoint that captures more than just javascript performance. The Qualcomm-developed nature of the benchmark is always cause for concern, but even if you exclude the Snapdragon results the benchmark can be useful:

Qualcomm's SoCs have always done very well in this Qualcomm-built benchmark, but the results still echo what we've seen in practice. The AT&T One X definitely feels like the fastest Android phone we've used, especially compared to much of what was available last year. The gap between the international and AT&T One X versions is, once again, debatable. The Qualcomm performance advantage is at times perceivable, but I wouldn't consider it to be significant at all.

Flash Rendering Performance

These days nearly all high-end smartphones (I refuse to call them superphones) can render Flash smoothly. The HTC One X is no exception. We're basically at vsync here and will have to move to either more stressful flash content to test or just accept that flash is already performant enough.

GPU Performance - GLBenchmark 2.1

As we wait for actual 3D gaming benchmarks to make their way into Android (and hopefully crossplatform) games, we must rely on synthetic tests designed to simulate 3D game performance as best as possible. We start with GLBenchmark, one of the better Android GPU tests on the market today. There are two benchmarks, Egypt and Pro, and each is run in two modes: native screen resolution and offscreen (vsync disabled) at 720p. The latter is more useful for apples to apples comparisons as everything is rendering the same number of pixels, whereas performance in the onscreen tests is determined by the screen resolution of the device along with the performance of its GPU.

Part of the deal in getting Krait to market as quickly as possible required that Qualcomm pair the CPU with an older GPU, in this case the Adreno 225 instead of the newer Adreno 3xx offerings due out later this year. As a result, the AT&T One X can take a back seat to the international One X in GPU performance. When not limited by v-sync, the Tegra 3 based international One X is about 12% faster than the Qualcomm S4 based AT&T One X. For most gaming however, you'll be hard pressed to notice a performance difference.

The Pro offscreen results actually flip flop a bit with the AT&T One X leading the international version. Once again, limited by v-sync (onscreen results) the two are basically identical performers.

Basemark ES 2.0 V1

We're not surprised to see the AT&T One X do so well here as it appears Qualcomm has done quite a bit of optimization work for this particular benchmark. I wouldn't put too much faith in these numbers other than to show you an example of just what can happen with a good amount of optimization on behalf of a hardware vendor.

EXACTLY! And don't forget that Android games also require a considerable amount of storage space. The game Modern Combat 3 requires at least 1,75 GB of free storage to fit inside the phone. With the advancement of the GPU and CPU of smartphones we will soon see DVD sized games on handhelds. Imagine having 5 - 10 such games on a smartphone.

The internal storage that comes with smartphones these days are abysmally low and a lot of people out there don't want to rely on some sleazy cloud storage solution, especially when travelling around the world.Reply

I agree - a (micro) SD card is a necessity. I can't carry TWO devices around if I want both a phone and a file player. Too many mobile makers appear to be clueless about this. Very sad to see it missing from such an otherwise excellent device.Reply