Hangouts Launch

Moving away from browser-based scenarios, we move onto real application use-cases. We start off with Google Hangouts. The first scenario is simply launching the application from the home-screen. The application was not cached in memory, so this is a cold launch.
 
First we open the app itself, and then we open up a chat conversation activity.

The duration of the test this time is only 3.6 seconds. During the initial application launch, we don't see much activity on the little cores. Cores 1-3 are mostly power-gated and we see that there's little to no threads placed onto the cluster during that period. Once the app opened, we see the threads migrate back onto the little cluster. Here we see full use of all 4 CPU cores as each core has threads placed on it doing activity.

This is the perfect burst-scenario for the big cores. The application launch kicks in the cores into high gear as they reach the full 2.1GHz of the SoC. We see that all 4 cores are doing work and have thread placed on them. Because of the fine granularity of the load, we see the CPUs rarely enter the power-gating state in this burst period as the CPU Idle governor prefers the shallower WFI clock-gating state. As a reminder, on the Exynos 7420 this state is setup for target residency times of 500µS.

In general, the workload is optimized towards 4-core CPUs. Because 4x4 big.LITTLE SoCs in a sense can be seen as 4-core designs, we don't see an issue here. On the other hand, symmetric 8-core designs here would see very little benefit from the additional cores.

Browser: Chrome - BBC Frontpage App: Hangouts Writing A Message
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