As PC enthusiasts, we're no strangers to situations arising where performance gets dinged over time. Most recently, we identified the Radeon R9 290X's bad habit of heating up and shedding clock rate during heavy 3D loads, prompting AMD to introduce a new driver that pushed fan speeds higher to keep up with cooling. That's not as easy of a behavior to address in the mobile space, though. Devices aren't cooled actively, so balancing performance, thermals, and battery life becomes a delicate matter of industrial design, materials, and carefully-defined profiles.
Generally, operating systems become more resource-taxing as features pile up. But Google preached numerous efficiency gains in moving to Android 4.4 KitKat. We recently applied Samsung's update to our Galaxy S4 and discovered some interesting performance behaviors that weren't a part of previous builds.
In short, Samsung's stock 4.4 ROM for the Galaxy S4 employs an exceptionally aggressive dynamic voltage and frequency scaling (DVFS) algorithm. Compared to previous versions of Samsung's ROM, we've found that in 4.4 it takes far less load/heat to reach the threshold at which the SoC starts throttling back. At its worst, you'll see CPU complex frequencies of 918 MHz, which is less than half of the Snapdragon 600's 1.9 GHz ceiling.
Our main points of comparison are between 4.4 and 4.2, as 4.3 is tainted with specially-programmed behavior when the ROM detected the presence of a named benchmark and force the phone to run the Snapdragon 600's clock rate up to 1.9 GHz and hold it there when it detected a specified APK, such as 3DMark, so long as the SoC's temperature remained somewhere under a Qualcomm-defined Tj temperature. The Galaxy Note 3 was also guilty of this under Android 4.3.
We ran a bevy of benchmarks and consistently found that the Galaxy S4's CPU complex (and presumably GPU as well) would throttle so aggressively that performance results tanked after just a couple of iterations. Running the exact same tests within the same time window under room temperatures on 4.2 did not exhibit nearly anywhere near the same degree of throttling. We confirmed our findings in other benchmarks as well.
This sort of behavior isn't limited to benchmarks, unfortunately. We fired up EA's Real Racing 3 and watched the frequency drop from 1890 MHz, down several steps, before settling at 918 MHz. As the CPU complex throttles down, we have evidence to suggest that the GPU scales back as well in defined steps.
With no changes to the hardware design or thermal setup, the clear culprit is Samsung's DVFS algorithm. Mind you, both 4.2 and 4.3 employed DVFS as well, but Samsung clearly altered the implementation in 4.4 to affect the throttle points. It's not clear if this has anything to do with LucidLogix's GameXtend technology; the company wouldn't comment when we asked for feedback. Nor do we have data to reflect real-world battery life gains garnered from a quicker-to-spin-down version of the S4.
But the community at XDA-Developers already came up with a hack to disable Samsung's DVFS, essentially unshackling the Snapdragon 600 to perform more aggressively. This does not force the SoC to run at full-tilt, as it does under its application-detected Android 4.3 ROM. Rather, it raises the thermal limit to what's still believed to be within engineered guidelines. It's important to note that installing any sort of modification will void your warranty and lead to risks of bricking your phone. It's also going to burn through power more quickly, as higher clock rates and added heat work against efficiency.
When purely looking at performance from a "first run from cold" perspective, 4.4 delivers mostly the same as 4.2. Aside from gaming, most phone use is in short, sporadic bursts, allowing the SoC to drop back to idle.
This new behavior from Samsung's 4.4 ROM is disappointing for those wanting maximum performance from their SoC, especially given that the new DVFS system actually results in something far less consistent than the two major software versions before it.
A positive side effect of such conservative SoC behavior is its effect on power consumption and heat; lower voltages and frequencies generally result in less of both. Samsung could possibly be accounting for the fact that the first S4s off the line are now a year old with declining battery capacity, and this software tweak will preserve the company's original battery claims. That said, Samsung designs its phones with removable batteries, making it a cinch to replace. Having a phone that now slows down under heavy load could lead to conspiracy theories now that there's the newer, faster Galaxy S5 heading to stores worldwide.
Special thanks to Zackariah Khazraeinazmpour and Jon Carroll for their help in running benchmarks on their phones to help us characterize performance.
Stay on the Cutting Edge
Join the experts who read Tom's Hardware for the inside track on enthusiast PC tech news — and have for over 25 years. We'll send breaking news and in-depth reviews of CPUs, GPUs, AI, maker hardware and more straight to your inbox.
They need to start releasing phones with Sailfish O/s, bloody good looking operating system with support for QT c++ programming for native software while also being able to use Android apps using Alien Dalvik.Incredibly fast, lightweight and solid operating system, will actually make use of all this hardware instead of it being required just to run bloody android itself.Reply
Thank God i think i only use heavy 3D loads 5 minutes a day.Reply
Why is it that it takes samsung 4 months so far to release 4.4 for android but company's like htc Sony and lg have several phones running smoothly on 4.4 while samsung Is down with 2 they need to get it togetherReply
Quite happy with my Samsung devices. Maybe your problem is the user, not the hardware.13009408 said:Spamsung products revealed for the third rate shit they are.
I never knew the Galaxy S4 had a Snapdragon inside. I always thought it was one of Samsung's own Exynos series chips.Reply
I never knew the Galaxy S4 had a Snapdragon inside. I always thought it was one of Samsung's own Exynos series chips.There are two versions of GS4: the I9500 with the octa-core Exynos (3G only) and the I9505 with the Snapdragon 600 and LTE.
Why no nexus 5 in any of the graphs?Reply
Why no nexus 5 in any of the graphs?Nexus 5 runs the Snapdragon 800.
The 4yo iPhone 4 handles iOS7.1 just fine. Obviously it's not as fast as the 5s but I've used it and its pretty smooth. The 10 month old S4 can't run the latest Android OS? How pathetic is that?The GS4 is the most stable smartphone on the market. The iPhone you referred to is the buggiest "high-end" phone anyone has bought in a long time.
Nice try, though.
Talk about a gross exaggeration. A 0.5% lower crash rate is so insignificant that a user would never even notice it. Furthermore, these are statistics from applications, not the OS, and I'm willing to bet it's due to lame Java programmers that know nothing about proper memory management. That's all fine in general applications (since Objective C has ARC), but when you develop games in OpenGS, that gets flushed out as you're using C on iOS. As as the article you referenced reads, "graphically-intensive games naturally crashed the most, while e-commerce apps crashed the least." You can have your outdated, abandoned phone. I'll take an iPhone any day of the week.
The 4yo iPhone 4 handles iOS7.1 just fine. Obviously it's not as fast as the 5s but I've used it and its pretty smooth. The 10 month old S4 can't run the latest Android OS? How pathetic is that?The GS4 is the most stable smartphone on the market. The iPhone you referred to is the buggiest "high-end" phone anyone has bought in a long time.http://www.androidcentral.com/apps-crashed-most-gingerbread-things-have-improved-according-reportNice try, though.