Smartphones and tablet don’t just use “processors”, they use what’s called a System-on-a-Chip (or SoC). But what is an SoC? The one-liner would be that it is the equivalent of a computer motherboard, including main processor, graphics processor and memory — on a single chip. I’m writing this partly because I want to refer to it later on, but also because most of us read plenty of generic comments such as “the smartphone X is powered by the ARM Y”. This is supposed to give us a clue as for how fast a smartphone/tablet is, but it really does not. Here’s why.
A System-on-a-Chip is composed of many sub-components such as one or more central processors (or CPU), often using a design from ARM, a company that specializes in designing low-power processors and systems).
Modern SoCs also come with advanced (DirectX-9 equivalent) graphics capabilities that can surpass game consoles like the Nintendo Wii. Imagination Technologies, which was once known in the PC world with its “PowerVR” graphics cards, licenses its graphics processors designs to many SoC makers, including Samsung, Apple and many more. Others like Qualcomm or NVIDIA design their own graphics architecture.
Finally, SoCs come with a myriad of smaller co-processors that usually don’t get any of the glory. They are nonetheless critical to overall system performance. The video encoding and decoding hardware powers the “camcorder” functionality of smartphones. The image processor ensures that photos are processed properly and saved quickly and the audio processor frees the CPU(s) from having to work on audio signals. Together, all those components -and their associated drivers/software- define the overall performance of a system.
Now, you understand why having such or such “ARM processor”, is interesting, but hardly “defining”.
While the main processor might not perform all the heavy lifting, the CPU is nonetheless a must-have component of the SoC. Modern SoCs have two, and soon four, processors cores as it has been proven that “multi-core “can help speed things up in some case, while keeping the power envelope within an acceptable limit. Note that system performance does *not* scale linearly with more processors, but specific app performance might.
As I said earlier, the large majority of SoC designs are based on an ARM architecture because ARM has been traditionally so power-efficient. Although Intel has vowed to enter that space for some time, the company is probably still years away from being a direct threat to ARM. But Intel is not to be underestimated. Years ago, people laughed at their attempt to get into the server market, but look at who’s laughing now…
Also, the mere words “ARM version X” don’t mean much. You should know that there are basically two ways of using ARM’s intellectual property. A chip maker can license the whole CPU design and use it “as is”, or license the instruction set and redo everything themselves (hopefully, for the better). A number of leading semiconductor companies did opt for the latter.
Keep in mind that besides the design of the processor itself, the memory subsystem (bus, caches) can, and will, greatly impact overall performance.
For even the simplest graphics tasks, like drawing a rectangle, a graphics processor will outperform a CPU -by far-, and they do so at a lower “performance-per-Watt” ratio. That is why every single modern smartphone and tablet comes with a graphics processor. GPUs are generally used for the 2D (user interface) and polygonal 3D (games) functions.
While processing videos and photos could be done with the CPU or the GPU, dedicated hardware will get the job done with less power than either of those. That is why video encoding/decoding and photo processing often have their own hardware.
It’s quick and easy to read specifications and jump to conclusions, but don’t be fooled: great software is critical to real-world performance. Many of the specifications that we read about are “maximum theoretical numbers” (when they are not “made-up” numbers), and only a perfect execution of the software in the most favorable conditions can lead to such performance. In the business, those theoretical numbers are called “speed of light” and the question is always “how close can we get?”
1/ If you really want to know how fast it performs, you have to choose a few applications and measure the execution speed.
2/ While benchmarking is important -especially for bragging rights-, the performance difference only matters if you can perceive it.