facebook rss twitter

big.LITTLE

British company ARM Holdings designs and licenses technology used in the manufacture of processors that power a vast array of mobile devices. Putting the numbers into perspective, ARM's partners have shipped over 75 billion processors, with the expectation that a further 15 billion will be sold next year. ARM has various Cortex A-series CPUs that are designed for a wide range of devices; some focus on providing maximum performance while others with tend to run with energy efficiency and cost as the leading attributes.

With battery life a key concern for mobile devices, ARM understands that a single processor architecture isn't ideally suited to powering entry-level, mid-range and high-end smartphones and tablets, as each have a different set of power and efficiency requirements. Exploring the high-end market further, characterised by smartphones such as the Samsung Galaxy S7 Edge, there is little need for a powerful CPU when running low-intensity tasks such as emailing or MP3 playback - a smaller, more efficient CPU is able to complete the same task just as proficiently while sipping on considerably less power. Conversely, a powerful CPU is the best candidate for heavy-duty processing required for gaming or multiple-page web browsing, where using a lower-power CPU could lead to a substandard experience.

The right CPU for the task at hand

ARM firmly believes that a processor should do the work it is designed for, rather than a one-fits-all philosophy, and has technology for this specific purpose. Called big.LITTLE processing and already available in a wide range of handsets, it works by combining architecturally-identical big, powerful processors with little, energy efficient ones. The premise is disarmingly simple: the use of the correct processor for a given application results in lower overall energy consumption and longer battery life.

The current best big.LITTLE implementation pairs the powerful Cortex-A72 CPU with an energy-efficient Cortex-A53. The CPUs are tied together via two interfaces called the CoreLink CCI and GIC Interrupt control, provided by ARM. Presently, each CPU can have up to four processing cores whose performance is further boosted by having access to on-chip L2 cache. The combination of a CPU's cores and caches is called a cluster. A big.LITTLE four-core cluster of Cortex-A72 and Cortex-A53 yields a total of eight cores, and this is why the very latest mobile devices are often referred to as octo-core models.

How big.LITTLE works

Running a particular application on the most appropriate CPU/cluster requires that a device's operating system and power-management algorithms, called dynamic voltage and frequency scaling (DVFS), monitor and allocate workload correctly. The operating system is in charge of deciding which cluster is active, depending upon load, and ARM has fine-tuned the DVFS profiles to ensure that, in our examples, migration to the Cortex-A72 occurs once the application(s) require more processing power than the Cortex-A53 can provide when operating at its highest frequency. With big.LITTLE's primary focus of reducing overall power consumption when compared to a single performance-orientated CPU, only one processor cluster is active at one time; the other cluster - be it Cortex A72 or Cortex-A53 - is powered down.

The older software implementation, as found on the Samsung Galaxy S4, is called Cluster Migration, where the operating system sees cluster blocks instead of individual cores in the Cortex-A15 and Cortex-A7 big.LITTLE configuration. Cluster-level switching can be inefficient if, for example, there is high load on a single core contained within a Cortex-A7, yet other cores within cluster are running at low load. In this case, even though the Cortex-A7 has the multi-core ability to handle the task, the entire cluster may be switched off and migrated to the power-hungry, faster Cortex-A15.

Future variants of big.LITTLE will take a more fine-grained approach to using the correct processor(s) for the task at hand. CPU Migration is the next step, and while it takes the same high-level approach as Cluster Migration, each power-efficient core in a big.LITTLE configuration is paired with a high-performance one from the other, so one from big and one from LITTLE join forces. It takes around 30 microseconds for the big.LITTLE software to move the workload from one of the paired cores to another, based on load requirements, but the trade-off between lost time and improved energy efficiency is worth it. This paired approach of CPU Migration requires that the Cortex processors have an equal number of cores.

The optimum method of flitting between two big.LITTLE processors is called Global Task Scheduling, where all cores can be active at any time. The operating-system scheduler can then dynamically allocate workload on any core in either processor and, as such, device manufacturers can use non-core-matching configurations - two-core Cortex-A53s paired with four-core Cortex-A72s, for example. Unused processors can be turned off to conserve power, too.

Though the technology is already present from ARM, device manufacturers and operating-system engineers need to work together to harness the benefits of big.LITTLE.

How much power does big.LITTLE save?

Compared to running a device with a latest-generation Cortex-A72 cluster alone, a big.LITTLE Cortex-A72/Cortex-A53 configuration, both able to access the benefits of 64-bit computing, can deliver the same performance but reduce overall power consumption by up to 70 per cent in low-load situations and up to 50 per cent when there's moderate load, defined as web browsing with MP3s playing in the background. Performance remains excellent because, without the user knowing it, the device intelligently switches to the more powerful Cortex-A72 cluster as and when needed.

ARM's big.LITTLE is based on the premise that a single processor isn't ideally suited for high performance and low power; it's best to run two processors that are designed for performance and energy efficiency. Seamless switching between the two has the enviable benefit of improving battery life, and ARM and its partners are working hard to maximise the potential of big.LITTLE in future hardware.

If you find that your smartphone or tablet has considerably better battery life than your friend's, without sacrificing performance, it could well be down to the implementation of ARM's nascent big.LITTLE technology.