If you are using one of the Over-Clocked Undervolted Kernels please uninstall set-cpu and observe your battery life for 3 days and compare it to what you got when you used set-cpu. Then report as to if it is better, worse, or the same.
Just compare to what how long your battery lasts with your normal usage. Please do not give replies like "I only used 30% in two days with normal use."
Just reply with either better, worse, or same. Because usage is relative and that is not the purpose of this.
I think that set-cpu is interfering with the built in govenor and its ability to scale the freq of the phone. I think that it is staying on what-ever freq you set in set-cpu and scaling properly and thus reducing the battery life, and making the undervolting useless.
IF YOU BELIEVE YOU HAVE BETTER BATTERY LIFE WITHOUT SETCPU, THEN GET LOGS WHILE IT IS RUNNING AND SEND THEM TO THE DEV.
I have also noticed lag on the home screen with setcpu, I started using Overclock Widget to detect the values and to diff freq screen off 245-576 and put the phone on sleep while charging so will stay cool. Battery life has been great so far! I'm using 2.6.33.4 [email protected] #1 about to upgrade to his newest 2.6.34...I think SetCpu has flaws!
Will let you know my results.
this thread may be of some help. im currently trying pershoots 5.12vfp release without setcpu at all.
i do, however, remember getting 37 hours with moderate use with setcpu and profiles set, but i cant remember which kernal it was exactly. i think it may have been IRs 4.29 release..
Just uninstalled SetCPU and I'm running Pershoot's newest 2.6.33.4 925 Kernel. I will report back my findings in a couple of days...
Been curious about this for a while, but does the Nexus automatically throttle CPU speed by itself when SetCPU is not installed?
paulk_ said:
Been curious about this for a while, but does the Nexus automatically throttle CPU speed by itself when SetCPU is not installed?
Click to expand...
Click to collapse
Nope, incredible and onwards only.
Did this Quite a bit ago... ran with and without for over a week and i have better battery life without setcpu
When you don't have setcpu, you're not running at 1113ghz..
persiansown said:
When you don't have setcpu, you're not running at 1113ghz..
Click to expand...
Click to collapse
Perhaps...However, Linpack is proportional (I think) to the device's performance. My little experiment was testing different frequency kernels and measuring that against Linpacl
998: 7.4
1.13: 8.2
1.19: 8.9
So it would appear that performance increases with each kernel which wouldn't be the case if SetCPU was required.
I have some reasons to believe that SetCPU would interfere with the actual design of the Nexus One. I mean after all, i'm sure it was programmed to manage itself. So why have another app that does the same thing, twice? Just a thought, but for one thing, my phone is definitely cooler when charging compared to having SetCPU with profiles.
dogiedogie said:
Nope, incredible and onwards only.
Click to expand...
Click to collapse
You mean that the Incredible features CPU throttling?
jlevy73 said:
Perhaps...However, Linpack is proportional (I think) to the device's performance. My little experiment was testing different frequency kernels and measuring that against Linpacl
998: 7.4
1.13: 8.2
1.19: 8.9
So it would appear that performance increases with each kernel which wouldn't be the case if SetCPU was required.
Click to expand...
Click to collapse
There are dozens of potential optimizations that can be done to improve performance without touching the cpu speed. Different kernels, especially if they're from different people, will have different flags set in the build and so will perform differently even at the same clock speed.
Casao said:
There are dozens of potential optimizations that can be done to improve performance without touching the cpu speed. Different kernels, especially if they're from different people, will have different flags set in the build and so will perform differently even at the same clock speed.
Click to expand...
Click to collapse
I completely agree however all the kernels I use are from the same person and the optimizations at the different clocks speeds are identical. Therefore the spread in my linpack scores indicate that setcpu is not required. At least, that's my theory
this and other threads have made me question why we need setcpu anyways. I have it running and its great but can't we just integrate what setcpu is doing from the get go instead of having an external app running a separate process?'seems a little inefficient to me. The reason I say this is that I noticed most people are using the same settings for set cpu.
anyways, I dunno how relevant all this is since froyo's just around the corner and that may alleviate some problems but bring more problems
Yeah, start bashing my app, knowing I was the one who came up with the ideas behind the 1113MHz/uv hack in the first place (in fact, I came up with the 21MB hack as well, so prominently displayed in the OP's kernel thread title). Thanks, nexus one community.
I can explain that setcpu does not run any code in the background if your profiles are disabled, I can explain how cpufreq works, I can explain what lengths I went to to optimize the profiles, and I can explain that the profiles are very passive (except sometimes on the Droid, but there's an option for tweaking that) but I probably won't bother. Grab 1.5.3a and use it, or don't use it. I don't care either way.
I think that set-cpu is interfering with the built in govenor and its ability to scale the freq of the phone. I think that it is staying on what-ever freq you set in set-cpu and scaling properly and thus reducing the battery life, and making the undervolting useless.
Click to expand...
Click to collapse
You obviously do not know how cpufreq works. Setcpu does not touch the values after it sets a profile. Profiles actually run code only when it receives broadcast intents. It sets the max and min bounds and the governor if necessary within a fraction of a second. The service is completely idle otherwise. It can't "interfere with the built in governor." Okay, then. What is your big theory? What exactly is setcpu doing wrong?
SetCPU is advantageous because it allows you to tweak speeds on the fly and based on certain conditions. You can have solely kernel based overclocking and undervolting, sure, and that is perfectly fine. SetCPU is a convenient tool for controlling that without having to compile and flash a new kernel. If you do not like profiles, do not use them. They were only introduced in 1.3.0 But don't uninstall SetCPU because it does nothing with profiles disabled.
dogiedogie said:
Nope, incredible and onwards only.
Click to expand...
Click to collapse
HTC implements a rather awkward driver in nearly all of their Sense UI devices (and I think the Magic 32A) that throttles based on certain conditions. I am not entirely sure how it works, as I have not looked into the specifics, but it seems to max out the CPU under some conditions.
chowlala said:
I have some reasons to believe that SetCPU would interfere with the actual design of the Nexus One. I mean after all, i'm sure it was programmed to manage itself. So why have another app that does the same thing, twice? Just a thought, but for one thing, my phone is definitely cooler when charging compared to having SetCPU with profiles.
Click to expand...
Click to collapse
I am 100% sure this is placebo effect. Setcpu can't make your phone run hotter just because it's there. If you had a charging profile set for 1113/1113, sure, but that is not setcpu itself. Linux does not control the CPU scaling any further than what ondemand does - there is nothing preventing the CPU from going up to your max during sleep (or rather, when the screen is off), for example, or when your battery is low.
Oh, and using the active widget is a bad idea if you care about battery life. I tried to optimize it as much as possible, but realize that it's updating a lot more things than other apps are (the frequency, the bounds, and two temperature readings) at a relatively fast interval. The home screen does pause a bit while it is updating. That is a fact of life. Longer intervals are essentially useless because the update interval for cpufreq itself is on the order of thousands of microseconds. The current appwidget refreshes if the screen is on, regardless of whether it's visible or not (there is currently no way to tell if it is visible). A live wallpaper would be a much better idea than a constantly updating appwidget, and I'll look into that.
Let me explain this bit better. Cpufreq will scale your CPU between the max and min values automatically. Once the CPU load hits the "up threshold," it takes your CPU frequency from the min to the max, then gradually eases it down. SetCPU lets you easily change the max and min values on the fly. If you want, it can also prevent the system from scaling the CPU up that high during times you don't want it to (with profiles, of course). It does not and cannot interfere with the actual governor.
Well there you have it, straight from the source
TL;DR - setCPU doesn't run code in background unless you use profiles, it doesn't make your phone hotter unless you use a 1113/1113 profile, & if you value battery life don't use setCPU Active widget.
SetCPU
coolbho3000 said:
...
Click to expand...
Click to collapse
Props dude. Keep up the good work.
To be honest I'm a user, donator and supporter of SetCPU. I've never had cause to complain.
Not bashing your app dude, in fact I have the paid version. I am only wondering why people are noticing better battery life without it than with it. Want to see if it really is setcpu or something else. To do that something has to be isolated.
And I believe that if the freq are set in the kernel then the phone will scale up an down on its own.
coolbho3000 said:
Yeah, start bashing my app, knowing I was the one who came up with the ideas behind the 1113MHz/uv hack in the first place (in fact, I came up with the 21MB hack as well, so prominently displayed in the OP's kernel thread title). Thanks, nexus one community.
I can explain that setcpu does not run any code in the background if your profiles are disabled, I can explain how cpufreq works, I can explain what lengths I went to to optimize the profiles, and I can explain that the profiles are very passive (except sometimes on the Droid, but there's an option for tweaking that) but I probably won't bother. Grab 1.5.3a and use it, or don't use it. I don't care either way.
You obviously do not know how cpufreq works. Setcpu does not touch the values after it sets a profile. Profiles actually run code only when it receives broadcast intents. It sets the max and min bounds and the governor if necessary within a fraction of a second. The service is completely idle otherwise. It can't "interfere with the built in governor." Okay, then. What is your big theory? What exactly is setcpu doing wrong?
SetCPU is advantageous because it allows you to tweak speeds on the fly and based on certain conditions. You can have solely kernel based overclocking and undervolting, sure, and that is perfectly fine. SetCPU is a convenient tool for controlling that without having to compile and flash a new kernel. If you do not like profiles, do not use them. They were only introduced in 1.3.0 But don't uninstall SetCPU because it does nothing with profiles disabled.
HTC implements a rather awkward driver in nearly all of their Sense UI devices (and I think the Magic 32A) that throttles based on certain conditions. I am not entirely sure how it works, as I have not looked into the specifics, but it seems to max out the CPU under some conditions.
I am 100% sure this is placebo effect. Setcpu can't make your phone run hotter just because it's there. If you had a charging profile set for 1113/1113, sure, but that is not setcpu itself. Linux does not control the CPU scaling any further than what ondemand does - there is nothing preventing the CPU from going up to your max during sleep (or rather, when the screen is off), for example, or when your battery is low.
Oh, and using the active widget is a bad idea if you care about battery life. I tried to optimize it as much as possible, but realize that it's updating a lot more things than other apps are (the frequency, the bounds, and two temperature readings) at a relatively fast interval. The home screen does pause a bit while it is updating. That is a fact of life. Longer intervals are essentially useless because the update interval for cpufreq itself is on the order of thousands of microseconds. The current appwidget refreshes if the screen is on, regardless of whether it's visible or not (there is currently no way to tell if it is visible). A live wallpaper would be a much better idea than a constantly updating appwidget, and I'll look into that.
Let me explain this bit better. Cpufreq will scale your CPU between the max and min values automatically. Once the CPU load hits the "up threshold," it takes your CPU frequency from the min to the max, then gradually eases it down. SetCPU lets you easily change the max and min values on the fly. If you want, it can also prevent the system from scaling the CPU up that high during times you don't want it to (with profiles, of course). It does not and cannot interfere with the actual governor.
Click to expand...
Click to collapse
I too am a fan of setcpu, and over the last week I did get curious due to this this thread. I found my battery ran down quite significantly faster without setcpu, maybe because I didn't have my sleep profile of lowest freq min/max, or my battery profile of max 756, or my low battery profiles scaling down my cpu max. Either way, stop bashing the app, it's awesome, and if you had concerns, take them to the dev rather than start a witch hunt in the forums trying to make a posse.
People that report better battery, may not have had setcpu set up correctly in the first place. A friend of mine at work installed it, ran for a day and uninstalled it, citing it didn't do anything and infact drained his battery. He had the widget running, and had upped the minimum cpu freq to 500 and something, max to the 1.13ghx. He didn't run profiles. But as such, he wasn't letting his phone scale down to the lowest freq when it wanted to, and had the widget drain. I got him to set t up as I have mine, and he was blown away with the change.
"My car wont go over 20km/h"
"Are you putting your foot on the accelerator?"
"Whats an accelerator?"
Things have to be used correctly to get the best out of them, and unless someone saying it's far worse than without actually comes in and puts up their values they have it set to, we have no idea why they are having the fault. My experience (I have worked tech call centres for years) is that 99/100 issues people experience are due to not using things as they are set out to be, or just have no idea how to do what they are trying to do. My work mates thing was that he thought all apps would go faster if he increased the minimum freq, so therefore use less battery because the processes are completed faster. In a way it's logical, but the result is that even when nothings running the cpu wont fall below that value, so the battery drained much faster than he expected.
root rookie here.. First device I ever rooted, really I'm new to cell phones in general.
I flashed this rom adryn bamf 4.1 (non remix) and its working good and all
But I noticed on the smartass setting, which underclocks, that after about an hour or so of playing a game/tv whatever my batter will be around 42C, it seems very hot compared to around 32C before I put this rom and kernal on
Two questions
Am I doing something wrong or is this normal
And, How hot can a battery get before it becomes something to worry about?
Thanks =P
Yea in the 40's is way high. Remember, heat is inefficiency (wasted energy). After playing a game for an hour you will probably be in the mid 30's C. I would recommend trying a different kernel and wiping devlik cache. Also, see what apps and services are running in the background and increase the length of time between syncs. Also, smartass scaling did great on my incredible but I have found that it is not perfected yet for the tb. I would suggest ondemand unless the dev or OP specifically says that smartass is the way to go. As far as heat and battery I find that adrenylyn's kernels do the best. As far as performance, drod and ziggy's seem to fly. Isoman or whatever seems to also be a favorite but I personally didn't have great results. It is important to not supremely OC or UC. I would simply stray away from UC in general. For a daily driver, I would stay under 1.5 Ghz, and honestly 1.2 seems to work best for me. Hope this helps.
thanks for taking the time to respond
So why no under clocking? I assumed it would help battery life but not so much?
Just set to 1200 for both min/max? Or on demand scaling up to 1200?
I prob had a bunch of apps running in the backround, i'm new to droid.. came from an old feature phone
42C is definately too hot! As the previous poster suggested, try a different kernel. There also could be a remote chance your battery is defective.
I really feel like it is more likely that something I am doing is impacting it
I had the phone stock for a week and no problems (same usage)
Rooted but stock rom for a week and no problems
Put this kernal on (which everyone says is really good) and this rom and it was getting hot.. So far it is good around 38-39 (still too high?) with 1200mhz on demand min 256mhz
I flashed 2 different kernals and both times after less than 45 mins of browsing forums and playing home run baseball my battery gets to 42C. Could this be caused by the rom? I wonder if I damaged my battery or phone at this point
Mine got up to 113 degrees over the weekend. It felt like I was cooking my phone off and getting ready to throw it like I do in black ops.
I realized my phone was trying to search for a 4g signal when there was none. I entered #*#*#4636#*#*# on my dial pad to turn it off. It reduced my battery heat by 5 degrees. I should point out I was out in the field. Aka in the middle of nowhere where.
Sent from my rooted Thunderbolt with VirusROM AirborneTB. Xda premium
I'm @ 53.4C right now and it doesn't seem to be charging, lol.
raider3bravo said:
Mine got up to 113 degrees over the weekend. It felt like I was cooking my phone off and getting ready to throw it like I do in black ops.
I realized my phone was trying to search for a 4g signal when there was none. I entered #*#*#4636#*#*# on my dial pad to turn it off. It reduced my battery heat by 5 degrees. I should point out I was out in the field. Aka in the middle of nowhere where.
Sent from my rooted Thunderbolt with VirusROM AirborneTB. Xda premium
Click to expand...
Click to collapse
Sorry but to fly off topic what do you do? I'm generally out in the boondocks when I'm on wellsite...
Sent from my Thunderbolt running CM7...
42c isn't anything out of the ordinary, or outside operational parameters for a battery of that type. Not by a long shot, actually. That battery can safely operate at 59c, but the phone won't charge it north of about 47c due to the fact charging will increase the temperature even more.
As for the governors:
The smartass governor operates similarly to the interactive governor, but isn't as aggressive and allows for wake up lag reduction. The governor SHOULD be your main line of controlling clock speed, not your min and max settings. Some might like to argue that point, but that's mainly because they haven't messed around with governor parameters. With and ondemand or interactive governors, and even some smartass governors (Not Ziggy's modified), it's entirely possible to set min as low as 61MHz, and max at 1.65GHz and have the CPU rarely, if ever, reach those speeds. It depends entirely on what you've set the governor parameters to be. I don't know of any app that allows you to modify those because the locations of the parameters aren't always the same name or in the same places so it's best done through a script. The script I uses does routinely reach up to my freq_max, but it does it fairly aggressively, then ramps down just as aggressively. Part of that is the nature of the lagfree governor, part of it is where I've set the thresholds. In any event, governor control via a script is a much better solution than castrating your device.
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.
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
What is the difference between undervolting and underclocking? What does each do to battery life, performance, etc.
Also, what are the best, stable undervolting and underclocking value for the Rezound? I'm running Neo's Tron rom
gleggie said:
What is the difference between undervolting and underclocking? What does each do to battery life, performance, etc.
Also, what are the best, stable undervolting and underclocking value for the Rezound? I'm running Neo's Tron rom
Click to expand...
Click to collapse
Undervolting is lowering the amount of power the processor draws at a certain frequency. Let's say, for example, a processor uses 1025mV at 1.18GHz normally. If you lower the voltage to 975mV for that frequency (using System Tuner or something similar) that's undervolting. If you lower the voltage too much the device will be unstable and reboot.
Underclocking is lowering the top speed of a processor. On our Rezound, the maximum speed of our processor is 1.5GHz stock. If you lower the maximum speed to 1.18GHz that's underclocking. Obviously lowering the maximum speed of the processor will decrease the performance of the device somewhat, depending on how much you lower it and what you're doing. Just getting on Twitter and XDA you might not notice the difference in speed, but during gaming it'll become more prevalent.
There isn't an established "best" amount to undervolt by, as each device is different. One device might be able to undervolt by 50mV with no problems, while another might not be able to handle any undervolting at all. If you're using the latest version of TRON ROM you should already be on Snuzzo's FunkyBean kernel, which has been undervolted by 50mV at every frequency.
Undervolting is also a subjective thing. Some people choose to go with 1.18GHz, while others may choose something higher than that, like 1.35GHz. It all depends on how you use your device and how you want it to perform. I suggest trying out something around 1.24GHz and seeing if it's alright with you. If it's too laggy just raise the speed bit by bit until you're satisfied with it.
I'm sorry for the long winded reply, but I wanted to make sure I covered everything.
Sent from my ADR6425LVW using XDA Premium.
SteveG12543 said:
Undervolting is lowering the amount of power the processor draws at a certain frequency. Let's say, for example, a processor uses 1025mV at 1.18GHz normally. If you lower the voltage to 975mV for that frequency (using System Tuner or something similar) that's undervolting. If you lower the voltage too much the device will be unstable and reboot.
Underclocking is lowering the top speed of a processor. On our Rezound, the maximum speed of our processor is 1.5GHz stock. If you lower the maximum speed to 1.18GHz that's underclocking. Obviously lowering the maximum speed of the processor will decrease the performance of the device somewhat, depending on how much you lower it and what you're doing. Just getting on Twitter and XDA you might not notice the difference in speed, but during gaming it'll become more prevalent.
There isn't an established "best" amount to undervolt by, as each device is different. One device might be able to undervolt by 50mV with no problems, while another might not be able to handle any undervolting at all. If you're using the latest version of TRON ROM you should already be on Snuzzo's FunkyBean kernel, which has been undervolted by 50mV at every frequency.
Undervolting is also a subjective thing. Some people choose to go with 1.18GHz, while others may choose something higher than that, like 1.35GHz. It all depends on how you use your device and how you want it to perform. I suggest trying out something around 1.24GHz and seeing if it's alright with you. If it's too laggy just raise the speed bit by bit until you're satisfied with it.
I'm sorry for the long winded reply, but I wanted to make sure I covered everything.
Sent from my ADR6425LVW using XDA Premium.
Click to expand...
Click to collapse
Thanks for the thorough response!