Power Measurements using Trepn

Measuring power draw is an interesting unique capability of Qualcomm's MDPs. Using their Trepn Profiler software and measurement hardware integrated into the MDP, we can measure a number of different power rails on the device, including power draw from each CPU core, the digital core (including video decoder and modem) and a bunch of other measures.

Measuring and keeping track of how different SoCs consumer power is something we've wanted to do for a while, and at least under the Qualcomm MDP umbrella at this point it's possible to measure right on the device.

The original goal was to compare power draw on 45nm MSM8660 versus 28nm MSM8960, however we encountered stability issues with Trepn profiler on the older platform that are still being resolved. Thankfully it is possible to take measures on MSM8960, and for this we turned to a very CPU intensive task that would last long enough to get a good measure, and also load both cores so we can see how things behave. That test is the Moonbat Benchmark, which is a web-worker wraper of the sunspider 0.9 test suite. We fired up a test consisting of 4 workers and 50 runs inside Chrome beta (which is web-worker enabled), and profiled using Trepn.

If you squint at the graph, you can see that one Krait core can use around 750 mW at maximum load. I didn't enable the CPU frequency graph (just to keep things simple above) but is 750 mW number happens right at 1.5 GHz. The green spikes from battery power are when we're drawing more than the available current from USB - this is also why you see devices sometimes discharge even when plugged in. There's an idle period at the end that I also left visible - you can see how quickly Qualcomm's governor suspends the second core completely after our moonbat test finishes running.

Here's another run of moonbat on Chrome Beta where we can see the same behavior, but zoomed in a bit better - each Krait core will consume anywhere between 450 mW and 750 mW depending on the workload, which does change during our run while V8 does its JIT compilation and Chrome dispach things to each CPU.

The next big question is obviously - well how much does GPU contribute to power drain? The red "Digital Core Rail Power" lines above include the Adreno 225 GPU, video decode, and "modem digital" blocks. Cellular is disabled on the MDP MSM8960, and we're not decoding any video, so in the right circumstances we can somewhat isolate out the GPU. To find out, I profiled a run of GLBenchmark Egypt on High settings (which is an entirely GPU compute bound test) and let it run to completion. You can see how the digital rail bounces between 800 mW and 1.2 W while the test is running. Egypt's CPU portions are pretty much single-threaded as well, as shown by the yellow and green lines above.

Another interesting case is what this looks like when browsing the web. I fired up the analyzer and loaded the AnandTech homepage followed by an article, and scrolled the page in the trace above. Chrome and "Browser" on Android now use the GPU for composition and rendering the page, and you can see the red line in the plot spike up when I'm actively panning and translating around on the page. In addition, the second CPU core only really wakes up when either loading the page and parsing HTML.

One thing we unfortunately can't measure is how much power having the baseband lit up on each different air interface (CDMA2000 1x, EV-DO, WCDMA, LTE, etc.) consumes, as the MDP MSM8960 we were sampled doesn't have cellular connectivity enabled. This is something that we understand in theory (at least for the respective WCDMA and LTE radio resource states), but remains to be empirically explored. It's unfortunate that we also can't compare to the MDP MSM8660 quite yet, but that might become possible pretty quickly.

GPU Performance - Adreno 225 Final Thoughts
Comments Locked

86 Comments

View All Comments

  • metafor - Tuesday, February 21, 2012 - link

    It's Sense. If you look at some of the phones with a less bloated version of Android (like the Xiaomi phone used in the Vellamo benchmark article that runs the same processor as the Rezound but with MIUI), they score pretty close to the MDP scores.
  • Wishmaster89 - Tuesday, February 21, 2012 - link

    That is why I will never buy device that bares the mark 'with HTC Sense'.
    They went one step too far with their customisations when they impacted performance of the device.
  • monoik - Tuesday, February 21, 2012 - link

    Did you make your tests on Gingerbread SGS2? I'm getting very different results on Ice Cream Sandwich Cyanogen Alpha:

    For worse:
    Linpack single 47.257 MFLOPS
    Linpack multi 71.987 MFLOPS

    For better:
    BrowserMark 105937
    Vellamo 1596
    SunSpider-0.9.1 1762.2ms
    non-cached anandtech.com about 4,5 seconds from touching "go" to the progressbar disappearing.
    cached anandtech.com less than 2 seconds.

    Stock browser. No overclocking. GT-I9100 Exynos version.
  • Kaboose - Tuesday, February 21, 2012 - link

    I am going to assume the latest OFFICIAL OS released by samsung Anandtech is not in the business of benchmarking every different ROM or OS on every phone. You would most probably be getting different results running ICS Cyanogen. As far as I know ICS is only official on the Nexus.
  • monoik - Tuesday, February 21, 2012 - link

    I assume you're right, so we're comparing apples and oranges here. No real value there, don't you think?
  • rahvin - Tuesday, February 21, 2012 - link

    Cyanogen is typically crippled by the fact that they are restricted to the open source versions. Especially in early release they don't have access to many of the customizations and binary code in release versions let alone per-release.

    It's my experience that Cyanogen doesn't even come close to release performance or power use until about a year later. This is because it takes the manufacturers about 6 months to post their kernel source then another 6 months to port and modify for the cyanogen system.

    So comparing a cyanogen alpha mod to a developer preview isn't even relevant, as was said.
  • tomhoward - Tuesday, February 21, 2012 - link

    There original SGS2 results were incorrect in the S2 vs 4S post a while back. There was a pretty big flame war in the comments from people with stock phones getting around 2000ms in Sunspider but Anandtech just ignored them.
  • B3an - Tuesday, February 21, 2012 - link

    @Brain or Anand...

    Do you think that Win 8 tablets using ARM SoC's will likely have a SoC based on many of the components inside Krait? I know there will have be certain changes for WOA but the CPU and possibly the GPU (now that it supports Direct3D 9_3) will be used for these tablets?

    And the same goes for ARM's A15, will WOA likely be running on SoC's based on that too?
  • kyuu - Tuesday, February 21, 2012 - link

    If I can get this SoC in a Lumia-ish Windows 8 phone with a decent screen and removable micro-SD storage, whoever makes that phone will have my money.
  • kyuu - Tuesday, February 21, 2012 - link

    I mean Windows *Phone* 8 phone, of course.

Log in

Don't have an account? Sign up now