The new Samsung Galaxy S4 has been one the most talked about and anticipated devices of 2013 yet recent reports of the device have been far from positive. The two most touted features of the Galaxy S4, the Exynos 5 Octa that powers one-third of Galaxy S4s and the 5 inch AMOLED display that powers their devices have both been subject to criticism with display ghosting and a less than popular S-Lag. While the display ghosting could be due to the new diamond pixels or manufacturing defects the issue of S-Lag surprised many due to the raw performance of the new Exynos 5 chipset which has led speculation that the issue is purely software related.
The Exynos 5 processor uses ARM's big.LITTLE architecture, it is not an original design by Samsung, but a design they build with a license; other companies that will be utilising this design include MediaTek, Fujitsu and LG. The design utilises a 4+4 core layout, where there are four high performance ARM Cortex-A15 cores and four power saving ARM Cortex-A7 cores. The idea behind the design revolves around dynamic, intelligent switching between the cores such as 3 A15s and 1 A7 being active, this means there are never more than four cores active at the same time as shown in the video below. This design should theoretically lead to power savings without compromising performance, however this appears to be far from the case.
As a XDA-Developer user has discovered, the switching process in the Galaxy S4 has far been far from optimal. Instead of utilising core migration where individual cores are migrated from low to high performance cores and vice versa leading to the optimal usage of processing power and energy efficiency as shown in the ARM demo. Unfortunately the Samsung Galaxy S4 currently uses cluster migration where tasks are switched between clusters instead of individual cores, as a result excess processing power can be used, wasting energy and potentially slower switching leading to the S-Lag. That means despite having this fancy design, it is hardly any different from Nvidia's Tegra chipset with their 4+1 designs.
Fortunately this issue should be simply software related, so a future firmware update should be able to turn the Galaxy S4 from using cluster migration to core migration where cores are switched individually has they reach a certain load threshold instead of waiting for the entire cluster to exceed the load amount, leading to battery savings and a zippier user interface. In the ARM demo in MWC, we clearly see the core migration software working its magic so it is odd that the Galaxy S4 is not capable of this despite being released months later. For Samsung's sake this update should be their top priority because the longer they sit on their hands, the greater the chance of their reputation being permanently tarnished.
In the future though we may see even more intelligent usage of the ARM big.LITTLE architecture with HMP (Heterogeneous Multi-Processing). Current processor designs utilise SMP, where all cores are treated equal and tasks are assigned to the low power A7s by default and only get bumped up to the A15s when required. With a HMP design the phone will know there is a difference between the A7 and A15 cores and will assign the task intelligently based on the task at hand instead of waiting for it to overload the A7 core before moving the A15 leading to even better performance. The reason why this design isn't currently utilised is due to the limitations of the Linux kernel which is yet to support HMP, but organisations such as Linaro and ARM are working hard to change this.