Modern Combat 5 Playing

Trying out another popular high-end game, we have a look at Modern Combat 5. This one of many first-person shooters on Android.

The little cluster looks to behave extremely similar to what we saw in Real Racing 3: Three larger threads keep 3 of the cluster's CPU at relatively busy duty-cycles while we see some limited activity on the 4th core.

The big cluster also seems to behave in a similar fashion. One big main thread causes the bulk of the load while we only have occasional small bursts when threads get migrated onto the big cluster. This time we see a more variable load both in terms of requency and rq-depth instead of the flat-line that could be observed in Real Racing 3. 

One interesting behaviour caught in this log was how the main big thread got moved around from CPU6 to CPU4 and then again to CPU5 on the 33s mark in the log.

Even though the total rq-depth might be a bit misleading here while it's showing an average of around 2.5, we can see that in the individual per-CPU runqueues we have 4 major threads at work. Again this is a case of using parallelization for the sake of power efficiency instead of performance. The 3 smaller threads on the little cores could have well been handled by a single larger CPU at higher frequency, but it wouldn't have been nearly as power efficient as spreading them onto the smaller cores.

Games: Real Racing 3 Playing Analysis & Conclusion
POST A COMMENT

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.
    Reply
  • 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. Reply
  • 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. Reply
  • Andrei Frumusanu - Tuesday, September 1, 2015 - link

    I'll do a follow-up pipeline on this if the interest is high enough. Reply
  • bug77 - Tuesday, September 1, 2015 - link

    High enough +1.
    Please do the follow-up.
    Reply
  • tipoo - Tuesday, September 1, 2015 - link

    I'd definitely be interested. Reply
  • Drumsticks - Tuesday, September 1, 2015 - link

    Yes! This would be neat. Also, great article! Reply
  • ThisIsChrisKim - Tuesday, September 1, 2015 - link

    Yes, Would love a follow-up. Reply
  • 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!
    Reply
  • kspirit - Tuesday, September 1, 2015 - link

    Yes please! +1 Reply

Log in

Don't have an account? Sign up now