Mea Culpa: Why are the Nexus One Linpack scores so much higher than on my phone?
In my previous post, I stated that the increased performance with Android 2.2 (Froyo) runs on the Nexus One, Droid Incredible, and the EVO 4G were due to one thing; NEON. As zygame pointed out to me in a comment to that post, NEON was designed for multimedia acceleration. More specifically, it is a set of SIMD instructions for integer and single-precision floating-point arithmetic to accelerate multimedia and signal processing algorithms. A little closer examination there would have caught the fact that the Linpack benchmark is primarily a double-precision floating-point benchmark.
Okay, then what is the reason? Could it be the VFP extension for double-precision arithmetic? I think it helps, devices from Samsung using the S5PC110 processor show an improvement. However, they do not show the dramatic improvement that we see with the Nexus One and others. All of the 1GHz smartphones use ARM processors with almost identical features. Digging deeper, it looks like all the fastest phone use the Qualcomm Snapdragon processor.
So, what is it about the Snapdragon then that makes it perform so much better on the Linpack benchmarks? The Nexus One, Droid Incredible, and the EVO 4G use the same type processor, the Qualcomm Snapdragon processor with the Scorpion core. The Scorpion core is an a 1-GHz control processor based on ARM’s Cortex instruction set supported by an array of 600-MHz DSP and accelerator cores for baseband and video processing that offer 128-bit single instruction multiple data (SIMD) functionality. Thus, the Scorpion core can process SIMD instructions in 128-bit-wide chunks, while most other Cortex based chips are restricted to 64 bits. Scorpion also has a deeper pipeline, which includes VFP commands, while VFP commands are not pipelined in the Cortex.
The Android 2.2 JIT compiler currently delivers the most significant performance gains for Snapdragon CPUs. Eventually, the JIT compiler will be better optimized for the other ARM processors. Hopefully, they will show the performance increases shown for the Scorpion core processors, but I suspect they will not reach the top of the list.
September 24, 2010 - 11:05 PM
Some of the information from this post came from a great article at ZDNET: http://www.zdnet.co.uk/reviews/smartphones/2010/09/15/benchmarks-high-end-android-smartphones-40090081/