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.
Like this post? Share it!
they better optimize touchwiz some more, performance is already very good^^
Entire post in one sentence:
“Samsung is going to boost clock speed of exynos octa by 10% in summer. “
Maybe you should read the article again…
I don’t mention clock speed anywhere in the article, so no that isn’t a good summary of the post.
Thought it said something about changing clock frequency and clock speed?
I guess this could be something like:
“samsung will work to reduce the lag in the gs4, 10% increased performance should be enough to make you have a fluid browser”
Is it normal..that the backside of the phone gets heated during moderate to heavy use?
Yes my htc one and i9500 both do
That’s quite an architecture, ARM have always been good at managing power on their chips.
Anyway, it’s not for Europe nor US, so I wonder where one could get a hold of those S4 models… and since I certainly won’t be alone, I wouldn’t be surprised if this ended up in messy stock consequences.
Come visit Israel :) We have plenty of S4s Exynos5 octa version :)
Middle east (Qatar, UAE, Saudi Arabia, Palestine, Israel, Lebanon) and North Africa (Tunisia, Algeria etc) All have the Octa version.
Asian countries like Malaysia
I am very interested in the possibilities custom kernel developers will be coming out with the octa chip. Perhaps it is a matter of time before someone comes out with a scheduler that can force distribution of processes across all eight cores for some well known intensive tasks.
actually big.little has heterogeneous processing using ALL cores, called “big.little MP mode”.
in these videos you can see more than 4 cores running, a mixture of the A15 and A7 cores working simultaneously:
Even Samsung’s own official presentation at MWC showed mixed-mod heterogeneous processing :: http://www.youtube.com/watch?v=U6UNODPHAHo&feature=player_detailpage&list=PL9yOcWwG6fF4HPl3Sucy4JD_GN0pI9tdj#t=59s
For the moment, the kernel can only manage 4 cores at a time, which can be a mix of A7 and A15 (for example 1 A7 and 3 A15).
The forthcoming update will allow more than 4 cores to run at the same time : the most powerful combination possible (true Octa dissymmetrical computing).
would that be the Linux Kernel?
i’m curious how the videos clearly show MP mode already working, are they not using the Linux Kernel in the videos
How do you know what kernel they are using in the videos?
But to answer your questions Android uses a variant of the Linux kernel and the patches from Linaro for the migration mode and for the MP mode are for the Linux kernel.
“How do you know what kernel they are using in the videos?”
i don’t, that’s why i asked.
regardless, the videos clearly show both A7 and A15 cores being used.
the “number” of cores used is irrelevant, as the definition of big.little MP mode isn’t defined by a number of cores, but in fact by the “type” of cores used.
Yes the video does show A7 and A15 cores being used, but in pairs where one A7 is shut down in favor of its partner A15. That isn’t HMP.
I have looked at those videos and none of them show HMP or big.LITTLE MP as ARM call it.
ARM describes using BOTH A7 and A15 of cores simultaneously, which is precisely what the video shows.
i don’t understand what you read as ARM’s definition, or what you see differently in the videos.
As I mention above, using a combination of A7 and A15 cores where an A7 is paired with an A15 and one or the other is used (depending on the load) isn’t HMP. In this context ‘simultaneously’ means that all the A7 cores can be used along with all of the A15 with each core running independently and receiving tasks from the scheduler which knows that some of the cores are less powerful than others.
So is this true AND the article true, but NOT the video? Because the article says more than 4 cores, this guy says more than 4 cores but the video only has 4 cores working at once
the article says:
“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,”
So the article states *either* the A7 *or* the A15 cores can be used.
Meaning currently the chip can NOT use BOTH A7 and A15 simultaneously, which is why i say it already CAN, as shown clearly in the videos i shared.
I’m not disputing the current limit of 4 cores used, but the assertion A7 and A15 cores aren’t currently already being used simultaneously.
p3ngwin, Now I see where the confusion is… I am partly to blame as I was trying to explain a complex issue and I left some room (unintentionally) for ambiguity. Yes of course the Exynos Octa can use a combination of A7 cores and A15, the switching is on a per core basis.
As it says later in the article, “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.”
The big.LITTLE desihn allows for the A7 and A15 cores to be grouped together, say in pairs, and ONE A7 core is shut down in favor of an A15 core which is started in its place. In that sense the processor is using A7and A15 at the same time.
However the point of HMP is that all eight cores are used at the same time and the scheduler is clever enough to know that you can put the gmail sync task on an A7 but complex apps go on the A15.
yes, you did leave much of the important detail out of the article when making such claims. as for what defines HMP, it’s not the amount of cores used, as that’s more related to the amount of work needed to be done re: threads, etc.
HMP is defined as simply using different processors, and in this case using ANY amount of both a7′s and A15′s qualifies as Big.Little MP (HMP).
E.G. Nvidia’s 4+1 architecture is not HMP is any way because the processor has no way to make use of the different cores simultaneously. compare this to the Samsung processor, which *does* have the ability to simultaneously use the different A7 and A15 cores, and hence qualifies as Big.Little MP (HMP) regardless of how many of each core is used.
here’s another video from ARM using the Samsung chip demonstrating HMP: http://www.cnx-software.com/2013/02/16/arm-big-little-processing-demo-hmp-on-arm-tc2-test-chip/
With regards to this statement: “HMP is defined as simply using different processors, and in this case using ANY amount of both a7′s and A15′s qualifies as Big.Little MP (HMP).” I am sorry but you are completely wrong. I have spoken to ARM personally about this and I don’t think you have understood the principles.
HMP (rather than SMP) means that the scheduler needs to know that the environment is heterogeneous (meaning that the processing unit, in this the cores, don’t have equal processing power).
In the current configuration that Samsung uses (and others) the scheduler only knows about fours cores (virtual cores) and using the techniques employed by the CPU frequency driver the different cores are switched from A7 to A15 (or back again) according the current load. The scheduler thinks that all four cores are A15 and the power is saved by flipping between the two. I know this as I have downloaded the source code from Samsung and read it!
On a current dual or quad core CPU the frequency changes according to the work load, in the big.LITTLE migration mode the same thing happens but when the frequency gets to a high threshold the core is flipped and when it gets low it is flipped again.
That isn’t HMP, it is SMP with some clever swapping of cores to save power. Each core shares the same L2 cache and there is some clever hardware to make sure that pipelines of both cores are identical so that the context switch is quick.
HMP is different.
Here is a quote from ARM’s whitepaper on the subject:
Execution modes in a big.LITTLE system
1. big.LITTLE migration model
2. big.LITTLE MP model
As the name suggests, the migration model enables the capture and restoration of software context from one processor type to another. In CPU migration, each CPU in a cluster is paired with its counterpart on the other cluster and the software context is migrated opportunistically between clusters on a per-CPU basis. If no CPU within a cluster is active, then the entire cluster and the associated L2 cache can be powered off.
The MP model enables the software stack to be distributed across processors in both clusters. All CPUs may be in operation simultaneously offering peak system performance.
Mode 1 – migration – is seen as an SMP system to the scheduler. Mode 2 – MP – is seen as a HMP system to the scheduler. The current kernel in the Galaxy S4 works in mode 1. Linaro have code out for Mode 2.
Another thing… Re: “compare this to the Samsung processor, which *does* have the ability to simultaneously use the different A7 and A15 cores, and hence qualifies as Big.Little MP (HMP) regardless of how many of each core is used.”
Yes, the Exynos 5 Octa does have the ability to run in HMP mode, that is the whole point of the post! But it needs to be used in that way and the software (in this case the Linux kernel) needs to be able to use it in that way. That is why the idea expressed in the article is that Samsung *could* release an update which switches the processor from big.LITTLE migration mode to big.LITTLE MP mode, from SMP to HMP.
ok, i’ll concede i didn’t understand fully that ARM’s definition of “Heterogeneous Multi-Processing” is slightly different from the generic definition used in most other processors.
ARM have “Cluster Migration”, “Core Migration” and then what they deem as “HMP”.
As far as i’m concerned “Core migration” *is* heterogeneous processing already, but if ARM want to sub-divide such generic definitions and deem only the latter as HMP then so be it.
It just would be more sensible NOT to use existing generic terms for a specific technique.
It’s almost like Americans renaming “Petrol” as “Gas” :)
They wont allow me to double like this comment.
Normally I would be pissed but even my s3 was a monster and s4 with s600 is almost 3 times faster so I don’t care much about more performance really. Samsung should do more software optimization for better battery and bug fixes on both phones. I get my s4 next week so I don’t know yet how well everything works but I was very happy with s3.
Dude I’m still happy with my s2 skyrocket(the LTE model of the s2) it had problems with the 4.0
. Something update but the 4.1.2 is real nice, because of its speed
Yes JB made the phone much smoother. On the otherhand the S2 was a great phone but i couldnt stand the screen resolution coming from iphone so i kept using my iphone but once S3 came thats when i started to use Android seriously. Give the new one a try and you wont be disappointed, the screen is amazing.
HTC One’s screen is even better. And the phone, well, brilliant. Now if someone could just take the best of the S4 and combined it with the best of the One, they would have an absolute market leader on their hands.
I like AMOLED more , somehow colors look nicer and i like the blackness. Anyway at this point both screens are pretty awesome but for me as a whole i prefer touchwiz and the nerdy little features samsung offers. Plus i like the SD+battery + the material more on S4, i’m not very fond of aluminum personally.
Why not best of everything right away :D
I’m ALREADY pissed about their processor “bait and switch”. The worst possible thing they could do would be to withhold optimization software in the name of appeasing the people they’re already cheated!
Dude, get a grip. They didn’t have the Octa ready in time, on top of the S4′s overwhelming demand..
Do I always miss the announcement of AndroidAuthority giveaway winners or is it done in private?
I just got my s4 here in the US with At&T. Experienceing massive battery drain. I dont think thr processor had anything to do with it ive switched off a lot of the features and even reduced the brightness but the phone does not even last a day. I hope Samsung is aware of this and not issuing the update only to regions using the exynos processor
That’s weird. Battery benchmarks seem pretty good.
Do you use auto-brightness outdoor ?
Linaro IKS (current big.LITTLE solution): http://www.youtube.com/watch?v=1Ag-sLulFfY
Linaro MP (future big.LITTLE solution): http://www.youtube.com/watch?v=Svc4pEvTmCs
I filmed many more videos with these guys that are right now working on optimizing these solutions.
You note that Linaro’s code… “is available to ARM’s partners including Samsung”. Actually, Linaro is an open source engineering company, and therefore the code available to everyone. (Go hack!)
People are complaining that the Exynos based GS4 is laggy. This is simply what they should have delivered in the first place.
Please just focus on software optimization(decreasing the time to open simple and basic apps like camera, gallery) and increasing battery life…small things but they are the ones which actually count and make a difference in user experience!
That a15 quad core will be powerful enough to run high end apps for the next 2years and such an update can always be pushed later in th product cycle…remove even the slightest hint of lag in the UI and gentlemen, we have a masterpiece on our hands….
Dude when I get the s4 in October ima buy a ballistic case ( OK protection and price not the best though) and an extended battery, take the plastic part of the case and melt and sand a perfect cutout to fit the phone+ extended battery. BOOM s4,eight cores, 16hr battery :-) and the s4 must be yellow
Now I gotta find an s4, eight core model yellow that has 4g LTE and works LTE with AT&T, to the eBay’s!!!
Activating all 8 core requires to be thought deeply in terms of hardware also. Changes pertaining to heat dissipation. These SoC were not built (thermal design) to handle heat off from 8 core simaltaneously. So i believe HMP is one good thing but activating them in already-in-market devices is one big thing.
Nice thought…10% boost…too bad the development community has some choice words about the silcon level errors in the 5410 chip. The full article can be found at the xda dev website.
Here is an excerpt.
The below information was based on how things should have been.
Reality is the Exynos 5410 has some serious issues with its cache
coherent interconnect / CCI which cripples the chip to only cluster
migration, effectively making the major parts of the big.LITTLE
operating scheme useless. This is an issue in silicon which cannot be
Guess I’ll be making sure I get the Snap 600 or hope the Note 3 has a Snap 800. Btw, latest battery tests….the 5410 dropped talk time from 18hrs to 11hrs on the Octo. Octo-core….no thanks. I’ll wait for the next version of it when they work out the bugs and the Linux Core (past v3.8) supports it.