Apple’s custom ARM approach for A6 pays off in JavaScript performance

SunSpider's benchmarks for iPhone 5 are the fastest of any smartphone yet.

Apple's iPhone 5 is the fastest smartphone ever tested using the WebKit team's SunSpider JavaScript benchmark, apparently due to the custom core design of the A6 processor. The benchmark performs over twice as fast on the A6 as it does on the A5 processor in the iPhone 4S, and even bests smartphones running Intel's x86-based Atom processors, according to AnandTech.

AnandTech published an extensive SunSpider benchmark comparison on Wednesday morning, including results from an iPhone 5 test unit and two dozen other smartphones. The iPhone 5 turned in an impressive 914.7ms time, easily besting the 2250.0ms of the iPhone 4S—almost 2.5 times as fast. It also beat the current top Android device, Samsung's Galaxy SIII, which ran the benchmark in 1442.9ms. (The iPhone 5 is 1.6 times faster.)

It's important to note that SunSpider isn't the best measure of raw performance across platforms. JavaScript engines vary from browser to browser on different platforms, and Apple almost certainly employs optimizations in iOS that would be difficult to replicate in Android or WP7 on every available handset. However, it's notable that the iPhone 5's A6 processor is executing JavaScript significantly faster than the only Atom-based smartphone currently available, the Lava XOLO X900, which turned in a 1279.4ms score.

"Intel originally hinted at issues in the [ARM Cortex] A9's memory interface as being why Atom was able to so easily outperform other ARM based SoCs in SunSpider," AnandTech explained. "[I]t looks like Apple specifically targeted improvements in the memory subsystem when designing the A6's CPU cores. The result is the fastest SunSpider test we've ever recorded on a smartphone—faster even than Intel's Atom Z2460."

Slow news day? A report saying the phone is the fastest at a benchmark that isn't relevant anymore, supposedly because each manufacturer tunes its browser (so it reflects real life javascript performance when using the out of the box browser).

I wish everybody, from the haters and bloggers (don't get me started on analysts) to the blind followers, could wait a week so serious people (anandtech?) could give us a clearer technical picture about the device.

These benchmarks are really pretty meaningless. At this point I'd be much more concerned with how small the iphone screen is and how low its resolution is than how fast it runs an arbitrary group of javascripts.

My unlocked Galaxy Nexus is so fast at everything I use it for that while I'm sure the newer phones might do something a little snappier it's not enough for me to feel the sort of envy I'd feel if I had a phone with a smaller lower resolution screen.

Has anyone run the same benchmark on an iPhone 4S that's been upgraded to iOS6? That would an (ahem) Apples to Apples comparison.

I think I have seen the comparison between iOS5xx and iOS6 on the iPhone 4S and if I remember correctly it dropped the numbers >1800. Can't remember where I saw it (there's been a lot written about this today).

These benchmarks are really pretty meaningless. At this point I'd be much more concerned with how small the iphone screen is and how low its resolution is than how fast it runs an arbitrary group of javascripts.

My unlocked Galaxy Nexus is so fast at everything I use it for that while I'm sure the newer phones might do something a little snappier it's not enough for me to feel the sort of envy I'd feel if I had a phone with a smaller lower resolution screen.

These benchmarks are really pretty meaningless. At this point I'd be much more concerned with how small the iphone screen is and how low its resolution is than how fast it runs an arbitrary group of javascripts.

My unlocked Galaxy Nexus is so fast at everything I use it for that while I'm sure the newer phones might do something a little snappier it's not enough for me to feel the sort of envy I'd feel if I had a phone with a smaller lower resolution screen.

These benchmarks are really pretty meaningless. At this point I'd be much more concerned with how small the iphone screen is and how low its resolution is than how fast it runs an arbitrary group of javascripts.

My unlocked Galaxy Nexus is so fast at everything I use it for that while I'm sure the newer phones might do something a little snappier it's not enough for me to feel the sort of envy I'd feel if I had a phone with a smaller lower resolution screen.

Not everyone has a size complex and you're not going to notice the "lower resolution" screen given that the pixel density is actually a little higher.

These benchmarks are really pretty meaningless. At this point I'd be much more concerned with how small the iphone screen is and how low its resolution is than how fast it runs an arbitrary group of javascripts.

My unlocked Galaxy Nexus is so fast at everything I use it for that while I'm sure the newer phones might do something a little snappier it's not enough for me to feel the sort of envy I'd feel if I had a phone with a smaller lower resolution screen.

These benchmarks are really pretty meaningless. At this point I'd be much more concerned with how small the iphone screen is and how low its resolution is than how fast it runs an arbitrary group of javascripts.

My unlocked Galaxy Nexus is so fast at everything I use it for that while I'm sure the newer phones might do something a little snappier it's not enough for me to feel the sort of envy I'd feel if I had a phone with a smaller lower resolution screen.

Bullshit. Javascript performance is important to web developers and users. It improves user experience and increases the scope of what is possible with web applications. Just because you don't care about performance, but instead care about the size of your phone screen does not mean that the benchmarks are meaningless.

These benchmarks are really pretty meaningless. At this point I'd be much more concerned with how small the iphone screen is and how low its resolution is than how fast it runs an arbitrary group of javascripts.

My unlocked Galaxy Nexus is so fast at everything I use it for that while I'm sure the newer phones might do something a little snappier it's not enough for me to feel the sort of envy I'd feel if I had a phone with a smaller lower resolution screen.

Bullshit. Javascript performance is important to web developers and users. It improves user experience and increases the scope of what is possible with web applications. Just because you don't care about performance, but instead care about the size of your phone screen does not mean that the benchmarks are meaningless.

Last month I'm sure this this benchmark test would've been much more meaningful to him.

These benchmarks are really pretty meaningless. At this point I'd be much more concerned with how small the iphone screen is and how low its resolution is than how fast it runs an arbitrary group of javascripts.

My unlocked Galaxy Nexus is so fast at everything I use it for that while I'm sure the newer phones might do something a little snappier it's not enough for me to feel the sort of envy I'd feel if I had a phone with a smaller lower resolution screen.

Bullshit. Javascript performance is important to web developers and users. It improves user experience and increases the scope of what is possible with web applications. Just because you don't care about performance, but instead care about the size of your phone screen does not mean that the benchmarks are meaningless.

Last month I'm sure this this benchmark test would've been much more meaningful to him.

Considering my phone is approaching a full year on the market and is far from the bleeding edge, no, last month my opinion on this wouldn't have been different.

The iphone just isn't compelling to me, it has no advantages over a year old Galaxy Nexus that I find meaningful.

These benchmarks are really pretty meaningless. At this point I'd be much more concerned with how small the iphone screen is and how low its resolution is than how fast it runs an arbitrary group of javascripts.

My unlocked Galaxy Nexus is so fast at everything I use it for that while I'm sure the newer phones might do something a little snappier it's not enough for me to feel the sort of envy I'd feel if I had a phone with a smaller lower resolution screen.

You know a "I don't Like Apple" Would have sufficed....

Or if he wanted to be more subtle, "I'd be more concerned with how a company name has two 'p's, starts with 'A' and ends with 'le'."

These benchmarks are really pretty meaningless. At this point I'd be much more concerned with how small the iphone screen is and how low its resolution is than how fast it runs an arbitrary group of javascripts.

My unlocked Galaxy Nexus is so fast at everything I use it for that while I'm sure the newer phones might do something a little snappier it's not enough for me to feel the sort of envy I'd feel if I had a phone with a smaller lower resolution screen.

Bullshit. Javascript performance is important to web developers and users. It improves user experience and increases the scope of what is possible with web applications. Just because you don't care about performance, but instead care about the size of your phone screen does not mean that the benchmarks are meaningless.

Last month I'm sure this this benchmark test would've been much more meaningful to him.

Considering my phone is approaching a full year on the market and is far from the bleeding edge, no, last month my opinion on this wouldn't have been different.The iphone just isn't compelling to me, it has no advantages over a year old Galaxy Nexus that I find meaningful.

Now that's a reasonable answer. I can buy that. The iPhone isn't for you. But you can't dismiss the findings of the test just because you don't find them important...... to you.

These benchmarks are really pretty meaningless. At this point I'd be much more concerned with how small the iphone screen is and how low its resolution is than how fast it runs an arbitrary group of javascripts.

An odd statement. It almost sounds like you have an agenda...

Quote:

My unlocked Galaxy Nexus is so fast at everything I use it for that while I'm sure the newer phones might do something a little snappier it's not enough for me to feel the sort of envy I'd feel if I had a phone with a smaller lower resolution screen.

...and there it is. You're justifying your Galaxy Nexus being slower at this benchmark by repeatedly claiming that the iPhone 5 has a "smaller lower resolution screen" (ha). Others are right; a simple "I don't like Apple" would have sufficed.

These benchmarks are really pretty meaningless. At this point I'd be much more concerned with how small the iphone screen is and how low its resolution is than how fast it runs an arbitrary group of javascripts.

An odd statement. It almost sounds like you have an agenda...

Quote:

My unlocked Galaxy Nexus is so fast at everything I use it for that while I'm sure the newer phones might do something a little snappier it's not enough for me to feel the sort of envy I'd feel if I had a phone with a smaller lower resolution screen.

...and there it is. You're justifying your Galaxy Nexus being slower at this benchmark by repeatedly claiming that the iPhone 5 has a "smaller lower resolution screen" (ha). Others are right; a simple "I don't like Apple" would have sufficed.

Not even close. Just noting what I find inferior about the new iphone compared with my year old Nexus. In the ways that matter to me the iphone is an inferior phone in a measurable way. In ways that don't matter to me and seem rather arbitrary it apparently is much better. (browser javascript benchmarks which are already so fast on my devices that the difference just isn't easily noticeable)

Slow news day? A report saying the phone is the fastest at a benchmark that isn't relevant anymore, supposedly because each manufacturer tunes its browser (so it reflects real life javascript performance when using the out of the box browser).

I wish everybody, from the haters and bloggers (don't get me started on analysts) to the blind followers, could wait a week so serious people (anandtech?) could give us a clearer technical picture about the device.

I think Anandtech reported on it because of what it says about the CPU, namely that it tells us the constrained memory interface of the A9 has been resolved by using the new custom ARM architecture. It's just a tidbit but it gives insights into why Apple went this route in the first place.

In reality Sunspider is more or less a test of the software stack, rather than the processor.

It just shows that webkit2 used in iOS 6 is highly optimized.

Again, this is wrong. Regardless of differences between stacks, it's very useful for comparing within the same software stack. We will have a variety of devices running iOS 6, and benches for some of them have already come out. That still leaves the A6 around twice as fast in this particular measure (single threaded and apparently memory hammering) vs the well characterized A5, which does reveal a certain amount of information. As more tests can be done that hit other subsystems the picture will fill out about the strengths and weaknesses, which will be interesting given the level of custom control Apple had. The tradeoffs should reveal a bit about exactly what Apple themselves think is important to spend transistors and power on.

These benchmarks are really pretty meaningless. At this point I'd be much more concerned with how small the iphone screen is and how low its resolution is than how fast it runs an arbitrary group of javascripts.

An odd statement. It almost sounds like you have an agenda...

Quote:

My unlocked Galaxy Nexus is so fast at everything I use it for that while I'm sure the newer phones might do something a little snappier it's not enough for me to feel the sort of envy I'd feel if I had a phone with a smaller lower resolution screen.

...and there it is. You're justifying your Galaxy Nexus being slower at this benchmark by repeatedly claiming that the iPhone 5 has a "smaller lower resolution screen" (ha). Others are right; a simple "I don't like Apple" would have sufficed.

Not even close. Just noting what I find inferior about the new iphone compared with my year old Nexus. In the ways that matter to me the iphone is an inferior phone in a measurable way. In ways that don't matter to me and seem rather arbitrary it apparently is much better. (browser javascript benchmarks which are already so fast on my devices that the difference just isn't easily noticeable)

Should I stop reading all those "iPhone 5 is noticeably faster in Safari" reviews?

Just opening Twiteer will mean executing more JS than in Sunspider. Additionally Sunspider consist of large number of tasks, but each very small. Good for finding bottlenecks on low level, but harder to judge meaning for real world apps.

In reality Sunspider is more or less a test of the software stack, rather than the processor.

It just shows that webkit2 used in iOS 6 is highly optimized.

Again, this is wrong. Regardless of differences between stacks, it's very useful for comparing within the same software stack. We will have a variety of devices running iOS 6, and benches for some of them have already come out. That still leaves the A6 around twice as fast in this particular measure (single threaded and apparently memory hammering) vs the well characterized A5, which does reveal a certain amount of information. As more tests can be done that hit other subsystems the picture will fill out about the strengths and weaknesses, which will be interesting given the level of custom control Apple had. The tradeoffs should reveal a bit about exactly what Apple themselves think is important to spend transistors and power on.

I should have been clearer then, it is mostly useless to test over different devices running different operating systems, phew.

I think the greater news is that Apple designed it´s own core, the next question is if it is any good, and it seems to be

So, this particular benchmark may or may not be relevant to you, but it is important for the big picture and for the bigger question of what Apple will do next, selling this CPUs to others? Designing desktop cores? Nothing because this one turns out to have a phisical unpatchable flaw?

I wish everybody, from the haters and bloggers (don't get me started on analysts) to the blind followers, could wait a week so serious people (anandtech?) could give us a clearer technical picture about the device.

You mean like the SunSpider benchmarks that were compared and analyzed by... AnandTech?

I think the greater news is that Apple designed it´s own core, the next question is if it is any good, and it seems to be

So, this particular benchmark may or may not be relevant to you, but it is important for the big picture and for the bigger question of what Apple will do next, selling this CPUs to others? Designing desktop cores? Nothing because this one turns out to have a phisical unpatchable flaw?

Also as John Gruber and others have reported an iphone4s with iOS6 gets 1750 or so.

Stock Browser, CM10 Nightly (Still not optimized for device as sources aren't out yet), no overclocking, don't see the point on a phone. I am using the i9100 (I'm in Canada) so it's faster in some benchmarks than the GS3.

I think the greater news is that Apple designed it´s own core, the next question is if it is any good, and it seems to be

So, this particular benchmark may or may not be relevant to you, but it is important for the big picture and for the bigger question of what Apple will do next, selling this CPUs to others? Designing desktop cores? Nothing because this one turns out to have a phisical unpatchable flaw?

I seem to recall the A5 series being their design as well.

The SoC as a whole was Apple's design, yes, but the CPU itself was more or less stock ARM9.

The CPU in the A6 is custom Apple designed to be something like an ARM15 core, but apparently tuned for better power efficiency.

I don't quite understand how thier could be a "custom" ARM cpu . ARM licenses the IP core and it's up to each developer to implement it as they see fit. The a6 is no more "custom" then a snapdragon or tegra

It's really just a benchmark of browser optimization. If he's using a custom rom and Chrome then I don't know that anything is impossible, especially if it's overclocked. (which is a real possibility)

Also, I just ran the test on my Galaxy Nexus and got huge variation between the browsers. Stock Jellybean browser turned in 1549, Chrome was about 1890, and Firefox was 1850.

I could flash a different kernel and test with overclocking but there really isn't much of a point. Here is a screenshot of the test if it matters.

Ahh no need to post that I believe you. Interesting that both you and and jackstrop's post are 15-30% quicker than the scores for your devices on AnandTech's chart. Due to updated OS and browsers I believe but still kind of cool to see.Thanks!

I don't quite understand how thier could be a "custom" ARM cpu . ARM licenses the IP core and it's up to each developer to implement it as they see fit. The a6 is no more "custom" then a snapdragon or tegra

From Anandtech:

Quote:

There are two types of ARM licensees: those who license a specific processor core (e.g. Cortex A8, A9, A15), and those who license an ARM instruction set architecture for custom implementation (e.g. ARMv7 ISA). For a long time it's been known that Apple has both types of licenses. Qualcomm is in a similar situation; it licenses individual ARM cores for use in some SoCs (e.g. the MSM8x25/Snapdragon S4 Play uses ARM Cortex A5s) as well as licenses the ARM instruction set for use by its own processors (e.g. Scorpion/Krait implement in the ARMv7 ISA).

Not sure how Nvidia and Samsung fit into this licensing scheme. It may be that the A6 is no more custom than a Snapdragon, but it is likely much more custom than a Tegra based on performance per clock improvement. I suspect that the Tegra is a vanilla licensed A9.

I don't quite understand how thier could be a "custom" ARM cpu . ARM licenses the IP core and it's up to each developer to implement it as they see fit. The a6 is no more "custom" then a snapdragon or tegra

Qualcomm's Scorpion and Krait ARM cores are custom designed by Qualcomm. The microarchitectures are different from the ARM Holdings cores as seen in Exynos, OMAP, Tegra and Apple A4/A5. In this case, Qualcomm got a license from ARMH to be able to implement a ARM v7 ISA CPUs as they see fit. AMD builds and architects x86 ISA CPUs totally different from Intel. That kind of thing.

Linley Gwinnep published a report yesterday stating the Apple likewise got a license from ARMH to implement an ARM ISA CPU of Apple's own design. The chip architecture is Apple's. The circuit design is Apple's. Just like Qualcomm's Scorpion and Krait cores belong to Qualcomm.

The Tegras on other hand license out the ARMH designs down to the circuit design. It's highly likely they buy the circuit masks from ARMH as well.

In a galaxy far far away a long long time ago, Intel also had a custom ARM architecture (StrongARM). They sold that off to Marvell and now Marvell sells it.

The CPU in the A6 is custom Apple designed to be something like an ARM15 core, but apparently tuned for better power efficiency.

It's highly doubtful that the A6 ARM CPU core is something like Cortex A-15. It runs at 1 GHz and gets something like 4 DMIPS/Hz. It's going to be a pretty shallowly pipelined microarchitecture that's got to be at least 3 issue wide with more OOOE, branch prediction, L/S and execution resources.

Cortex-A15 is deeply pipelined in order to achieve > 2 GHz clocks at 28/32 nm for applications in servers. It's expected to get 3.5 DMIPS/Hz, but who knows how it will handle spaghetti code though.