GPU and NAND Performance

The Snapdragon 810's Krait 430 is definitely overkill for playing current Android games at 1080p - the Snapdragon 810 is designed for 1440p displays - but let's check out how it performs anyway.

There's some weird results in here for the One M9, and most of it is down to various non-shader bottlenecks being hit. As you'll recall, the Adreno 430 is supposed to be 30% faster than the Adreno 420 in shader bound tasks, but if it's a bottleneck elsewhere, this performance advantage won't show.

In Basemark X and 3DMark, it appears as though a memory bottleneck is being hit, as the Snapdragon 810 performs to roughly the same level as the Snapdragon 805, which both have the same memory bandwidth. In Basemark's medium quality test, performance is even reduced compared to the Snapdragon 805, which is certainly a strange result.

This leaves GFXBench, which includes benchmarks that include fewer bottlenecks. On average, the Adreno 430 clocked in at 8% faster than the Adreno 420 in offscreen benchmarks, which is a modest improvement and not nearly as high as what Qualcomm claims, but enough to put the GPU at the top of the charts.

There's a much larger difference in GPU power going from the One M8's Snapdragon 801 to the One M9's Snapdragon 810. When shader bound, the Adreno 430 clocks in at 67% faster than the Adreno 330 on average, and 50% faster when other bottlenecks are factored in. This is a pretty significant jump, although a large portion of that performance gain can also be seen upgrading to an Adreno 420.

With the launch of Android 5.0 and OpenGL ES 3.1, there are a range of new GPU benchmarks that have become available, so in future reviews we should have more tests with fewer bottlenecks to utilize.

Above you can see a range of charts that illustrate how the One M9 throttles throughout repeated GFXBench runs. The M9 sustains maximum GPU performance for five minutes, after which the SoC reaches a temperature of 40C and GPU clock speeds are cut in half. When the SoC approaches 45C, GPU clocks are cut further, leading to sustained performance just over half of the maximum.

These results are far from the worst I've seen (though they're not the best either), and sustained performance matches the peak performance of the Snapdragon 801 in the HTC One M8. It should be noted that the temperature of the outside of the One M9 doesn't reach 45C: during my testing it topped out at 42C as measured by an external thermometer.

The NAND performance of the HTC One M9 shows a significant increase in speeds compared to last-generation hardware, especially on the sequential and random write front. The performance of the internal storage in the M9 is approaching that of an SSD from a couple of years ago, which is impressive for such compact modules with limited power and bandwidth. Compared to the M8, the M9's NAND is anywhere from two to six times as fast.