The Mobile CPU Core-Count Debate: Analyzing The Real World
by Andrei Frumusanu on September 1, 2015 8:00 AM EST- Posted in
- Smartphones
- CPUs
- Mobile
- SoCs
Reddit Sync Scrolling
The little cores in this scenario are virtually sitting idle as for most of the time we don't have much activity placed on them.
The big core activity in this scenario is interesting: While we see all 4 CPUs having activity placed on them, the threads never manage to exceed ~30-35% load capacity. This is also quite the extreme scenario in terms of the power state distribution: It seems the load on the cores is so fine-grained that the CPU Idle system greatly prefers to choose clock-gating state instead of the power-collapse state. The CPU frequency points out that we're also dealing with some very burst loads as we see the cluster clock up to 1.7GHz.
Again, in terms of actual total run-queue depth this task could have easily been done by a 2-core SoC such as Apple's A6/7/8 without losing on performance. What one has to consider though is that the per-CPU load on such a SoC would be much higher, requiring higher single-CPU performance or frequency. Because the app actually manages to spread out the load equally over 4 CPUs, it should actually be able to take advantage of pararellism for the sake of power efficiency instead of performance.
157 Comments
View All Comments
lilmoe - Tuesday, September 1, 2015 - link
"if the interest is high enough":/ Really?
zaza - Saturday, September 5, 2015 - link
Yes Please. It would be nice to see if the same or similar tests works on snaprdagon 810,801 and 615 and Mediatek chips, and intel SoCerchni - Thursday, September 17, 2015 - link
A follow-up with synthetic would be quite interesting.aryonoco - Saturday, September 5, 2015 - link
I just wanted to reiterate the point here an thank the author for this great piece of technical investigative journalism.Andrei, thank you for this work. It is hugely invaluable and insightful.
tipoo - Tuesday, September 1, 2015 - link
Very interesting article. Seems like the mantra of "more cores on mobile are just marketing" was wrong in terms of Android, seems to dip into both four core big and little clusters pretty well. That puts the single thread performance having lagged behind the Apple A series (up until the S6 at least) in a new light, since it can in fact use the full multicore performance.tipoo - Tuesday, September 1, 2015 - link
*That is, barring gaming. More core Android functions do well with multithreading though.jjj - Tuesday, September 1, 2015 - link
In gaming there is a big advantage. By using mostly the small cores you allow for more TDP to go to the GPU. One more relevant thing would console ports in the next couple of years when mobile GPUs will catch up with consoles. The current consoles have 8 small cores and that fits just right with many small cores in Android.retrospooty - Tuesday, September 1, 2015 - link
Not really sure whos "mantra" that was. People that don't understand what the big.little architecture is like some angry Apple fans?tipoo - Tuesday, September 1, 2015 - link
Well sure, whoever they were, but it was a pretty common refrain for every 8 core SoC.soccerballtux - Tuesday, September 1, 2015 - link
for one, it was my mantra. I liked having 4 cores because 2 wasn't enough, but according to my hotplugging times, I only really need 3 for optimal experience most of the time