Customers want everything with a cheesecake thrown in! We want our mobile devices to be responsive and fast when we use them, but we also expect solid battery life and high powered processors tend to use more battery life compared with the low power alternatives. There are several ways that manufacturers can optimize their technology to combine what might be considered polar opposites, including using multi-core processors and having the workload split across two or more processor cores.
There are some issues with this. The key one is that although Android itself is aware of multiple processor cores, the vast majority of applications are only aware of one or two processor cores. The third core spends much of its time idle and for many people, the fourth core is rarely given anything to do. These devices usually show high benchmarks because most benchmarking applications use as many processor cores as fitted, which doesn’t reflect real world use.
One of the issues around using a quad core System-on-Chip (or SoC) is the additional complexity involved with integrating more processor cores into the operating system. Whilst these cores can be shut down by the hardware, they still require a little resource or energy and as such, they’re electronic “dead weight.” This is a lot of effort for a high benchmark score and shows how marketing can overrule engineering sense some of the time! Fortunately, most quad core processors have very efficient overheads; there isn’t much additional workload controlling four processor cores compared with two.
One traditional technique for dealing with this power and battery equation is to use a powerful, dual core processor. Providing the processor is powerful, we should avoid seeing any slowdowns during use. And there are three great examples of Android devices with a dual core application processor: the 2012 Samsung Nexus 10, 2013 Motorola Moto X and the 2014 HTC Nexus 9. Each uses a dual core processor where many if not most competitors had switched to a quad core unit.
Unfortunately, it is possible to see the Nexus 10 and Moto X visibly slow down during normal activities, even if only briefly. I’ve only seen this a few times on the Nexus 10 but the most reliable way to trigger it is when multitasking; I can be loading a document in Google Docs whilst updating applications via Google Play and presumably another application devices it needs to do something. It’s a little easier to spot this on the Moto X, which has a less powerful application processor. The above scenario doesn’t happen often, but often enough. I have not used the Nexus 9 enough to witness this behaviour but I suspect it’ll do it if provoked enough!
Most of the time, having 2.0 processor cores is all that Android needs but some of the time, perhaps 2.5 cores would be a better fit. Unfortunately, there aren’t any triple core mobile processors that I’m aware of, which is presumably why manufacturers use a quad core processor for the best customer experience possible.
One of the techniques that SoC manufacturers have introduced in the last twelve months is the idea of the big.LITTLE processor. In its simplest form, the processor module includes a set of low powered, high efficiency processor cores together with a set of high powered, but less efficient processor cores. The idea behind the technology is that when the device is not working hard, the processor uses the lower powered cores but when the user demands more performance, the processor switches to the higher powered processor cores. In execution, things are not so straightforward: for best results, the processor needs to anticipate if it is worth moving between the two processor types. Some designs are able to switch individual processor cores in and out depending on the workload, others must use either the lower powered or higher powered cores. Some designs – such as the recently announced Nvidia Tegra X1 – will use any or all of the eight processor cores available to the processor.
And this makes me think that a two by two big.LITTLE processor could be the sweet spot between high performance and long battery life. Combining a dual core, low power processor core with a dual core, high performance core means we can have our 2.5 core solution to the problem detailed above.
We’ve seen rumors that Qualcomm are working on a quad core low power processor paired up with a dual core high performance processor, but that’s been it so far. I can only speculate that marketing departments do not like the idea of a big.LITTLE quad core processor and instead prefer the idea of an octa core processor.