We won't go too deep into Krait's CPU architecture, because we've already done so in an earlier piece. What we can provide however is a quick recap. Architecturally Krait isn't a design of tradeoffs, rather it's a significant step forward along almost all vectors. Each core can fetch, decode and execute more instructions in parallel than its predecessor (Scorpion, Snapdragon S1/S2/S3).

Qualcomm Architecture Comparison
Scorpion Krait
Pipeline Depth 10 stages 11 stages
Decode 2-wide 3-wide
Issue Width 3-wide? 4-wide
Execution Ports 3 7
L2 Cache (dual-core) 512KB 1MB
Core Configurations 1, 2 1, 2, 4

Even if you're not comparing to Qualcomm's previous architecture, Krait maintains the same low level advantage over any other ARM Cortex A9 based design (NVIDIA Tegra 2/3, TI OMAP 4, Apple A5). Clock speeds are up with only a small increase in pipeline depth. The combination of these two factors alone should result in significant performance improvements for even single threaded applications. If you want to abstract by one more level: Krait will be faster regardless of application, regardless of usage model. You're looking at a generational gap in architecture here, not simply a clock bump.

Architecture Comparison
ARM11 ARM Cortex A8 ARM Cortex A9 Qualcomm Scorpion Qualcomm Krait
Decode single-issue 2-wide 2-wide 2-wide 3-wide
Pipeline Depth 8 stages 13 stages 8 stages 10 stages 11 stages
Out of Order Execution N N Y Partial Y
FPU VFP11 (pipelined) VFPv3 (not-pipelined) Optional VFPv3 (pipelined) VFPv3 (pipelined) VFPv4 (pipelined)
NEON N/A Y (64-bit wide) Optional MPE (64-bit wide) Y (128-bit wide) Y (128-bit wide)
Process Technology 90nm 65nm/45nm 40nm 40nm 28nm
Typical Clock Speeds 412MHz 600MHz/1GHz 1.2GHz 1GHz 1.5GHz

The memory interface of the chip has been improved tremendously. At a high level, the MSM8960 is Qualcomm's first SoC to feature PoP support for two LPDDR2 memory channels. We suspect there are lower level improvements to the memory interface as well however we don't have more details from Qualcomm, not to mention the current state of memory latency/bandwidth testing on Android is pretty abysmal.

Quantifying the Krait performance advantage requires a mixture of synthetic and application level tests. We'll start with Linpack, a Java port of the classic memory bandwidth/FPU test:

Linpack - Single-threaded

Linpack - Multi-threaded

Occasionally we'll see performance numbers that just make us laugh at their absurdity. Krait's Linpack performance is no exception. The performance advantage here is insane. The MSM8960 is able to deliver more than twice the performance of any currently shipping SoC. The gains are likely due in no small part to improvements in Krait's cache/memory controller. Krait can also issue multi-issue FP instructions, A9 class architectures can apparenty only dual-issue integer instructions.

Moving on we have our standard JavaScript benchmarks: Sunspider and Browsermark. Both of these tests show significant performance improvements, although understandably not by the margins we saw above in Linpack:

SunSpider Javascript Benchmark 0.9.1 - Stock Browser

BrowserMark

Krait and the MSM8960 are 20 - 35% faster than the dual-core Cortex A9s used in Samsung's Galaxy Nexus. For a look at how overall web page loading is impacted we loaded AnandTech.com three times and averaged the results. We presented results with the browser cache cleared after each run as well as results after all assets were cached:

AnandTech.com Page Loading Comparison (Stock ICS Browser)
Browser Cache Cleared Cache In Use
Qualcomm MDP MSM8960 (Krait) 5.5 seconds 3.0 seconds
Samsung Galaxy Nexus (ARM Cortex A9) 5.8 seconds 4.4 seconds

There's hardly any advantage when you're network bound, which is to be expected. However whenever the device can pull assets from a local cache (something that is quite common as images, CSS and even many page elements remain static between loads) the advantage grows considerably. Here we're seeing a 46% advantage from Krait over the Cortex A9 in the Galaxy Nexus.

We turn to Qualcomm's own Vellamo as a system/CPU/browser performance test:

Vellamo Overall Score

Again, we're showing a huge performance advantage here thanks to Krait. Seeing as how Vellamo is a Qualcomm benchmark don't get too attached to the advantage here, but it does echo some of what we've seen earlier.

Finally we have Rightware's Basemark OS 1.1 RC which is fast becomming an impressively polished system benchmark, one which will hopefully eventually take the place of the likes of Quadrant.

Basemark OS - System
HTC Rezound Galaxy Nexus MDP MSM8960
System Overall Score 658 538 907
Simple Java 1 298 loops/s 210 loops/s 375 loops/s
Simple Java 2 7.28 loops/s 8.61 loops/s 10.8 loops/s
SMP Test 35.3 loops/s 49.2 loops/s 64.4 loops/s
100K File (eMMC->SD) 6.49 mB/s 9.52 mB/s 8.64 mB/s
100K File (SD->eMMC) 33.0 mB/s 17.8 mB/s 39.8 mB/s
100K File (eMMC->eMMC) 37.8 mB/s 34.5 mB/s 48.9 mB/s
100K File (SD->SD) 8.47 mB/s 8.30 mB/s 12.7 mB/s
Database Operation 10.0 ops/s 5.73 ops/s 19.4 ops/s
Zip Compression 0.509 s 0.848 s 0.561 s
Zip Decompression 0.097 s 0.206 s 0.073 s

On the CPU centric tests Basemark OS is showing anywhere from a 20% - 80% increase in performance over the 1.5 GHz APQ8060 based HTC Rezound. IO performance is also tangibly improved although that could be a function of NAND performance rather than the SoC specifically.

These results as a whole simply quantify what we've felt during our use of the MSM8960 MDP: this is the absolute smoothest we've ever seen Ice Cream Sandwich run.

Dual Core Krait in an MDP - the MDP8960 GPU Performance - Adreno 225
Comments Locked

86 Comments

View All Comments

  • Denithor - Wednesday, February 22, 2012 - link

    Probably very much like desktop performance here: going from 1 to 2 cores is a huge upgrade, even for single-threaded apps, because it off-loads background chores to the second core and you get a full core dedicated to your running app. Going from there to 3/4/6/8 cores is really only helpful if your apps are truly multi-threaded or you're heavily multitasking.

    Now, the increase in IPC is definitely going to help everything go faster.
  • vision33r - Wednesday, February 22, 2012 - link

    Then, what's the point of Nvidia doing the quad core and even planning for greater than 4 cores.
  • Wishmaster89 - Wednesday, February 22, 2012 - link

    IMHO its only pure marketing. Eventually we'll get to a point where we'll have more cores in our phones than in most desktop workstations, only because it'll sell better. Sad but true.
  • Smart hero - Friday, February 24, 2012 - link



    I think an optimizes performance for Smart phone win over high-end end one ( I believe pod’s need high-end performance )

    Reason
    1.Less game can be played in a small screen .
    2.smart phone is not a cloud computer .
    3.Traditionally , still we use win-32 bit more than 64 bit …are we changing with CPU???????????
  • R1V4L - Tuesday, April 3, 2012 - link

    How can You compare these video cards when the hardware is running different versions of software ?
    Let me tell you that I've tested my Samsung Galaxy S2 running official Android 4.0.3 with Vsync on and on Egypt test I got 60fps !!! - evidently this result is influenced by the framelimit imposed by Samsung drivers.
    So these benchmarks You did are not showing us the truth. Sorry to raise this problem - but I dare You to do these tests again :)))
  • R1V4L - Tuesday, April 3, 2012 - link

    Galaxy S2 - official android 4.0.3 : 45.67 FPS
    Funny, huh ?!
    Redo the tests, please - otherwise we will think this is a commercial crappy presentation for new products - not a professional benchmark.

Log in

Don't have an account? Sign up now