The HTC One M9 Review: Part 1by Joshua Ho on March 22, 2015 7:00 PM EST
System Performance: Snapdragon 810
We've been able to test Snapdragon 810 before, but it was only in the context of Qualcomm’s developer platform tablets and phablets, which have a higher possible TDP than shipping devices, and generally doesn’t have any need for battery life as these devices usually spend all of their time plugged into a charger. Thus, the One M9 represents our first experience with a Snapdragon 810 device with shipping software and hardware. HTC noted during the review process that our devices were running non-final software, and we received an OTA update that significantly changed the thermal throttling characteristics of the device, but this seems to have only affected performance in situations where the SoC was nearing maximum acceptable skin temperatures as performance in these benchmarks were relatively unchanged.
In our first few browser tests, we can see that the One M9 posts dramatically lower performance than the Snapdragon 810 MDP/T, which seems rather strange. However, using CPUBurn to try and load just a single thread reveals that without HTC’s CPU cheats, it’s basically impossible to get the A57 cluster beyond 1.5 to 1.6 GHz. It's important to emphasize that this isn't new behavior, as this was present on pre-release software as well, which means that HTC didn't do this at the last minute.
For those that are unfamiliar with how HTC's CPU cheats work, HTC continues to rely on some level of benchmark detection, and it seems that when a benchmark is detected it enables a "High Performance" mode in the developer settings with no option to disable this mode. It's possible to work around this mode by using benchmarks that evade such detection mechanisms (and we do), but it's also possible manually toggle this mode on and off if a benchmark isn't detected. This benchmark mode appears to relax throttling constraints, but more obviously it enables one to go from a maximum of 1.6 GHz to the rated 2.0 GHz of the Snapdragon 810 for extended periods of time. However, even in this mode we can see that a sustained load of a single thread on the A57 cluster will cause the cluster to throttle to 1.7 GHz in this mode, while without this mode enabled we see that a single thread will eventually cause the A57 cluster to clock around 1 to 1.2 GHz. If the normal governor does allow the SoC to reach 1.9 GHz, I can't really perceive the amount of time that it does reach such a speed.
The most concerning result is WebXPRT, which is a bursty workload that runs over a few minutes, which suggests that we’re already seeing thermal throttling in the M9.
In PCMark, which is a benchmark that tends to focus strongly on race to sleep scenarios, we can see that the Snapdragon 810 appears to significantly trail behind the Exynos 5433, which is on a similar process node. It's hard to say whether this is due to the scheduler configuration or differences in the physical design of the SoC, but at any rate this is another concerning performance from the SoC of the One M9.
Moving on to the general system performance tests, we see that the M9 delivers a reasonable improvement in performance over the M8, but most of the difference seems to come from the GPU and storage performance rather than anything else that was tested. Overall, the Snapdragon 810 really isn’t off to the best start in any test we’ve thrown at it so far. To see if Snapdragon 810 has any redeeming features we’ll look at GPU performance next.