“The GPU Turbo is a graphics processing technology that is based on Kirin chips and incorporates mutualistic software and hardware interaction. And it supports some particular games. Results are based on comparison with the previous generation chip, the Kirin 960.” (Honor on the Honor Play official page)
The Honor Play is a new handset powered by the Kirin 970 chip. It is positioned as a Gaming phone, and that’s why graphics performance is a crucial feature. You can read our Honor Play complete review for a more in-depth analysis of that phone.
As far as we can tell, Huawei came up with the percentages above by comparing current Kirin 970+GPU Turbo 1.0 to the Kirin 960 architecture without GPU Turbo (GPU stands for Graphics Processing Unit). At IFA 2018, Huawei announced its Kirin 980 chip which will feature GPU Turbo 2.0. That’s another story, and a the moment we’re writing about the first GPU Turbo.
It is essential to address this point because it explains the reason behind such high percentages in Huawei’s communication. Most consumers I’ve seen commenting on this topic thought that 60% and 30% were only coming from GPU Turbo. It doesn’t seem to be the case.
Obviously, there is a significant efficiency, performance and power consumption gap between Kirin 960 and Kirin 970, before GPU Turbo even adds extra benefits.
Prior to GPU Turbo, the graphics performance differential between Kirin 960 and 970 went from 13% (3DMark Unlimited IceStorm) to 44% (3DMark Slingshot 3.1) in favor of Kirin 970. We have more benchmark charts in our Huawei Mate 9 vs. Mate 10 comparison page (scroll to the bottom). In the best case scenario, we could see how an additional 16% in performance gains would reach that (magic) 60% number.
The Huawei press release doesn’t explain how GPU Turbo works in detail, which makes it difficult to judge how good of an idea it is. We’ll talk about the outcome and theories later, but for now, let’s look at what Huawei said. Here are the critical bits:
In independent tests with compatible games, GPU Turbo does not improve FPS significantly, if at all. It does, however, make the frame-rate more stable, thus avoid stuttering symptoms (jumpy FPS). This is confirmed by observing GameBench charts of FPS over time.
It has been reported that battery life can be extended by ~15%, in the best case scenarios. The Benchmark GPU app shows FPS improvement of up to 40%, but only because the rendering is done off-screen. This is a standard method to avoid speed limitations induced by the display’s refresh rate and synchronization. If you play a real game that is rendered on-screen, FPS stability will be the priority.
Note that a more stable framerate isn’t strictly a “performance improvement” as the FPS isn’t higher, but it inevitably leads to a perceived improved performance (smoothness) that has a direct and positive impact on the user experience. Being stutter-free is one of the reasons behind technologies such as NVIDIA G-Sync (official page) and AMD FReeSync although these are entirely different technologies.
For GPU Turbo to work, either game developers need to modify their code, or Huawei has to do something custom for each app. That’s why only a handful of games are compatible now. Without knowing “what” changes are required, it is difficult to estimate how much work is needed and therefore how many games will ultimately support this feature.
There are many reasons why FPS could be unstable, but I suspect that it might have to do with scheduling, which is how hardware resources are used “over time.” If you looked at an unstable FPS chart, you would see FPS pops much higher and lower than the desired FPS rate (here, 30FPS).
This means that during the rendering period, computing is happening at an uneven rate, which leads to jumpy FPS. With better resource and better compute/rendering scheduling, it is possible to spread the same computational power more evenly over time, in order to obtain a more stable framerate.
Some techniques can work with the driver doing everything. Others do require the app to drive some decisions. Exactly “What” is happening remains a mystery for now, but it probably falls within that realm.
Now, why would the power consumption go down? I doubt it’s because of occlusion based optimizations like occlusion culling (skip hidden objects) or early pixel fragment test (skip hidden pixels), because the app should be in control of that.
Instead, the OEM could also tweak things not accessible to the app such as the GPU power curves: optimize the amount of power allocated to the GPU in light of a better-scheduled, more optimum, rendering environment.
Also, a decrease in CPU activity or a change in CPU power-efficiency settings is possible. It could come from using different types of cores at different times since games easily use multiple CPU cores.
Affecting the rules for when tasks move from the low-power cluster to the high-power one could also have a visible effect. Every workload has different characteristics, and Huawei could very well run game execution traces to see which configuration is best.
With reported real-world battery improvements of around ~15%, a combination of the above seem believable, but remember, we’re speculating.
Huawei’s GPU Turbo feels like a driver update acts like a driver update, but isn’t just a driver update. It is more like a driver accompanied by a private SDK, or per-app settings. We know there’s an app-level element into making GPU Turbo work, which explains why it does not increase performance for all apps.
We have not yet seen a public SDK, so Huawei might be working with app developers on a 1-1 basis, which means that the number of apps that support GPU Turbo could remain small for the time being, even though some of them may have a massive following. Hopefully, Huawei is working with 3D-Engine makers Unity and Unreal Engine to scale support faster.
"GPU TURBO IS A WELCOME IMPROVEMENT"At the end of the day, GPU Turbo is a welcome improvement, even though it is uncertain how many games and gamers will ultimately benefit from it. The positive outcome needs to be examined on a “per-game” and “per-device” basis, but there is no known downside to this feature.