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
Real Racing 3 Playing
The little cores see at least 3 major threads loaded onto them. The 4th core is doing some work as well, but quite a bit less than the first 3. What is extremely interesting here is the frequency distribution graph: The cores don't settle for any one frequency and make use full use of the full range of the cluster.
The behaviour of the big-cluster is clear-cut. There's only 1 significant thread that ever gets placed on the big cores. This is an ideal scenario for a big.LITTLE architecture as would there have been more than 1 thread, that secondary thread would have suffered from diminished efficiency as it wouldn't be able to run at the best perf/W frequency due to ARM's synchronous frequency planes between CPUs in a cluster.
The power-distribution graph does show the worrying anomaly of seeing CPU4 come out its power-collapse state for very small periods of time. This would be a source of inefficiency of either the scheduler or the CPUIdle framework needing to wake up that core for the sake of simple clean-up work instead of real load.
I think it's pretty safe to come to the conclusion that Real Racing 3 is coded with quad-core CPUs in mind as we see exactly 4 major threads loading the SoC's CPUs to various extent.
157 Comments
View All Comments
nightbringer57 - Tuesday, September 1, 2015 - link
Very interesting article, much more favourable to multi-core designs than I would have thought.Each article page must have cost an insane amount of time. However, I still feel like some more information could have been useful. This article is geared towards real-world use cases, but I think it would be interesting to repeat this analysis on a few commonly-used benchmarking apps. I feel like this would be interesting to compare them to real-world uses and may help understanding the results.
ingwe - Tuesday, September 1, 2015 - link
Yes that would be very interesting. I am always curious about how synthetics actually compare to more real world applications.Azethoth - Thursday, September 3, 2015 - link
Every single synthetic I have ever seen vastly exaggerates the benefit. I would be interested in an actual real world use case that actually matches a synthetic. It would blow my mind if there are any.Andrei Frumusanu - Tuesday, September 1, 2015 - link
I'll do a follow-up pipeline on this if the interest is high enough.bug77 - Tuesday, September 1, 2015 - link
High enough +1.Please do the follow-up.
tipoo - Tuesday, September 1, 2015 - link
I'd definitely be interested.Drumsticks - Tuesday, September 1, 2015 - link
Yes! This would be neat. Also, great article!ThisIsChrisKim - Tuesday, September 1, 2015 - link
Yes, Would love a follow-up.HanakoIkezawa - Tuesday, September 1, 2015 - link
I'm not sure of the practicality, but I would love to see a follow-up with Denver k1 and the A8X to see how lower core count out of order and in order SoCs are handled.This seriously was a fantastic article Andrei!
kspirit - Tuesday, September 1, 2015 - link
Yes please! +1