[Q] Does underclocking saves battery? - Galaxy S II Q&A, Help & Troubleshooting

I've install Rom Toolbox,
and i saw there is a "CPU slider" where i control the clock speed.
i've put it to 1000MHz instead of 1200MHz and tested it for several days
i really dont feel any difference in performance.
browsing seems same, games like asphalt is equally smooth.
heating is similar, equally warm.
the only difference is quadrant benchmark.
1200MHz scores 3200-3400
1000MHz scores 2600-2900
frankly speaking, i'm not sure if there's any difference in battery life.
is there any way to accurately test whether the clock speed affects the battery life?
i've seen other threads, where there are very different opinions.
some say it will improve battery life, and some say its worst.
http://forum.xda-developers.com/showthread.php?t=726019
Quote: (SetCPU doesn't make a difference in battery life, it can only shorten it. The kernal already has the best settings for CPU speed built in.)
http://forum.xda-developers.com/showthread.php?t=1305465
Quote: (if you are able to stand the side effects of underclocking, it will surely boost your batery life.)

On my SGS2 program called CpuSpy shows that 1200MHz is about 1% of total cpu time (remember that governor is ondemand and CPU is at 1200 only when need it). If power consumption is directly proportional to clock speed by limiting it to 1000MHz you will get about 20% less power usage by 1% of time... looks like 0.2% power saved ? Soo if Your phone works for about 48h on one charging this way You can get about 6 extra minutes. It's just my guess...
Also have to consider if slower cpu causes screen to eat power for longer time... (because You have to wait longer for operation to complete)

slig said:
On my SGS2 program called CpuSpy shows that 1200MHz is about 1% of total cpu time (remember that governor is ondemand and CPU is at 1200 only when need it).
If power consumption is directly proportional to clock speed by limiting it to 1000MHz you will get about 20% less power usage by 1% of time... looks like 0.2% power saved ? Soo if Your phone works for about 48h on one charging this way You can get about 6 extra minutes. It's just my guess...
Also have to consider if slower cpu causes screen to eat power for longer time... (because You have to wait longer for operation to complete)
Click to expand...
Click to collapse
HI, thanks for replying. I understand what you mean. the phone dont operate at 1200MHz all the time. but when using browser, and playing games, such as asphalt, it runs at max CPU usage almost the entire gaming duration.
Anyway.....
the real question is whether the clock speed is directly proportional to the battery consumption.
while reading your post, i thought of a brilliant ideal how to verify this.
the CPU slider not only allows you to set the max CPU speed,
you can set the min CPU speed as well.
So, i thought of an experiment, lets set the min & max CPU to 1200MHz,
this way, the phone will be running constantly at max CPU even when its idle.
let the phone be turn on till it run out of battery, record the time, T1.
then repeat again with max and min CPU set to 1000MHz.
record the time it is turn on till it run out of battery, record time as T2,
then compare T1 & T2, this could certainly work.
it would be nice if any member here happens to have 2 sgs2, and tried them ;-)

There are two more things to consider
1. CPU is not the only element that consumes power.
2. SGS2's Exynos is always clocked at 200MHz when the screen is off - check if this minimum slider affects that too.
Please let know how your experiment goes.
Regards

when the screen is off, the phone will be in "deep sleep" state. i think thats less than 200MHz.
anyway, i wont be doin this experiment any time soon.
you see, this is my only phone, i need to use it.
i dont have much oportunity to leave it and wait for it to run out of juice.
still, i'll try it when i have the chance.

Related

Need SetCPU or SGS2 varies CPU already?

I use SetCPU to help battery life but someone told me it's not needed on the SGS2 as it already scales CPU for demand. True?
leedavis said:
I use SetCPU to help battery life but someone told me it's not needed on the SGS2 as it already scales CPU for demand. True?
Click to expand...
Click to collapse
Interesting point you raise actually.
I've just installed Setcpu and used the on demand governor. I left the values as default (200mhz for minimum and 1.2 ghz for maximum) - with no overclock.
I've immediately noticed swiping through the screens is a bit smoother and the biggest improvement is the gallery. All my photos appear much smoother. Before the gallery app was a bit lagy.
I haven't set any profiles yet such as screen off.
Every Android phone I've owned scaled the cpu, I think they all do. I've found that with setCPU my battery gets drained much faster en no real benefit in smoothness.
jzuijlek said:
Every Android phone I've owned scaled the cpu, I think they all do. I've found that with setCPU my battery gets drained much faster en no real benefit in smoothness.
Click to expand...
Click to collapse
Have you tried this yet though on the Galaxy S2?
There is definitely less lag than before - as stated, specifically in the gallery app. Just generally swiping feels more responsive as well. Battery is still pretty awesome, especially when using Lightening Rom 1.1 and the Android battery calibration app.
Hmm. I'll try SetCPU on the SGS2 and post back the findings (Performance+Battery).
I don't know how can it get any more smoother, I mean its already SO smooth!
there are many points to use setcpu on gs2:
-for some reason I dunno, gs2 can't manage it's 1.2ghz without gettin too warm. downclock and get rid of the burn effect.
-gs2 sports a good management of gpu (it does most of the work and setcpu doesnt down\overclock that). downclockin doesnt affect UI or video o browsing experience at all. can even downclock at 500 max speed without any sides.
-the only side u ll see it's benchmark (quadrant downgrading to 2000) but I hope u won't pay attention to such an unseful thing. benchmark doenst mean nothing, daily usage it's the only point to look at.
my settings: conservative, 200min 800max.
battery draining doesnt belong to setcpu this time, look to other settings.
alexleon said:
there are many points to use setcpu on gs2:
-for some reason I dunno, gs2 can't manage it's 1.2ghz without gettin too warm. downclock and get rid of the burn effect.
-gs2 sports a good management of gpu (it does most of the work and setcpu doesnt down\overclock that). downclockin doesnt affect UI or video o browsing experience at all. can even downclock at 500 max speed without any sides.
-the only side u ll see it's benchmark (quadrant downgrading to 2000) but I hope u won't pay attention to such an unseful thing. benchmark doenst mean nothing, daily usage it's the only point to look at.
my settings: conservative, 200min 800max.
battery draining doesnt belong to setcpu this time, look to other settings.
Click to expand...
Click to collapse
IT IS TRUE. I agree with every single line you wrote, it is just my expericence.
I have too setcpu conservative and undercloked 800 Mhz.
There no slow down or lag at all... But I am wondering if it gives a real boost to battery life. I am not sure of this.
I'll keep you guys posted... But I think that an undevolted Kernel it is really a need as for the solution of the damn dual core ginger bug that is sucking 20% of my battery every day
Well,from my experience with my Desire and Desire HD(won't even bother with the Hero,I had no real knowledge then),governors can make a huge difference.I for one like smartass or interactive governors(mostly the same).I wouldn't suggest conservative,interactive does the job much better.Tasks get done in less time and the CPU throttles down more quickly.Other than that,you can underclock or overclock all you like,it never made any big difference in battery life for me(Unless Sammy's CPUs are different in that aspect-Snapdragons are really "overclock-friendly").That's personal preference after all!
Anyway,the best solution IMO would be a vdd_levels interface.For those who don't know what it is,it is a mod made by -snq(Meet him at the Desire forums-That guy's a true LEGEND!He can patch/modify anything!),which practically allows you to change the voltage levels of the CPU on the fly rather than having to stick with the values hardcoded into the kernel.Using this and a simple script in GScript to change values that won't survive reboot or in init.d to be applied on boot,you can find the optimal voltages for your CPU(Don't forget,every CPU is unique and different),thus reducing heat and maximizing battery life.
If a dev brings that to the SGS2 it will be a big step in the right direction as far as I'm concerned.
I use SetCPU without issue, but only to run profiles (i limit the device to 500mhz when the screen is off). The rest of the time it scales itself up to 1.4GHz without fuss and using stock voltage. Battery life is fine, best ive had for an android device.
Wow, I've taken SetCPU off but left JuiceDefender on and my battery life is fantastic. At 70% after slightly heavier than normal use (used for listening to music for a couple of hours this morning) and been off charge for 8.5 hours.
SetCPU seems counterproductive on SGS2
leedavis said:
I use SetCPU to help battery life but someone told me it's not needed on the SGS2 as it already scales CPU for demand. True?
Click to expand...
Click to collapse
I did set ondemand which is a little more reactive and slightly smoother.
Though System Tuner is less cpu-consuming and much more useful on the SGS2. No need for all those complicated settings from setCPU. Only changing governor and changing frequencies on standby are useful.
leedavis said:
Wow, I've taken SetCPU off but left JuiceDefender on and my battery life is fantastic. At 70% after slightly heavier than normal use (used for listening to music for a couple of hours this morning) and been off charge for 8.5 hours.
SetCPU seems counterproductive on SGS2
Click to expand...
Click to collapse
Juice Defender uses as much battery as it saves this is fact, i have SepCPU set to 200 Min - 800 Max - On demand and have Juice Defender Ultimate and i thought it was great but it was recommended to me that i could save more battery by not using this, initially i was skeptical but tried it and i was astonished at the results, my battery life improved by 9 hours (i carried out a test with JD and without)
Anyone who says SetCPU uses up loads of battery is talking nonsense,it actually saves battery if configured correctly.
I am using Check Rom with set CPU I have it 1.2ghz max and 200. Using conservative governer. I been off charge for 15hrs, however I am using light usage I am on 72% screen on has been 5h 25m at time of writing. Not yet calibrated the battery.
jonny68 said:
Juice Defender uses as much battery as it saves this is fact, i have SepCPU set to 200 Min - 800 Max - On demand and have Juice Defender Ultimate and i thought it was great but it was recommended to me that i could save more battery by not using this, initially i was skeptical but tried it and i was astonished at the results, my battery life improved by 9 hours (i carried out a test with JD and without)
Anyone who says SetCPU uses up loads of battery is talking nonsense,it actually saves battery if configured correctly.
Click to expand...
Click to collapse
What are the settings are you using for the setcpu program in your S2?? Did you remove the Juice defender application?

[REQ] Standalone fix for high CPU freq with screen on

As I understand solution for "998 MHz with screen on" bug is found: http://forum.xda-developers.com/showthread.php?t=1225411&page=17#post16944722
We need to replace only one governor.
I don't want to play with different ROMs and kernels and I'm looking for simplest solution.
Is it possible to compile it as a module ("ondemand_mod" for ex.) and add it to stock ROM?
Or any other (simple) way?
Wrong section ...
Sent from my X10i using Tapatalk
Why wrong Section, this is Development to get the CPU Governor working correctly
Wolfbreak said:
Why wrong Section, this is Development to get the CPU Governor working correctly
Click to expand...
Click to collapse
Exactly, this is the right section for such request.
However, I can't help but wonder: is this really a "problem"?
No offence to anyone, but I find that the phone is very snappy
when on max frequency... The big problem for me, would be if it
didn't go into Deep Sleep immediately after turning the screen off
and stayed at min frequency for an extended period.
When the screen is on (aka using the phone) I'd like it to be as FAST
as possible. That's the reason I use the minmax governor.
Anyway, again, I don't mean to argue with anyone, I am just
presenting my point of view.
My_Immortal said:
However, I can't help but wonder: is this really a "problem"?
No offence to anyone, but I find that the phone is very snappy
when on max frequency... The big problem for me, would be if it
didn't go into Deep Sleep immediately after turning the screen off
and stayed at min frequency for an extended period.
When the screen is on (aka using the phone) I'd like it to be as FAST
as possible. That's the reason I use the minmax governor.
Anyway, again, I don't mean to argue with anyone, I am just
presenting my point of view.
Click to expand...
Click to collapse
Yes, it's really problem.
Higher frequency - higher power consumption. Moreover - with higher frequency CPU used with higher voltage so consumption is even more higher. So at 998 MHz CPU eats about 5 times more battery than on 246MHz.
With properly tuned governor I don't feel any real lags or slowdowns.
And, when screen is on CPU load is usually is lower than 20% at full frequency. So I don't want to waste my battery.
As I see it's possible to compile and use governor as module.
Could someone compile it? And assemble as xRecovery package?
Or point me where to read about compiling for arm, where to get tools and so on...
Karlson2k said:
Yes, it's really problem.
Higher frequency - higher power consumption. Moreover - with higher frequency CPU used with higher voltage so consumption is even more higher. So at 998 MHz CPU eats about 5 times more battery than on 246MHz.
With properly tuned governor I don't feel any real lags or slowdowns.
And, when screen is on CPU load is usually is lower than 20% at full frequency. So I don't want to waste my battery.
Click to expand...
Click to collapse
The thing is, on 245 MHz, you can't get any kind of decent performance.
Try this: set the minimum and maximum CPU frequency with SetCPU to 245 and attempt to use the phone normally.
Also, you might be right about voltage, but if the CPU is forced to work on lower freqs when it actually needs higher, there's definitely stress and increased battery consumption.
My phone lasts for more than 24 hours and it's always at max frequency when the screen is on. No lag, no freezes, no drain.
I do agree that the ondemand governor might not function as expected but I fail to experience the actual problem. That might be just me though.
Xperia X10i via Tapatalk
My_Immortal said:
The thing is, on 245 MHz with high load, you can't get any kind of decent performance.
Try this: set the minimum and maximum CPU frequency with SetCPU to 245 and attempt to use the phone normally.
Also, you might be right about voltage, but if the CPU is forced to work on lower freqs when it actually needs higher, there's definitely stress and increased battery consumption.
My phone lasts for more than 24 hours and it's always at max frequency when the screen is on. No lag, no freezes, no drain.
I do agree that the ondemand governor might not function as expected but I fail to experience the actual problem. That might be just me though.
Click to expand...
Click to collapse
There is no need to work on 245MHz as proper governor rise frequency automatically when it's necessary.
And really no stress for CPU to work an low frequency at full load. Moreover - CPU will consume more power at 500Mhz with 45% load than at 250Mhz with 95% load.
Sometime I use phone for navigation - long time with screen on and very low load. In this scenario battery drains very fast.
And last one - I like to have everything working properly. In case that I'll really need high frequency all the time I'll use other governor. I just want to have a choice.
I need a simple solotion for this too..I use z kernel and I found that Thego2s kernel fixed this problem..I was going to flash that kernel but think that has a bug and stoucks on logo ..can some one sayas a simple way?
Yes, I think a lot of people would prefer to use just small and simple fixes rather than replacing the whole kernel with a lot of nice but (personally) unnecessary features.
I am waiting for developers to release a fix for this problam

Underclocking: What are your thoughts?

Does anyone underclock? I only do it in certain situations. Do you see it as beneficial? Why or why not?
Sent from my Galaxy S2
EDIT: My settings are attached as a screenshot. My device is underclocked 50% of the time.
In my opinion and from personal use, I don't find underclocking to really be beneficial. I never really saw any better battery life. On the same note, I never really found overclocking and undervolting to be extremely beneficial either. It's like the gains aren't worth the time to tweak everything.
Undervolting, yes. Limiting clock speeds, and setting governer to conservative, yes. I say 1ghz is the best spot without losing much performance, and I get 2 days of battery life (sometimes) compared to the one day before... Stock kernel, you aren't going to see much of a difference because you can't undervolt...
I keep my phone at 800max 200min on conservative with a 85% up and 20% down threshold. I don't even see the phone slow down at 800 plus it saves some battery!
I force underclock when I'm in a situation where I KNOW the clock should never ramp up (Screen-off I set to 500) as a "safety measure" to prevent surprises.
I also may force underclock to 800 when running Navigation once my vehicle dock comes in - since we can't crank our charge current up.
Entropy512 said:
I force underclock when I'm in a situation where I KNOW the clock should never ramp up (Screen-off I set to 500) as a "safety measure" to prevent surprises.
I also may force underclock to 800 when running Navigation once my vehicle dock comes in - since we can't crank our charge current up.
Click to expand...
Click to collapse
My screen off is set to this also (200-500, conservative). You can use Tasker to change frequencies for specific apps automatically.

same voltage = same energy consumption??

As far as I've seen, Everybody in this forum says that clocks 480 or below have the same voltage, so setting min clock as 480 is enough and no difference in terms of battery consuming even if you set it to 245.
I know it is right about voltage(I searched about that myself), but does same voltage means same energy consumption?
you guys must already know that higher clock makes more heat, so where does the heat come from? it's from your battery!
(from what I learned from school E=V^2*t/R where E is energy, V is voltage, t is time and R is resistance so there's another fact for electric energy other than voltage and time)
So I think you should set the min freq to 245 unless you feel uncomfortable for its low responsiveness.
is there anything wrong in my theory?
For this you can't depend on equations etc, it has to be tested each by everyone of us to feel which one is better for us and which is more battery saving. Personally I felt 245mhz drains a bit less than 480mhz however it is less responsive. I remember i saw in forums about this(althought another device) and it was one heck of a debate, but the conclusion was each and every person has to test for themselves.
And the wakes ofcourse, the amount the kernel wakes per second.
Deep sleep **** counts also...
If you have wakelocks, set as low as you can, if you don't, use 480
Sent from my LG-P500
You're right about energy consumption,i've been with extreme-cpu overclocking(on pc) for quite some time and a higher clock on same voltage will indeed consume more+more heat. But here like you've seen ^ it's related to wakelocks and if there are any apps running, if deep sleep is ok and stuff so there are many factors.
Best is to try and see wich fits you best regarding performance/battery/stability also it depends on the guvernor if you have a snappy one it will push your cpu to max even if you surf between screens
This is one of the biggest "not solved point" about O.1 configuration....
To adress this and other "open point" i developed an app for logging resources consumption
more info here:http://forum.xda-developers.com/showthread.php?t=1505950
Did a test with a cpu benchmark (simple thing to test how fast it does some things)
Did those in powersave governor:
122MHz
>10000ms (took a minute to do the test)
480MHz
~1900ms
Also did in 245, and I got 4392ms, and this is very good
Sent from my LG-P500

[Q] Overclocking Concept

Hi Guys,
I am a noob here. I have never used a android phone before, not even a iPhone - so basically no smart phones.My first smart/android phone would be Nexus 4 which would be coming tomorrow.
I have been reading threads to understand andriod architecture and believe have understood to certain extent.
I have a question in clocking the CPUs and Voting.
As I understand, we have 3 states -Max, Min and Sleep for a single CPU core
Max - The frequency (clock speed) which CPU executes or maximum speed which CPU sends signals to its components and get the response back. This would be used when the system is on - which means when user is doing some process.. like texting, video chat, gaming (this case GPU is also involved) etc.
Min - This would be for background process when the user/phone is idle - that when screen is off (eq - gmail sync, facebook sync etc..)
Sleep - Screen off and no background process , the core will be in sleep.
And the battery level will be directly propotional to speed of CPU with respect to the volting.
Now lets say there is a single core processor in a phone which can clock upto 1.5GZ. and the stock kernel comes up with Max - 1.3GZ and MIN -0.5 GHZ.
Question is abt overclocking minimum frequency
1. why not overclock the Mn frequency to 1.3Ghz? because the backgroundprocess would be fast and phone/core will be sleeping after that,
which means process consumes more battery at that particular time but overall baterry should be efficient as there would be more sleeping time.
2. About volting, so far I have not seen min and max volting. So is there only one voltage/power drawn for max and min CPU speeds by CPU?
Please correct me if any of my statements is wrong.
Appreciate your help,
Thanks,
Franklin B.
Overclocking the minimum frequency to 1.3ghz would probably decrease your processor's life if you use your phone too much but I have been actually increasing my phone even 200mhz more than it was in stock ROMs, i've been using my device for more than 2 years and it still works perfectly. Finally, it all depends on how much your phone is good.
I also decreased the cpu min and max frequency when phone sleeps to 256 mhz which decreased a lot battery consumption.
Hope i helped !
Don't forget the THANKS button
1.you can but your battery life will be drastically reduced! There is a good amount of time after the screen is off and before the phone sleeps! So if over clock the min to 1.3Ghz, the processor will be running at 1.3Ghz till it goes to sleep! But if that's what you want you can do that!
2 . I'm not so sure about this topic either but I think the processor operates at a particular voltage and I could be wrong!
Sent from my GT-P3100 using Tapatalk 2
Thank you Guys
Franklin Bernard said:
1. why not overclock the Mn frequency to 1.3Ghz? because the backgroundprocess would be fast and phone/core will be sleeping after that,
which means process consumes more battery at that particular time but overall baterry should be efficient as there would be more sleeping time.
2. About volting, so far I have not seen min and max volting. So is there only one voltage/power drawn for max and min CPU speeds by CPU?
Click to expand...
Click to collapse
Hi, I received your PM. I agree with the guys about the heat issues, longevity, and battery life etc. The answer to your question #2 will help you better understand things.
In all kernels, there are frequency/voltage scaling tables. For every frequency step (clock speed) in the table, it corresponds to a specific voltage. It gets a bit more complicated than this of course, but that is the basic way things are setup in the kernel. The higher the frequency, the higher the voltage is required to be to keep the CPU (or GPU, bus, RAM etc.) stable at a given clock speed. The more voltage, the more current, and the more heat is generated. The longer you stay at higher clock speeds/voltages, the better the cooling system you need to have. Supply regulators are defined to feed the core and rail voltages so that the processor can live in a happy environment no matter what it is being asked to.
As far as power consumption, it's all about getting a unit of work done in a timely/efficient fashion using the least amount of power consumption. If the phone is sleeping, the word "timely" takes on a different meaning so then it is mostly concerned with power consumption and getting the background tasks completed effectively without having the phone experience the sleep of death (SOD). What you are talking about is the theory of "race to sleep" so that the work can be done quickly and the phone can go back to sleep where it uses the least amount of power (clocks actually turn off during deep sleep and cores are turned off). However, there is a happy medium to this theory and heat and battery consumption are the main enemies. Heat can also rob efficiency, more current is required when a circuit heats up. The more a phone wakes up to do syncs for email, apps, social networking, missed calls etc., that work can stack up throughout the day. The question comes down to how can the device get this work done using the least power and keep the device cool. On the N4, the lowest frequencies can use ~700-800mV per core while the highest frequencies can use ~1100mV. There is a drastic difference in the amount of heat generation between this range.
I think this should give you the general idea and maybe more that you wanted to know! Here are some links to check out if you are interested. Google and you will find many many more articles and research papers.
http://en.wikipedia.org/wiki/Voltage_and_frequency_scaling
http://atrak.usc.edu/~massoud/Talks/Pedram-dvfs-Taiwan05.pdf
Thanks a ton !!!

Categories

Resources