Samsung may have cheated to get good smartphone benchmark scores on Galaxy S4


Image

Samsung could have possibly tweaked its Exynos 5 Octa processor to perform better when running select benchmarks, according to a forum member on Beyond 3D and AnandTech. Nebuchadnezzar, the Beyond 3D forum member, noticed that the Samsung Galaxy S4 was pushing its GPU to a clock speed of 532 MHz when running whitelisted benchmarks such as the old GL Bench app but would max out at 480 MHz on non-whitelisted apps such as the new GFXBench benchmark. What this means is that the S4 delivers more power than usual when running benchmarks but throttles down the GPU to achieve better battery life on other apps, suggesting that the benchmark results of the Galaxy S4 do not accurately represent real-world performance.

Nebuchadnezzar’s findings were confirmed by AnandTech as well, who also tested if the Galaxy S4’s Exynos CPU was also tweaked to deliver better results on recognized benchmarks. They found that it was and that when running older whitelisted benchmarks such as GLBench 2.5.1, AnTuTu, Quadrant, Linpack and Benchmark Pi, the processor would always be at max power with the Cortex A15 cores consistently at 1.2GHz, irrespective of what load the benchmarks put on the device. However, when the non-whitelisted GFXBench 2.7.0 was run, the S4 switched over to the more economical Cortex A7 cores.

AnandTech also found something more interesting that makes all of the above look like it was deliberately done by Samsung. While digging around in the Galaxy S4’s system files, AnandTech came across the TwDVFSApp.apk file responsible for changing the processor’s core clock speeds. Opening the APK file in a hex editor revealed a string titled ‘BenchmarkBooster’ and a list of benchmark names that included all of the ones mentioned above. This proves, almost conclusively, that Samsung intended to make the Galaxy S4 perform better during benchmarks than it would when running anything else.

At the end of the day, there is very little chance that the performance tweaking affects you, if you own a Galaxy S4. You won’t really find any performance shortfalls when using the phone on a day to day basis. However, by tweaking the phone’s processor to work in a non-regular manner, Samsung clearly wanted to taint benchmark scores in reviews in order to make the Galaxy S4 look better than its competition. We’ve always maintained in our smartphone reviews that synthetic benchmark numbers do not signify real-world performance and have always made it a point to score a smartphone based on real-world performance as well (we test that by running a whole bunch of popular games, running HD videos and using the phone as our primary device for a couple of days).

By going out of its way to manipulate benchmark scores, Samsung has further highlighted the drawbacks of using synthetic benchmarks. Samsung has also shown how insecure it is with respect to the Galaxy S4 and we’re sure many smartphone users will be disappointed that the company had to resort to tricks to paint its flagship phone in a better light.

While all of this doesn’t really affect real world performance, it does mean that you should take benchmark results of the Exynos 5 Octa-powered Galaxy S4 variants with a large helping of salt. The 480MHz default clock isn’t all that far away from the full 533MHz frequency, and Samsung might have decided to stick with the lower clock to ensure stability. However, that doesn’t mean this isn’t cheating. We think Samsung should have focused more on improving the user experience than spending large amounts of time making an application for fooling benchmarks.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s