Processor Types: Single, Dual, Quad..?
The number of processor cores and their maximum clock speed that a given Android device has become something of a yardstick for measuring the performance. This is not always a fair comparison, because not all processors are created equally. Benchmark tools often provide a flawed insight but are still used as a means of comparison.
Even so, let me take a look under the skin of the description to explain what the real world differences are between the processor types.
In simplistic terms, a processor core is the part of the computer that processes instructions. The reality is somewhat more complicated and I've referenced that some processors have specialised cores for particular duties, such as the Moto X8 processor in the Moto X.
The processor clock speed, or frequency, is often used to define how powerful a device is. Not all processors are equal and this is a flawed but persistent analogy. Different processor families are more or less efficient for a given clock speed.
Modern processors adjust their clock speed based on a number of factors including power consumption, heat and how the device is being used. When the processor has no work to do, it's essentially put into sleep to save power. This trick is especially useful for multi-core processor systems because it means that when the device is working less hard, one or more processor cores may be temporarily disabled.
The quoted clock speed is the maximum clock speed that the processor will run. This is only part of the story! Here's the processor clock speed table for my Nexus 10.
The device tends to bias processor speeds at the 1.7 GHz, 1.0 GHz, 800 MHz and 200 MHz points. It spends most of its time at the 1.0 GHz point, which suggests that Samsung and Google have tuned the hardware to run at the lowest clock speed possible to still give a smooth and fluid interface.
This is one example: different devices have different particular sweet spots.
For the purposes of this article, let us assume that a processor core operating at its maximum clock speed can perform one task in a given period of time and use one unit of energy.
It stands to reason, therefore, that a dual core processor – that is, a processor with two application processor units – can perform twice the amount of work in the same unit of time, but it will also use twice the energy. A quad core processor can complete four times the amount of work and consume four times the amount of energy, again at maximum clock speed.
Luckily for us, Android 4.0 and later doesn't work like this. Instead, the operating system will divide up the tasks across whatever processor cores are available. Let us imagine that in our perfect testbench scenario, Android will divvy up a chore across two processor cores. It will run each core at half maximum speed, so take the same amount of time to complete the item of work.
When it comes to power consumption, the important rule is that power is proportional to the square of voltage. Voltage is increased at a higher processor frequency: if for whatever reason you were to double the voltage pushed into a processor core, you quadruple the power consumption.
Running the processor at a lower voltage and clock frequency uses less power. This in turn produces less heat and chews through less battery and this is why Android has a preference to splitting a task across multiple cores.
The exact power consumption saving depends on the processor model and there are inefficiencies associated with multi-core processors. The more cores a processor has, the lower the potential frequency and voltage required to perform a given task and this is one reason why quad core powered devices such as the 2013 Nexus 7 may be as efficient as the dual core Nexus 10. However, the more cores a processor has, the greater the potential energy loss, complexity and ultimately the cost of the design.
Another consideration for Android is how the operating system runs with many different applications running the background at any one tune. One advantage of a multicore environment is that the interface is generally smoother and much more responsive.
Is there an optimal processor configuration?
In a word, no, but the consensus is two or four!
There's no ideal configuration because it depends on how the device is used, what applications and workload.
Some schools of thought prefer a powerful dual core processor, such as the iPhone, Nexus 10, Moto X. Other devices show terrific battery life with a quad core processor instead, such as the HTC One. The quad core processor can shut down unused cores whereas the dual core application processor may need to ramp up to a higher frequency and voltage more often.
I've already written that one processor core is not the same as another. Different processor families have different tricks in order to either improve performance, reduce power consumption or both.
Examples include the NVIDIA Tegra 3 as used in the 2012 Nexus 7, NVIDIA Tegra 4 and NVIDIA Tegra K1, which are quad core processors that include a fifth low power companion core. Also, Samsung manufacture a number of big.LITTLE processors that combine lower performance, lower power consuming processor cores together with higher performing, higher power cores.