Problems with PUBG: Not All GPUs Render Equally

In part of our testing with PUBG, we did stumble across a particularly alarming scenario which we never really see with standardized testing. When comparing Snapdragon to Kirin, trying to observe Huawei's quoted performance differences, there appears to be a major difference between what Adreno phones were rendering, and what Mali powered phones were rendering and displaying.

Looking into more detail, it’s very obvious that the OnePlus 6 tested here (a Snapdragon/Adreno phone) resulted in far better image quality compared to the other phones.

 

      

There are two notable characteristics. First of all, the Adreno render is simply a lot sharper. It looks like the game uses a very different image scaling algorithm. For equality testing, we set the rendering resolution to 720p and upscaled to 1080p on all of the phones. While the Adreno shows up as relatively sharp, the Mali phones are seemingly quite blurry, and this is actually also noticeable on the phone when playing.

The second noticeable element, and arguably more important, is that the Adreno phone actually has anisotropic texture filtering enabled, while the Mali devices are seemingly ignoring it and falling back to bilinear filtering. In a game like PUBG, this is also very noticeable when playing and creates quite big picture quality differences. This also puts quite a differential load on the graphics, resulting in an apples-to-oranges comparison.

Consequently, Huawei’s GPU Turbo marketing comparisons to the competition also are questionable: the anisotropic filtering performance issue can impact framerates by much as 16-18% on its own. Because the Mali GPU devices have this issue, it creates a very unequal comparison when diagnosing performance to such detail. It means that out of the gate, the performance of the Mali phones is already up 16-18%, but at the expense of quality. (Ed: We used to see this a lot in the PC space over 10 years ago, where different GPUs would render different paths or have ‘tricks’ to reduce the workload. They don’t anymore.)

It’s also to be noted that while the Mali devices actually should have a workload advantage given that they’re not doing nearly as much texture filtering work as the Adreno, the performance and efficiency of the Adreno smartphones is still better. Although admittedly the differences are minor given that the game caps out at a maximum of 40fps at maximum quality. That only leaves power efficiency as the metric.

For power efficiency, even with the difference in rendering paths and quality, here Snapdragon 845 phones have a massive advantage, playing the game at 2.5-3W with AF enabled, while the Kirin 970 phones routinely average at 4-4.5W. The higher power consumption and efficiency means that the battery life on those devices will have a deficit.

Real World vs. Synthetic Testing

While I fully understand Huawei’s focus on real-world performance comparison in PUBG rather than synthetic benchmarks, we use synthetic benchmarks to determine the varacity of new features for a good reason – they are industry standards and well understood. Honor’s and Huawei’s marketing focus on PUBG seems a bit poorly thought out when it comes to actual technical comparisons in that regard, which we address on the next page.

There is the added aspect of different GPUs not even rendering the same graphics path, as described below: the fact that Adreno GPUs add anisotropic filtering and have higher quality image scaling effectively means they’re running at a noticeably higher image quality level. This is not taken into account in the performance and efficiency comparisons in Huawei’s materials, lending the materials to be a lot less credible. 

The Bottom Line

Still, GPU Turbo is a promising new technology that will give Huawei a competitive edge, all other things being equal. The sad fact here is that for the Kirin 960 and Kirin 970, things are not equal. The competitive landscape will change a lot with the Kirin 980, but until then, current generation device users need have a clear understanding and realistic expectations to what GPU Turbo can actually bring to the table.

The Difficulty in Analyzing GPU Turbo The Minor Issue of Overzealous Marketing
POST A COMMENT

64 Comments

View All Comments

  • eastcoast_pete - Tuesday, September 4, 2018 - link

    Thanks Andrei! I agree that this is, in principle, an interesting way to adjust power use and GPU performance in a finer-grained way than otherwise implemented. IMO, it also seems to be an attempt to push HiSlilicon's AI core, as its other benefits are a bit more hidden for now (for lack of a better word). Today's power modes (at least on Android) are a bit all-high or all-low, so anything finer grained is welcome. Question: how long can the "turbo" turbo for before it gets a bit warm for the SoC? Did Huawei say anything about thermal limitations? I assume the AI is adjusting according to outside temperature and SoC to outside temperature differential?

    Regardless of AI-supported or not, I frequently wish I could more finely adjust power profiles for CPU, GPU and memory and make choices for my phone myself, along the lines of: 1. Strong, short CPU and GPU bursts enabled, otherwise balanced, to account for thermals and battery use (most everyday use, no gaming), 2. No burst, energy saver all round (need to watch my battery use) and 3. High power mode limited only by thermals (gaming mode), but allows to vary power allocations to CPU and GPU cores. An intelligent management and power allocation would be great for all these, but especially 3.
    Reply
  • Ian Cutress - Tuesday, September 4, 2018 - link

    GPU Turbo also has a CPU mode, if there isn't an NPU present. That's enabling Huawei to roll it out to older devices. The NPU does make it more efficient though.

    In your mode 3, battery life is still a concern. Pushing the power causes the efficiency to decrease as the hardware is pushed to the edge of its capabilities. The question is how much of a trade off is valid? Thermals can also ramp a lot too - you'll hit thermal skin temp limits a lot earlier than you think. That also comes down to efficiency and design.
    Reply
  • kb9fcc - Tuesday, September 4, 2018 - link

    Sounds reminiscent of the days when nVidia and ATI would cook some code into their drivers that could detect when certain games and/or benchmarking tools were being run and tweak the performance to return results that favored their GPU. Reply
  • mode_13h - Tuesday, September 4, 2018 - link

    Who's to say Nvidia isn't already doing a variation of GPU Turbo, in their game-ready drivers? The upside is less, with a desktop GPU, but perhaps they could do things like preemptively spike the core clock speed and dip the memory clock, if they knew the next few frames would be shader-limited but with memory bandwidth to spare. Reply
  • Kvaern1 - Tuesday, September 4, 2018 - link

    I don't suppose China has a law that punishes partyboss owned corporation for making wild dishonest claims. Reply
  • darckhart - Tuesday, September 4, 2018 - link

    ehhh it's getting hype now, but I bet it will only be supported on a few games/apps. it's a bit like nvidia's game ready drivers: sure the newest big name game releases get support (but only for newer gpu) and then what happens when the game updates/patches? will the team keep the game in the library and let the AI keep testing so as to keep it optimized? how many games will be added to the library? how often? which SoC will continue to be supported? Reply
  • mode_13h - Tuesday, September 4, 2018 - link

    Of course, if they just operated a cloud service that automatically trained models based on automatically-uploaded performance data, then it could easily scale to most apps on most phones. Reply
  • Ratman6161 - Tuesday, September 4, 2018 - link

    meh....only for games? So what. Yes, I know a lot of people reading this article care about games, but for those of us who don't this is meaningless. But looking at it as a gamer might, it still seems pretty worthless. Per soc and per game? That's going to take constant updates to keep up with the latest releases. And how long can they keep that up? Personally if I were that interested in games, I'd just buy something that's better at gaming to begin with. Reply
  • mode_13h - Tuesday, September 4, 2018 - link

    See my point above.

    Beyond that, the benefits of a scheme like this, even on "something that's better at gaming to begin with", is longer battery life and less heat. Didn't you see the part where it clocks everything just high enough to hit 60 fps? That's as fast as most phone's displays will update, so any more and you're wasting power.
    Reply
  • mode_13h - Tuesday, September 4, 2018 - link

    I would add that the biggest benefit is to be had by games, since they use the GPU more heavily than most other apps. They also have an upper limit on how fast they need to run.

    However, a variation on this could be used to manage the speeds of different CPU cores and the distribution of tasks between them.
    Reply

Log in

Don't have an account? Sign up now