Without a doubt the Galaxy S4 is one of the major Android smartphone launches of 2013 and so far it looks like Samsung is going to sell millions of these devices. However the Galaxy S4 isn’t without controversy as Samsung has chosen (or has been forced) to ship the Galaxy S4 with two different processors. One model contains the Qualcomm Snapdragon 600 and the other Samsung’s very own Exynos Octa. What most consumers don’t know is that Samsung might be in a position to increase the performance of Exynos Octa based Galaxy S4 devices by as much as 10 percent this summer just by releasing new software.
The head of Samsung Mobile and the co-CEO of Samsung Electronics J. K. Shin has previously told buyers that it doesn’t matter which processor is running in their new Galaxy S4 and in many respects he is right. However there is one key difference between the Snapdragon 600 and the Exynos Octa. The Snapdragon is a quad-core while the Octa has eight cores. But here is the thing, the Octa is used in such a way that only four cores are used at any time. The chip has four low power Cortex A7 cores and four Cortex A15 cores. The A15 core is vastly superior in terms of performance, compared to the A7, but the A7 is great for battery life. So the Exynos Octa uses the A7 cores by default and then when things get busy the A15 cores are activated while the A7 cores are shut down. This means that the Exynos Octa only uses a maximum of four cores at once, making it the same as a quad-core processor but with some clever power saving technology.
This 4 + 4 configuration is all part of ARM’s big.LITTLE architecture – a design that the Cambridge company has licensed to several big names including Samsung, Fujitsu Semiconductor and MediaTek. The marketing of the Exynos Octa has come under criticism because it portrays the idea that the Exynos Octa is an eight core processor with all eight cores running and all eight cores having the same processing power. A quick wander through the Internet will found lots of comments about how great the Exynos Octa is because eights cores are better than four.
In computing an architecture where all the processing units are equal is called Symmetric Multi Processing (SMP), as there is a symmetry (an equality) among all the processing units. But ARM’s big.LITTLE architecture isn’t an SMP design and nor is it tied to the 4 + 4 configuration of the Exynos Octa. Other CPU manufacturers will release different combinations like 2 + 2 during 2013. But something else will also happen later this year. ARM and Linaro, a not for profit organisation which optimizes Linux and Android for ARM processors, are working on a way to activate all the cores in a big.LITTLE processor and make a CPU like the Exynos use all of its cores at the same time.
The switching from one core to another isn’t actually handled by the chip itself, it is done in software. In this case the Linux kernel which is found at the heart of Android. Currently the switch from one core to the next is handled using a technique similar to the way that the CPU frequency is changed to save battery life. But instead of increasing or decreasing the CPU frequency the A7 cores and A15 cores are deactivated or activated according to the load. If ARM and Linaro can get the software right it is possible to create a scheduler in Linux/Android which understands that the CPU isn’t symmetrical but rather asymmetrical. This is known as Heterogeneous Multi Processing (HMP).
According to ARM’s website, Linaro have been working on a HMP scheduler for Linux for several months and the code is available to ARM’s partners including Samsung. ARM plans to have the HMP processing ready for the second half of 2013. As there are no hardware changes needed to run a big.LITTLE processor in a HMP mode it is is possible for a silicon vendor (like Samsung) to release a CPU using A7 / A15 migration and then upgrade to full HMP with a kernel update.
ARM’s initial tests show that a big.LITTLE processor running in HMP mode is 10% faster than a big.LITTLE processor running in migration mode but with the same power efficiency.
The problem for Samsung is that less than one third of Galaxy S4 phones use the Exynos Octa and if Samsung suddenly activated the full use of all eight cores in just those phones then it would rather annoy the customers who get the Galaxy S4 with the Qualcomm Snapdragon! As a result Samsung might be tempted to only roll out such an upgrade to future products like the Note 3.