For a long time I had been curious to understand how easy it was for mobile processors to achieve the peak frequencies advertised by semiconductor vendors.
In the case of desktop processors, there is a lot of information available to users who wish to experiment with hardware overclocking. However, the same cannot be said for mobile chips.
So in this article, we’ll take a look at a flagship smartphone to understand how efficiently different parts of the SoC scale in frequency (and power consumption) under real world conditions.
A primer on power consumption
Every chip requires power to run. For electronic devices, the power consumed at a moment in time depends on two values: the operating voltage and current.
The immediate result of power consumption is heat dissipation; because high levels of heat affect the normal operation of any device, a form of dissipation is usually employed to avoid thermal shutdown.
For computers, heat dissipation is handled by rapid active cooling systems placed on various isolated components (CPU, graphics card, etc.).
Active cooling for a desktop PC-type processor
Mobile and embedded platforms typically use SoCs where most (if not all) of the core functionality is integrated on chip, including multicore processors, graphics, video, vision or connectivity. For most of these devices, passive cooling is the only technology available to reduce overheating.
If the SoC consumes less than 4-5W, the mobile device won’t need active cooling.
Smartphones are particularly affected by overheating since they have small, closed cases; in addition, many phones today are built using materials that can amplify heat generation.
Fujitsu has developed a heat pipe for smartphones
Overdriving mobile chips
A common method to reduce heat generation involves throttling performance using DVFS (dynamic voltage and frequency scaling). This real time technique changes the operating voltage and frequency of a chip based on a feedback loop provided by the performance and power characteristics of the device.
When a device is kept under normal operating conditions, a low voltage/low frequency mode conserves power consumption while ensuring that the device works as needed.
DVFS operation for a mobile chip
There are situations though when the various processors on the chip (CPUs, GPUs, video, etc.) have to be pushed to their upper limits for briefs periods of time in order to boost performance. This turbo mode is typically achieved by significantly increasing (i.e. overdriving) the voltage supplied to the chip – hence where the term overdrive comes from.
From the user’s perspective, overdrive usually translates to an immediate increase in the operating frequency of the CPU and/or GPU – and thus a noticeable speedup of the device.
Overdrive is becoming a relevant topic (again) because the mobile industry is bringing computational-intensive paradigms such as virtual reality into the consumer space. In order for a mobile device to provide an optimal VR experience, the SoC must be capable of delivering sustained high performance for long periods of time.
Let’s look at how mobile vendors define overdriving in relation to the peak frequency of their processor cores.
ARM provides information about overdrive frequencies but very little about the values for operating voltages. For example, an official PowerPoint slide from the Cortex-A72 launch indicates the maximum frequencies for the Cortex-A57 and Cortex-A72 CPUs to be 2.0 and 2.5 GHz (when manufactured in using the 20nm and 16nm process node, respectively). The newly announced Cortex-A73 promises to deliver frequencies up to 2.8 GHz under a 750mW power budget using the latest 10nm node.
Intel also specifies the top overdrive values for Atom CPUs but calls them burst frequencies.
Finally, Imagination offers both the overdrive and normal operating frequency for MIPS CPUs. For example, a mobile-oriented P-class CPU reaches 1-1.7 GHz in normal operation; anything above that (e.g. 2 GHz+) can readily be achievable with use of more aggressive implementation techniques and physical libraries.
A real world example
To understand what the normal operating frequency for a mobile CPU is, we must first dig out some silicon manufacturing details. If we look at the latest SoCs built on leading-edge FinFET process nodes, they generally use a nominal operating voltage of 0.8 volts.
Every process node shrink usually leads to a reduction in operating voltage.
In the three charts included below, I’ve created heat maps between operating frequencies and voltages for a mobile chip inside a flagship smartphone selling today; the SoC comes in 16 different bins.
The first two charts represent the big and LITTLE clusters inside an octa-core, 64-bit CPU while the final figure shows data for the GPU; any value above the 0.8V threshold sends the specific part into overdrive.
Analyzing the data for the performance-oriented Cortex-A57 CPU reveals a few things:
- The first three bins (the low rated SKUs) seem to be very sensitive to overclocking, entering overdrive before the CPU hits the 1 GHz mark
- Bins 4-13 (the average rated SKUs) operate anywhere between 1.5 to 1.8 GHz at 0.8 V
- The last three bins (the high rated SKUs) conserve power much better at lower frequencies (up to 700 MHz)
- All bins reach a power wall at about 2 GHz, making it clear that performance efficiency (performance per mW) and not raw performance should be the main metric when evaluating high-end mobile CPUs
The colored charts look better for the power-optimized LITTLE CPU. However, this is to be expected since the 64-bit Cortex-A53 is built from the same efficient DNA that gave us the highly successful Cortex-A7. We notice average operating frequencies of 1.1 to 1.4 GHz at the 0.8 V threshold – in fact, bins 14 and 15 get very close to the 1.6 GHz maximum without hitting the power wall.
Finally, the GPU manages to stay below the overdrive limit for a vast majority of the sampled bins. The DVFS algorithm doesn’t take the GPU into overdrive to achieve peak frequency, demonstrating the inherent power advantage of a parallel architecture designed to execute heavily multi-threaded tasks.
I hopeful this article gave you a better idea of how overdrive typically works for mobile devices. I also recommend this deep dive from AnandTech that looks at SoC power consumption in greater detail.
Finally, if you want to experiment with performance and power consumption optimization for mobile SoCs, check out Basemark’s new PAT tool for real-time power analysis.
Thanks to Rys Sommefeldt for providing the source data.