Huawei recently unveiled an interesting software project to the public. It is called "GPU Turbo" and should provide great graphics performance improvements to most recent Huawei smartphones.
It definitely sounds like something to get excited about. The enhancement will come as a part of a software update which will start seeding in stages in August. We got the chance to test the update in beta form before the general public and we're happy to share our impressions.
But, before we get into our actual test findings, let's explain just what GPU Turbo is about. How are they achieving such performance gains with a mere 'software update'? Let's take a look further down. Or if you prefer, you can check out our video about this.
Ever since the initial announcement, articles have been popping up all over the place, misquoting claims of massive GPU performance improvements. As in, higher frame rates all around. That's not exactly the case. Let's look at Huawei's press release itself:
GPU Turbo is able to accelerate performance by optimizing system utilization of software and hardware resources. GPU Turbo will raise the bar for GPU performance across Huawei smartphones, beginning with the HUAWEI Mate 10 and P20 Series in August. With GPU Turbo installed, graphics processing efficiency is improved by up to 60 percent while overall SoC power consumption is saved by 30 percent. This is beneficial since graphically demanding operations typically consume battery quickly.
This is a very carefully worded statement. Breaking it down, we can conclude that GPU Turbo is an entirely software-based upgrade. That's why you can expect to see it on pretty much every Kirin 970 and Kirin 960 device at some point. Even certain mid-rangers. Side note: that's a really impressive level of commitment to long-term support on Huawei's part. One well in-line with other massive cross-device improvements, like the new EMUI file system.
Here's the deployment plan for Huawei phones:
|Huawei P20 and P20 Pro||Europe, Russia, Asia Pacific, Middle East, Africa||August 2018|
|Huawei Mate 10, Mate Pro, Mate RS||Europe, Russia, Asia Pacific, Middle East, Africa||August 2018|
|Huawei P20 Lite||Europe, Asia Pacific, Middle East, Africa||September 2018|
|Huawei P Smart||All Markets||September 2018|
|Huawei Nova 2i, Mate 10 Lite||All Markets||September 2018|
|Huawei Y9 2018||All Markets||September 2018|
|Huawei Mate 9||All Markets||November 2018|
|Huawei Mate 9 Pro||All Markets||November 2018|
|Huawei P10 Plus||All Markets||November 2018|
|Huawei P10||All Markets||November 2018|
And here's the schedule for Honor phones:
|Honor 10||Europe, Russia, Asia Pacific, India, Middle East||August 2018|
|Honor 9 Lite||Europe, Russia, Asia Pacific, India, Middle East||September 2018|
|Honor V10||Europe, Russia, Asia Pacific, India, Middle East||September 2018|
|Honor 7X||All Markets||September 2018|
|Honor 8 Pro||All Markets||November 2018|
|Honor 9||All Markets||November 2018|
Anyway, we can also clearly see that frame rates are nowhere to be found in this statement. It mentions "processing efficiency" and "power consumption." After spending some time with the Honor 10 with GPU Turbo on board, we can say that Huawei is delivering on those particular promises. But, more on that in the second part.
As for just how GPU Turbo works, it has a lot to do with the custom nature of Huawei's Kirin chipsets. Since the company has been designing and manufacturing these within its own HiSilicon chip branch, it has the benefit of more extensive low-level access to components, like the otherwise standard Mali GPU. Building on that, GPU Turbo is essentially an extra software optimization layer, sitting between the OS or a particular application and the Android graphics APIs, like OpenGL and the actual GPU drivers.
The optimization Huawei managed to achieve in particular, has to do with partial frame rendering. In simple terms, most GPU-intensive tasks, especially games, tend to have a certain level of predictability and repeatability, when it comes to rendering. As such, given the right software channels, a game could communicate to the GPU exactly what parts of the next rendered bunch of frames will be new and which parts are rendered elements, already in memory. For instance, if you are standing still in a virtual field, not moving your in-game character, the only things that need to change and hence be rendered from frame to frame are things like the moving grass, leaves, sky, etc.
This is exactly what GPU Turbo does - it gives a standardized communication channel for games and developers to feed that information to the GPU before each frame gets rendered. After which, the GPU has its work cut out for it and can save on resources. From there, it's easy to see how any efficiency benefits can be gained. In static scenes, GPU Turbo could easily dial back some of the GPU power, or even shut off cores, to save on battery and lower the overall heat levels, without performance loss.
As for the actual performance bit - that's a trickier question. Read on in the second part to see our particular findings.
But, before we get to that, there is another important note to be made here: Even though GPU turbo is promising almost magical improvements, via an over the air update, it is up to developers to actually optimize their apps to support the new rendering instructions and APIs. Huawei has promised that it will gradually work towards optimizing the EMUI launcher rendering. But given the way the Android UI is rendered, that's unlikely to lend itself to major optimization.
Turbo GPU is realistically aimed at gamers and more importantly, game developers, who have to implement the tech inside their titles. Hopefully, Huawei can get enough game studios on board to allow GPU Turbo to lift off. Otherwise, it will just remain unused, sitting in the background. At launch, PlayerUnknown's Battlegrounds Mobile PUBG and Mobile Legends: Bang Bang are the only two games that have support for Turbo GPU. Hence, that's what we used to test it out.
Since we already rambled for quite a bit, let's get straight to the conclusions from our tests:
Contrary to the common misconception, Huawei's GPU Turbo does not necessarily improve maximum frame rates. What it does, however, is significantly smooth out any major frame rate fluctuations and dips, and we were impressed by the perceptibly smoother gaming experience. As a bonus, the tech also provides battery life savings when gaming.
To reach this conclusion we needed a reliable way to record in-game frame rates and GameBench was just the tool for the job. The rest of the test parameters include the two, currently supported GPU Turbo games and appropriate settings. For PUBG, this meant "HDR" detail settings and High detail, while also disabling the option to automatically adjust graphics when frame rates start to dip since we want to see just how low they go. Mobile Legends also got its graphics settings cranked-up to maximum.
We did a couple of short runs of each game before applying the update and then a couple of more after. The first run of every pair is from an idle temperature phone, while the second is immediately done after the first, to ensure a toasty environment. That way we are covering at least some of the variables. Also, we tried our best to repeat the same basic steps in each "run."
Let's start with PUBG. Looking at the convenient breakdown from GameBench, it is clearly the more demanding title, with average frame rates hovering just above 30 fps. Mind you, this is not due to some frame lock, since we did get higher and lower values, on occasion.
Comparing the bottom two runs (without Turbo GPU) with the top (post GPU Turbo update), frame rate improvements aren't really evident. In fact, looking at the detailed graph of the fps, we can clearly see frame rates as high as 40fps on the title screen, in the waiting area and as the plane is initially flying over the game map.
However, we are also seeing severe dips down in fps in the waiting area, especially as other players join and the spike in resource usage suddenly jumps, leaving the GPU struggling for resources. The same is true as we parachute closer to the ground and the game starts rendering in certain buildings and other objects. These stutters are noticeable and detrimental to the overall experience.
Going back to the sessions table, we can see FPS variances between 3 and 4 in these two pre-update runs. Post Turbo GPU, these are down to less than 2 fps. This is a repeatable result of applying the update. Frame rates, while not higher, are a lot steadier, making for an arguably smoother and better experience. Trying our best to recreate the same playthrough, here are the corresponding in-game fps readings, with GPU Turbo working.
Turning our attention over to Mobile Legends: Bang Bang, we can clearly see the same overall fps variance improvement carrying over.
Although, since this is a less demanding title, the differences are definitely smaller.
Looking at the Framerate chart, however, things get a little bit clearer - higher, but unsteady fps reading, prior to the update and then a steady 50-ish fps run, all throughout, at the cost a few frames overall.
Then there is the matter of battery efficiency. Circling back to the two convenient Session breakdown charts, we can clearly see both titles consume a lot more power before the phone was updated to GPU Turbo. To be fair, though, these runs are rather short and include the initial loud-up for the games, as well as connecting to servers.
Still, there is clearly an improvement. To see just how much, we moved on to some controlled testing, as well as some real-world gaming, while also recruiting the Huawei P20 to help along the way. The latter is a pretty spec-for-spec match to the Honor 10 and we didn't have the GPU Turbo beta update installed on it. So, we figured we might widen the testing scenario while at it.
First, we standardized some things - both devices were set to 200 nits of brightness, airplane mode, connected to the same Wi-Fi. Then we booted up PUBG, with max settings on both and used the quite convenient main menu screen to record battery usage over time. It's convenient since the menu has a scene, rendered by the in-game engine, so GPU Turbo should be engaged. Also, it's a very static scene, with most of the backdrop remaining perfectly motionless and only some slight motion from smoke, grass, birds and the character model, from time to time. Seemed like the ideal conditions for the GPU Turbo optimizations to shine.
We started with the batteries full on both phones. The phone without GPU Turbo lasted for 4 hours while the one with the update managed half an hour more of screen on time. This constitutes a notable improvement of around 13%.
That's definitely not a small improvement. Plus, the tech is still in its infancy and these numbers only constitute one particular run, using a very specific scene from one freshly-supported game.
And even though we didn't quite reach the promised (up to) 60% processing efficiency and (up to) 30% overall power consumption improvements Huawei was promising, this first in-depth look at Huawei's GPU Turbo tech proved that benefits are definitely to be had there.
If nothing else, these results leave us very hopeful for the future of this technology. And the best thing is this update is coming to older devices too giving them a fresh lease of life (if you are into gaming).
Before we wrap things off and hand the discussion over to you guys in the comment section, it is also worth noting that Qualcomm is apparently already working on a similar solution for its popular chipset lineup, or at least some part of it, called Adreno Turbo. So, even if Huawei's plans for third-party developer support fall a little short, the intriguing GPU optimization tech might still get a broader release and a lot more potential developer exposure, one way or another.