Optimizing applications for power consumption using Basemark PAT

Share on linkedin
Share on twitter
Share on facebook
Share on reddit
Share on digg
Share on email

Teemu Virolainen is a senior software engineer at Basemark, a company that develops industry-leading system performance and power consumption analysis tools that are used by leading semiconductor and OEM companies around the world such as AMD, Imagination Technologies, Intel, NVIDIA, Renesas and Qualcomm. Its world-renowned product portfolio includes Basemark Metal, Basemark ES, Basemark X, Basemark OS and Browsermark. 

Your new game is ready, your framerate is at a smooth 60 fps and things look great. However, after some time, the phone heats up and you can see the battery indicator falling in front of your eyes. And you know this means your players will be annoyed as they can’t play their favorite game for more than a few minutes at a time.

Modern mobile devices are really powerful in terms of raw computational capability. However, they are generally constrained by heat dissipation and limited battery life. In short burts, our phones can do wonders, but after a longer period of time they start to suffer along with the user experience as the mobile chip begins to lower clocks in order to constrain heat output. The promised one day battery life can easily turn into mere hours.

This can be devastating especially in the emerging mobile virtual reality applications where the initial smooth operation of a game can quickly change into nausea inducing stuttering.

Therefore it makes sense to optimize a game beyond what is needed for smooth operation – even going so far as simply lowering the quality of every effect to provide the user with a longer battery life and a better experience.

What is Basemark PAT?

Basemark’s Power Assessment Tool (PAT) is an easy to use power consumption measurement tool for battery-powered devices charged through a standard a micro USB port.

Basemark PAT - devices Basemark PAT provides an easy to use mechanism for measuring power consumption

You simply plug the PAT device between the phone and its charger and measure the charging voltage and current.

PAT can measure the current drain the phone uses for either charging or for running the application

In the case when the battery is full, devices generally take all the possible power they need directly from the charger. Only when their power requirements go over what the charger can supply does the phone resort to using the battery. In cases where this happens, the PAT software cleverly determines the true energy usage by measuring the battery charging period after the test. The downside of this method is that the exact time of the heightened power usage cannot be determined. However, for determining average power consumption of an application, this method works very well.

For applications that are meant to be enjoyed for a long time (possibly with the user keeping the device plugged in), it is crucial to optimize the power consumption so that a normal charger can supply all the necessary power. Otherwise the device will eventually run dry even when charging.

PAT provides an easy to use and accurate power consumption measurement solution for mobile devices

As all power used by computing in a phone is transformed into heat, the power consumption does not only determine the overall battery life, but it also impacts the thermals of the device. Thus PAT can be used to indicate both the battery life and the heating of a mobile device.

The power of example

In this example, we’re using the Basemark GPU Mobile high-end benchmark as the software of choice for our measurements. We’ve connected the PAT device to a latest generation smartphone using a PowerVR Rogue GPU.

Basemark PAT - how to use

We can toggle effects on and off individually and we’re using PAT to determine the additional power drain that a single effect produces. Before we begin, let’s see what happens when we pull out all the stops.

The example below shows what happens when we’re running the full benchmark before the phone has heated up. In this case, the power usage is so high that the phone starts taking some energy from the battery itself. Due to rendering into an offscreen render target, there are no stalls on frame changes; this is probably the best way of highlighting an extreme case of power consumption for the mobile GPU.

Basemark PAT running a graphics benchmarkFull run of Basemark GPU Mobile using official test settings with the battery charging period visible.

But the phone cannot really hold this kind of power consumption up for long due to overheating; as is evident when the test is repeated, the score eventually goes down. Even though knowing the absolute energy consumption of a test might be interesting, what really matters most to an application developer is the relative impact of various changes.

Let’s see then what is the worst case difference, this time running the test onscreen with native resolution with all effects on vs all effects off. This is a highly artificial test case as the visual quality with no effects at all goes quite low. But it does give an extreme example on what can happen and how much it indeed matters.

First we allow the device to charge fully while being connected to the PAT. Then we select a low quality mode in Basemark GPU Mobile and run the scene. The scene duration varies as benchmarks are run with a fixed number of frames, and not within a fixed amount of time.

All effectsNo effectsNo SSAO
Watt (W)4.3072.9614.077
Joules (J)299.668103.794228.828
Duration (s)69.97735.67856.495


The scene with all the bells and whistles on runs nicely at 30 frames per second. However as we can see, it consumes 4.3 watts on this mobile device. The scene with everything off runs at 60 fps and manages to use only 3 watts. A comparison of the raw total energy tells us that the actual energy used by the heavier test was 300 Joules, with a mere 103 on the low quality scene. That is 3x more energy per frame!

What about something a bit more reasonable? By removing only the SSAO (screen space ambient occlusion) effect, we’re still maintaining very good image quality but we also save around 25% of the total energy consumption during the whole run. The wattage difference in constantly running the test that does not hit vertical sync is not that large, only 5.4%, but if the fps of the SSAO off run is limited to 30 fps then we reach a number far closer to the 25%.

Naturally one cannot compare the results quite strictly like this, as every phone has things that use constant amount of power such as the display; however, the effect of the display is less than a watt (actually around 0.5 wats or a bit more depending on the brightness). If we would limit the low quality scene at 30 fps, it would drop down to less than 2 watts, giving us over double the battery life.

It is important to do these measurements in a way of a comparison, as there is an unknown base power usage from the display and other components, like the mobile data or Wi-Fi. In addition, the battery charging has an unknown (but thankfully generally small) inefficiency which is around 10% or so; however this can be higher on bad charging circuits.

Due to these unknowns, it is really hard to compare individual quantitative results across phones and generally we recommend that this should be avoided. Instead, one should perform the measurements in a way that, keeping all other things constant, tests the device with various effects turned on or off and then use only the difference in power consumption as a real data.


Naturally all of these considerations must take into account the expected use time of your product. If the user is expected to engage with your application/web page only few minutes at a time, then optimizing for power efficiency is not really worth the additional cost.

However if the user is expected to use your product for five or more minutes per average in a single session, it makes sense to invest in optimizing the final product beyond smooth rendering, helping your customers have cooler phones and enjoy longer battery life.

Pricing and availability

PAT is priced at 995 € + VAT for corporate customers. The unit includes a PAT device, desktop software for Windows PC and high-quality USB cables. Limited quantities of PAT are available immediately with broader availability in April. To order and for more information, please visit our dedicated website.

1 thought on “Optimizing applications for power consumption using Basemark PAT”

  1. It really looks like a good thing if they will have to use that kind of idea that will going to be a perfect thing for their output in the future. Thus, they could also nourish some of their techniques if the know a certain information using that tool.


Please leave a comment below

Comment policy: We love comments and appreciate the time that readers spend to share ideas and give feedback. However, all comments are manually moderated and those deemed to be spam or solely promotional will be deleted. We respect your privacy and will not publish your personal details.

Blog Contact

If you have any enquiries regarding any of our blog posts, please contact:

United Kingdom

Tel: +44 (0)1923 260 511

Search by Tag

Search by Author

Related blog articles

bseries imgic technology

Back in the high-performance game

My first encounter with the PowerVR GPU was helping the then VideoLogic launch boards for Matrox in Europe. Not long after I joined the company, working on the rebrand to Imagination Technologies and promoting both our own VideoLogic-branded boards and those of our partners using ST’s Kyro processors. There were tens of board partners but only for one brief moment did we have two partners in the desktop space: NEC and ST.

Read More »
b series hero banner 2

IMG B-Series – a multi-core revolution for a new world

B-Series uses multi-core to deliver an incredible 33 core variations for the widest range of options at all levels of performance points. From the smallest IoT cores up to the mid-range desktop equivalent B-Series an outperform mid-range next-gen consoles. Learn more in this blog post.

Read More »
pvrtune complete

What is PVRTune Complete?

PVR Tune Complete highlights exactly what the application is doing at the GPU level, helping to identify any bottlenecks in the compute stage, the renderer, and the tiler.

Read More »


Sign up to receive the latest news and product updates from Imagination straight to your inbox.