OnePlus 5 caught cheating on multi-core benchmarks

Here we go again… again. The OnePlus 5 was caught cheating on benchmarks in order to achieve its chart-topping performance.

A detailed investigation by XDA-Developers discovered the mechanism of the cheat. Hit the source link for the full details, here’s the TL;DR version.

When a benchmark is detected, the 5 locks the “little” cluster of its Snapdragon 835 chipset at its highest possible clockspeed – 1.9GHz. This isn’t an overclock, but it does disable thermal throttling. The “big” cluster is not affected by this.

That’s enough to push the multi-core benchmark results as high as they are, single-core results are unchanged (still, most people just look at the multi-core result). With cheating disabled, the “little” cluster spent only a quarter of the time at max frequency, so this also makes performance more consistent.

Interestingly, in CPU-only benchmarks like Geekbench, the OnePlus 5 didn’t heat up that much faster. It’s when GPU benchmarks are run that the heat becomes too much – the back of the phone was 50° C! Note that GPU clocks aren’t changed, but keeping the “little” cluster at max speed is enough to push thermals over the limit.

Not all benchmarks are affected, here’s the list of benchmarks that OnePlus checks for. Note that the “secret build” listed in the chart has a different package name, so it isn’t detected.

  • AnTuTu (com.antutu.benchmark.full)
  • Androbench (com.andromeda.androbench2)
  • Geekbench 4 (com.primatelabs.geekbench)
  • GFXBench (com.glbenchmark.glbenchmark27)
  • Quadrant (com.aurorasoftworks.quadrant.ui.standard)
  • Nenamark 2 (se.nena.nenamark2)
  • Vellamo (com.quicinc.vellamo)

The official statement from OnePlus claims that this way it shows the performance potential of the 5.

PS. The OnePlus 3 cheat was of a similar nature, though not identical. There the minimum frequencies of both the “big” and the “little” clusters were raised. There was still some thermal throttling going on, just to a smaller degree.

Source