In this thread we will discuss governors.
Primarily differences between ondemand and conservative based ones. This thread was created because ktoonsez made a hotpluging conservative governor. ... perhaps this needs explanation for the general community, that will imo prove the vast superiority of conservative based governors. First here is a link about governors in general it is sort of abridged but, covers allot of governors http://blog.g4team.com/?p=5519
As you can see it makes mention that most of these governors are similar to ondemand. So outlining the major differences. Ondemand scales to the highest frequency as soon as a load occurs. Conservative scales upward based on the frequency step variable which means for the most part will scale through every frequency to achieve the target load thresholds. What this practically means is ondemand is prone to wasting power on unneeded clock cycles. Ondemand also features something called a down differential, this variable determines how long the governor will remain at the given frequency before scaling down. Conservative does not have this, but instead relies on having a down threshold which insures that as soon as the load drops below a given variable it scales down as fast as the sampling rate allows. The result to this is a governor which attempts to keep the load level tolerable and save you battery! Now ! Ktoonservative Is that but in addition contains a hotpluging variable which determines when the second core comes online. The governor shuts the core off when it drops below the hotplug down threshold thus giving us a handle on the second performance factor in our CPUs behavior. While by default conservative is a poor performer it can be made to perform comparably to even performance governor. Here are some settings to discuss and start with. They are slightly less battery friendly under a load but very very well performing.
after realizing just everything mpdecision does i recommend turning it off for this govenor to work properly "stop mpdecision" in the terminal should do. it not only allows for things like benchmarks to lock frequency but generally will disturb these settings under a load, it will do something completely different. so when i turned it off i discovered the govenor behaving differently....more over exactly as you would expect this also meant with some ideas from mw86 that we dont really need touch booster. id recommend the first set of settings and use the last if you want mpdecision on. despite looking less aggressive for battery savings they usually will be with the absence of mpdecision
SAMPLING_RATE="15000"
UP_THRESHOLD="67"
DOWN_THRESHOLD="47"
FREQ_STEP="3"
SAMPLING_DOWN_FACTOR="1"
IGNORE_NICE_LOAD="0"
UP_THRESHOLD_HOTPLUG="85"
DOWN_THRESHOLD_HOTPLUG="33"
SAMPLING_RATE="40000"
UP_THRESHOLD="67"
DOWN_THRESHOLD="52"
FREQ_STEP="5"
SAMPLING_DOWN_FACTOR="1"
IGNORE_NICE_LOAD="0"
UP_THRESHOLD_HOTPLUG="68"
DOWN_THRESHOLD_HOTPLUG="40"
And here is the link for the kernel containing such http://forum.xda-developers.com/showthread.php?t=1800576
A further edit for jb builds most benchmarks are niced so you must turn off ignore nice load to test settings with them
Sent from my SPH-L710 using Tapatalk 2
The results
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
[/IMG]
Sent from my SPH-L710 using Tapatalk 2
Great post and discussion freecharlesmanson. I'm using your specs above and FREQ_STEP="5" I changed to 1, so it would be more like Lazy governor and save me extra power at the cost of a little lag since it must go through the full frequency scale instead of jumping to target frequency in a step or two. Watching cpu frequency in a graph shows this governor and your tweaks do great at being conservative but with power ready to be tapped. For frequency step at 1 im seeing stuff that ramped up in no time takes a half a sec more due to the frequency ladder it must climb... but I'm hoping it will mean it only uses high frequencies when its been under load for quite some time and not just from a basic background task I may care little about the speed in which its completed. Battery life is through the roof with this governor and Ktoonsez Kernel.
edit: if i set down threshold to 60 does it save more power without a lot of complications or does it cause large hiccups or uneeded frequency changing? would it be better to be near 50, stay at 45 or drop down under to 40-35? i was using your settings in other kernel thread but now using yours here and the rest as mentioned.
mw86 said:
Great post and discussion freecharlesmanson. I'm using your specs above and FREQ_STEP="5" I changed to 1, so it would be more like Lazy governor and save me extra power at the cost of a little lag since it must go through the full frequency scale instead of jumping to target frequency in a step or two. Watching cpu frequency in a graph shows this governor and your tweaks do great at being conservative but with power ready to be tapped. For frequency step at 1 im seeing stuff that ramped up in no time takes a half a sec more due to the frequency ladder it must climb... but I'm hoping it will mean it only uses high frequencies when its been under load for quite some time and not just from a basic background task I may care little about the speed in which its completed. Battery life is through the roof with this governor and Ktoonsez Kernel.
Click to expand...
Click to collapse
Yep if you can deal with the lag it will do the trick . You could try to slightly raise that number and just raise the up threshold and hot plug threshold allot like 85 up and 80 hotplug. Then raise the freq step to 2 or three maybe it might give a similar result by discouraging up scaling thru the demand end but would allow quicker scaling ever so slightly with less likelihood of jumping steps. By my math each freq step represents 4.3% total available scaling
Sent from my SPH-L710 using Tapatalk 2
Great work on this, appreciate you taking the time to explain it all!
Sent from my SPH-L710 using xda app-developers app
I can't stand any form of lag! Complete smoothness is the way to be
Sent from my SPH-L710
Lol if you're lagging using conservative with your shiny S4, you're doing it wrong.
I've used conservative exclusively over ondemand ever since root was achieved with my Epic4g which uses the 1ghz hummingbird processor and there's no lag...
I now use smartassv2...seems to give even faster performance and shuts things down quicker than conservative!
Sent from my SPH-D700 using xda app-developers app
A_Flying_Fox said:
Lol if you're lagging using conservative with your shiny S4, you're doing it wrong.
I've used conservative exclusively over ondemand ever since root was achieved with my Epic4g which uses the 1ghz hummingbird processor and there's no lag...
I now use smartassv2...seems to give even faster performance and shuts things down quicker than conservative!
Sent from my SPH-D700 using xda app-developers app
Click to expand...
Click to collapse
Smart ass is based on interactive my issue still falls with load regulation. Most of that it seems like it would race thru frequency more. Which may deliver good performance but if at all it would deliver the same but worse battery
This is how well it works for idle regulation and I should point out smart ass doesn't hotplug so in turn because it cannot regulate the second core most likely results in less efficient scaling and if the second core preempted scaling it offers more performance than scaling right off ,those screens are of it being used alittle before bed then alittle more after I woke up
Sent from my SPH-L710 using Tapatalk 2
Just applied values. So far so good. I was just curious, are you over clocking at all? Would it be safe to run this thing at 2106?
Sent from my SPH-L710 using xda app-developers app
drewmonge said:
Just applied values. So far so good. I was just curious, are you over clocking at all? Would it be safe to run this thing at 2106?
Sent from my SPH-L710 using xda app-developers app
Click to expand...
Click to collapse
Rofl. Anything over 1.5 is a waste.
Sent from my SPH-L710
drewmonge said:
Just applied values. So far so good. I was just curious, are you over clocking at all? Would it be safe to run this thing at 2106?
Sent from my SPH-L710 using xda app-developers app
Click to expand...
Click to collapse
Its a governer not voltage settings so I can't see why you'd have a problem
Sent from my SPH-L710 using Tapatalk 2
Custodian said:
Rofl. Anything over 1.5 is a waste.
Sent from my SPH-L710
Click to expand...
Click to collapse
Fantastical.
Sent from my SPH-L710 using xda app-developers app
Freecharles manson I was tinkering more and decided to go in a different direction. can you tell me how this would act theoretically? it seems to do good at no lag and saves power still.
SAMPLING_RATE="13500"
UP_THRESHOLD="49"
DOWN_THRESHOLD="23"
FREQ_STEP="1"
SAMPLING_DOWN_FACTOR="4"
IGNORE_NICE_LOAD="1"
UP_THRESHOLD_HOTPLUG="24"
i chose these because I have a theory on single core load vs dual core load in our multi core setup. Since the governor can be multicore aware... I was thinking about what that means.
dual core cpu 100% load = 1 core 100% and the other. dual core 50% load can mean 1 core is at 100% load and second core 0% or anything in between to 50% on both the cores which is still the same... 50% load of a dual core cpu. So lets just say a rouge app pegs at 100% load regardless of 2nd core status. If we set up threshold or hotplug above 50% it means the load to up the frequency or amount of cores activated must be over the load of having 1 core fully loaded to 100% to activate.. ie one at 100% and the other a little over or vise versa both cores loaded to 51% total atleast. So I want my up threshold for frequency at 50% area so if one core ever loads to 100% it adds a frequency step. At the same time I want my second core to activate not while idle but at any load under the upthreshold. So to still save power i want down threshold just under the load required to activate core 2. So 25% seems like a good number. it is equivalent to a 50%load on one core alone or a balance of 25% load over both cores. So down threshold 1 percent under that so unless load is above that it lowers frequency as needed.
so to make sure its easier for the thresholds to jump in at right time i dropped each measurement 1% so it wouldn't literally need 100% load single core to up the frequency. so thats why i went 49%, 24% and 23%. this way the cpu doesnt often stay at a full load unless needed but ramps up when things take a few to calculate and hopefully finish faster saving juice by using the closest matched speed needed. To save power the frequency step is minumum but by the way thresholds are set it will ramp it up very quickly to whats needed even under light loads. battery life hasnt been too bad set like this over the day.
any thoughts on this and if it will work how I am hoping? I'm not sure the direction i took this for my personal use but my goal is a Conservative on demand governor with good hotplugging and to be sure it doesnt use speeds which are overkill for the task nor underpowered either. lazy Ktoonservative
i played around with the values differently and didn't like having hot plug kick in after frequency increase. i figure as load increases from zero it will stay at lowest speed till 23% then at 24% core 2 will kick in and if that doesn't lower cpu load by time it reaches 49% load it will stay in dual core and go up one cpu step... if load doesnt drop it will continue to add speed and stay in dual core. but as soon as load drops below 49% speed will stay same and then core two will shut off at 24% and either finish the work load at that speed in single core, drop to lowest cpu speed in single core or as needed renenable core two to start process all over and therefore either finishing work load or ramping again while in dual core up in frequency till load once again drops into the threshold ranges.
Custodian and Freecharlesmanson i respect your info and would love to know how accurate this is. I am new to Android as of this year but not new to cpus so if you have advice or feedback for this discussion Id be very appreciative.
So my issue atm is with ES explorer scrolling. It's super choppy.... I'm exploring more values in hopes of finding a sweet spot. I can confirm that the choppiness doesn't exist on ICS but does on asop ROMs. So I'm trying to see what's up now.
Sent from my SPH-L710
mw86 said:
Freecharles manson I was tinkering more and decided to go in a different direction. can you tell me how this would act theoretically? it seems to do good at no lag and saves power still.
SAMPLING_RATE="13500"
UP_THRESHOLD="49"
DOWN_THRESHOLD="23"
FREQ_STEP="1"
SAMPLING_DOWN_FACTOR="4"
IGNORE_NICE_LOAD="1"
UP_THRESHOLD_HOTPLUG="24"
i chose these because I have a theory on single core load vs dual core load in our multi core setup. Since the governor can be multicore aware... I was thinking about what that means.
dual core cpu 100% load = 1 core 100% and the other. dual core 50% load can mean 1 core is at 100% load and second core 0% or anything in between to 50% on both the cores which is still the same... 50% load of a dual core cpu. So lets just say a rouge app pegs at 100% load regardless of 2nd core status. If we set up threshold or hotplug above 50% it means the load to up the frequency or amount of cores activated must be over the load of having 1 core fully loaded to 100% to activate.. ie one at 100% and the other a little over or vise versa both cores loaded to 51% total atleast. So I want my up threshold for frequency at 50% area so if one core ever loads to 100% it adds a frequency step. At the same time I want my second core to activate not while idle but at any load under the upthreshold. So to still save power i want down threshold just under the load required to activate core 2. So 25% seems like a good number. it is equivalent to a 50%load on one core alone or a balance of 25% load over both cores. So down threshold 1 percent under that so unless load is above that it lowers frequency as needed.
so to make sure its easier for the thresholds to jump in at right time i dropped each measurement 1% so it wouldn't literally need 100% load single core to up the frequency. so thats why i went 49%, 24% and 23%. this way the cpu doesnt often stay at a full load unless needed but ramps up when things take a few to calculate and hopefully finish faster saving juice by using the closest matched speed needed. To save power the frequency step is minumum but by the way thresholds are set it will ramp it up very quickly to whats needed even under light loads. battery life hasnt been too bad set like this over the day.
any thoughts on this and if it will work how I am hoping? I'm not sure the direction i took this for my personal use but my goal is a Conservative on demand governor with good hotplugging and to be sure it doesnt use speeds which are overkill for the task nor underpowered either. lazy Ktoonservative
i played around with the values differently and didn't like having hot plug kick in after frequency increase. i figure as load increases from zero it will stay at lowest speed till 23% then at 24% core 2 will kick in and if that doesn't lower cpu load by time it reaches 49% load it will stay in dual core and go up one cpu step... if load doesnt drop it will continue to add speed and stay in dual core. but as soon as load drops below 49% speed will stay same and then core two will shut off at 24% and either finish the work load at that speed in single core, drop to lowest cpu speed in single core or as needed renenable core two to start process all over and therefore either finishing work load or ramping again while in dual core up in frequency till load once again drops into the threshold ranges.
Custodian and Freecharlesmanson i respect your info and would love to know how accurate this is. I am new to Android as of this year but not new to cpus so if you have advice or feedback for this discussion Id be very appreciative.
Click to expand...
Click to collapse
Well I'll explain it this way despite the freq step being low the issue is it will aim to unload the first CPU at 49% which won't take much after that while it will rest eventually because it is still so low on hotplug the second core will be constantly on. The second core offers more performance but much much more battery then slightly increases clock rate the issue is balancing that because so often you either end up with the clock rate racing up wards or the core staying on. . Personally don't take a shot in the dark. Take settings you know work and work towards your idea incrementally recording the changes the CPU time states record I think though not allowing the CPU to shift a full state up will be to major detriment to performance. Per CPU freq state is 4.3% I have found over 80% on available cores causes stuttering . I gave the settings a spin looks like the second core is on a bit much so you'd want to balance that out. But test test test test and let me know
Sent from my SPH-L710 using Tapatalk 2
Custodian said:
So my issue atm is with ES explorer scrolling. It's super choppy.... I'm exploring more values in hopes of finding a sweet spot. I can confirm that the choppiness doesn't exist on ICS but does on asop ROMs. So I'm trying to see what's up now.
Sent from my SPH-L710
Click to expand...
Click to collapse
Running es right now no issues . Sense it exist only on aosp I'm gonna guess it wasn't governor related? Can you confirm the same results running a different governor?
Sent from my SPH-L710 using Tapatalk 2
freecharlesmanson said:
Running es right now no issues . Sense it exist only on aosp I'm gonna guess it wasn't governor related? Can you confirm the same results running a different governor?
Sent from my SPH-L710 using Tapatalk 2
Click to expand...
Click to collapse
It's not gov related. Tested with performance, ondemand, conservative
Sent from my SPH-L710
---------- Post added at 04:25 AM ---------- Previous post was at 04:20 AM ----------
Meh dunno wtf going on. It's only with ES rxplore.
vm.swappiness = 0
Testing. Just cause. Lol.
Sent from my SPH-L710
Yeah phones don't benefit from swappiness but I'd leave a slight amount just in case you ever approach oom if you have it turned off and you ever hit oom it will kill random possibly important apps or just plain lockup
Unless you go oom though it makes no difference
Swappiness is set to 15% on my desktop and its only using 200kb arbitrarily I might add
Sent from my SPH-L710 using Tapatalk 2
freecharlesmanson said:
Well I'll explain it this way despite the freq step being low the issue is it will aim to unload the first CPU at 49% which won't take much after that while it will rest eventually because it is still so low on hotplug the second core will be constantly on. The second core offers more performance but much much more battery then slightly increases clock rate the issue is balancing that because so often you either end up with the clock rate racing up wards or the core staying on. . Personally don't take a shot in the dark. Take settings you know work and work towards your idea incrementally recording the changes the CPU time states record I think though not allowing the CPU to shift a full state up will be to major detriment to performance. Per CPU freq state is 4.3% I have found over 80% on available cores causes stuttering . I gave the settings a spin looks like the second core is on a bit much so you'd want to balance that out. But test test test test and let me know
Sent from my SPH-L710 using Tapatalk 2
Click to expand...
Click to collapse
okay great explanation. It was a good read I'll go back to drawing board test test test and post back with more theory and results when i've come up with something that is working good for me. I'll keep in mind I need Hotplug to not kick in as often nor have cpu frequency shoot up to max so its a balancing act. I appreciate your info thank you. I'm reading as much as i can find on more governors and their adjustments to get ideas from them too like you said to base off an existing one and modify from there.
mw86 said:
okay great explanation. It was a good read I'll go back to drawing board test test test and post back with more theory and results when i've come up with something that is working good for me. I'll keep in mind I need Hotplug to not kick in as often nor have cpu frequency shoot up to max so its a balancing act. I appreciate your info thank you. I'm reading as much as i can find on more governors and their adjustments to get ideas from them too like you said to base off an existing one and modify from there.
Click to expand...
Click to collapse
What you are shooting for is the opposite end of the stick so. Getting the same results off a diametrically opposed idea is awesome keep it up
Sent from my SPH-L710 using Tapatalk 2
Related
Sent from my PC36100 using XDA App
http://forum.xda-developers.com/forumdisplay.php?f=652
I've had my phone overclocked 15% for months now...I pre-ordered and picked it up on June 4th (the day they were released to the public) and it's never been replaced. I rooted it right away using the engineering hboot method, and I immediately went to a rooted stock rom with a kernel that'd allow overclocking the very first time I saw one posted on this forum. I've never been able to run it at anything higher than 1152 mhz, but I've also never had any stability issues at 1152 mhz. I also allow it to go as low as 128 mhz all the time.
Since then I've played with various roms, and various kernels, but the first thing I've done when changing any rom or kernel, is always set the min and max CPU speeds again, and decide which governor to use. I've also always played with the undervolting strategies, from static to HAVS, and I've always been able to get away with the most agressive stuff posted without any stability issues.
Your mileage may vary, but thats been my experience with an overclocked Evo. I will admit I can barely notice the performance difference from 998 mhz to 1152 mhz, but I actually notice a battery life improvement...get it done faster so the CPU can go back to idling at a low frequency as soon as possible mentality I guess.
please watch what you say here. its not going to get you any help to curse and swear at other members. last warning
@MikeOD, which governor and what governor parameters have you found to work best for you?
I think the whole overclock boils down to what you do with your phone. If nothing overly cpu intensive, then there's likely to be little gain in the amount of saved time.
I actually have mine under clocked at 921 Mhz (came that way in the rom initially). UI was fluid enough and everything still seemed to work well/responsive. I get slightly better battery life too. Noticeable in the rate the batt % declines during active tasks (web browsing).
I have a og evo I want to know why when I overclock to 1.2ghz it freezes my phone why does it do that ?
Sent from my Nocturnal 4G using xda premium
Each Evo is different. Some of them can't handle that high overclock, or can't be undervolted very low. Each one is different, each has its limits.
I don't understand the big deal with overclocking. It burns your battery faster. I personally underclock, with little to no lag and is good enough for my casual gaming needs
Mine doesn't like a clock much at all. I can get about 1.1 before it starts locking up but even then it hangs a lot. I honestly don't see a difference from 1.0 to 1.2. Get a decent rom, good kernel and try out the v6 script an I almost guarantee you will like that better.
beaumontcali48 said:
I have a og evo I want to know why when I overclock to 1.2ghz it freezes my phone why does it do that ?
Sent from my Nocturnal 4G using xda premium
Click to expand...
Click to collapse
Well for us to be able to help you, you would need to provide us with more details on how you are trying to accomplish this.
I use no frils cpu but have also tried setcpu and viperMOD I know that's the best way to overclock but is very confusing. Have any step by step instructions to of to 1.2 I know having higher voltages helps as well.
Sent from my Nocturnal 4G using xda premium
Sent from my Nocturnal 4G using xda premium
Overclocking is overrated. If you need to overclock for every day usage, then something is wrong - at least in my opinion. Resource intensive gaming is different, but you shouldn't need to overclock for browsing, texting, casual games, etc.
Try out the V6 Supercharger script. I'm not currently using it, but have in the past and it seemed to make my phone more snappy. A lot of people swear by it and it's a great script, definitely worth a shot. There are other things you can do to speed up your phone without overclocking. I'd try other options first since overclocking will chew through your battery. Increase the dalvik vm heap size, there are plenty of free apps on the market to help with this task. Uninstall apps you don't use, I'll bet that you never use some of the apps on your phone. Back them up with Titanium Backup and you can restore them if you ever need them again.
In case you didn't already know, the Evo can't overclock past 1.2, I'm not 100% sure why - it has something to do with the processor.
Supersonic Evo 4G | MIUI | Tapatalk
I never oc over 1075 and only when plugged in if i play a game I need to oc.for I just activate my charging profile and plug up and play 1.2 ghz is a good chance of doing serious.damage as these older scorpion processors get very very hot at that clock speed so they lock up to try and protect themselves from heat damage or they shut down the phone 1075 is as high as you should need to go for any games the evo can handle on the subpar gpu
Sent from my Classic-EViLizED-ToMAToFiED-EVo4g-
beaumontcali48 said:
...also tried setcpu and viperMOD I know that's the best way to overclock.
..
Click to expand...
Click to collapse
I'm pretty sure viperMOD is more for undervolting than overclocking, which are not suppose to be combined together. I am running vipermod with max voltages - 50. Other nite was playing snes9x and was getting some lag with a game so I bumped max CPU up to 1.2. Phone went into a bootloop and had to superwipe and reflash everything. Don't know if its b/c vipermod + 1.2 CPU or just bumping up CPU. Didn't try it again.
Support TrevE!!
shift
Get a shift. Mine runs fine at 1.9. But usually run it art 254-1200 on demand.
{ParanoiA} said:
I'm pretty sure viperMOD is more for undervolting than overclocking, which are not suppose to be combined together. I am running vipermod with max voltages - 50. Other nite was playing snes9x and was getting some lag with a game so I bumped max CPU up to 1.2. Phone went into a bootloop and had to superwipe and reflash everything. Don't know if its b/c vipermod + 1.2 CPU or just bumping up CPU. Didn't try it again.
Support TrevE!!
Click to expand...
Click to collapse
You can overclock and undervolt together just fine. You just need to ensure that every frequency has a high enough voltage to run the processor at that step. My Evo is overclocked and undervolted just fine, although IIRC I can only push it up to 1.1 GHz . My tablet is 1ghz to 1.6ghz and is undervolted as well, though.
merge rls 2.0, iron monkey, Droid overclock because of the profiles options. I set up four profiles including one for temp. sometimes i'm underclocking and sometimes overclocking but only up to 1.19 to prevent freeze and boot loops. Only downside is right at open Droid overclock needs su permission but that is my choice since profile changes at open.
Very snappy afterwards.
Sent from my PC36100 using XDA Premium App
When I had the 4G, I was never able to go above 1118, or somewhere around that. It would have freezing issues.
On my evo shift, I was able to do 1.7 gHz (compared to stock 800 mhz) ok. 1.6 pretty reliabily, and I could run 1.5 all day long. Some guys could do 1.9. It just depends on the phone.
Actually overclocking and undervolting is counter-productive. What you should do, is read carhaulers and ropodopes guide over at vaelepak. Its give some good useful info about how to set up a good aosp rom. I'm underclocked, undervolted, and still getting 1400+ benchmarks. Check it out bro. You'll love the results.
Sent from my PC36100 using xda premium
tommy0823 said:
Actually overclocking and undervolting is counter-productive. What you should do, is read carhaulers and ropodopes guide over at vaelepak. Its give some good useful info about how to set up a good aosp rom. I'm underclocked, undervolted, and still getting 1400+ benchmarks. Check it out bro. You'll love the results.
Sent from my PC36100 using xda premium
Click to expand...
Click to collapse
Shoot the brutha a link
TrevE Supporter!
tommy0823 said:
Actually overclocking and undervolting is counter-productive. What you should do, is read carhaulers and ropodopes guide over at vaelepak. Its give some good useful info about how to set up a good aosp rom. I'm underclocked, undervolted, and still getting 1400+ benchmarks. Check it out bro. You'll love the results.
Sent from my PC36100 using xda premium
Click to expand...
Click to collapse
What? Overclocking and undervolting are two completely different things, and they aren't mutually exclusive. Unless you can provide a good reason as to why it's counter productive to do both, I don't buy that at all. Just checked my phone, my overclock requires an extra 25 mV for all three steps I've overclocked. 25mV isnt much, and it certainly isn't going to kill my battery that much faster.
Besides, the only time the CPU is going to be entering these high power modes is when it needs to do work, and it's better to do work as fast as possible to go back to sleep. Would you rather wake up, do a mundane task for 5 minutes, then go back to sleep or wake up, do a task at 2x the speed while only consuming 30-50% more energy, then going back to sleep after only 2.5 minutes?
HUGI is real.
Sent from my Transformer TF101
Yea shot me the link too bro.
Sent from my PC36100 using xda premium
First let me say I don't use viper mod or any voltage controlling mod.
On sense 3.0 roms such as mikg I over clock to 1152 and set the minimum to 384 and its smooth as butter. No problem and battery lasts all day.
On aosp however such as decks (I'm on it now) I underclock to 499 and leave the min at 254. Smooth as always and battery lasts forever.
Anything past 1152 is going to cause problems (at least in my experience) also the rom/kernel can effect how much you can overclock.
Sent from my PC36100 using xda premium
Gary13579 said:
What? Overclocking and undervolting are two completely different things, and they aren't mutually exclusive. Unless you can provide a good reason as to why it's counter productive to do both, I don't buy that at all. Just checked my phone, my overclock requires an extra 25 mV for all three steps I've overclocked. 25mV isnt much, and it certainly isn't going to kill my battery that much faster.
Besides, the only time the CPU is going to be entering these high power modes is when it needs to do work, and it's better to do work as fast as possible to go back to sleep. Would you rather wake up, do a mundane task for 5 minutes, then go back to sleep or wake up, do a task at 2x the speed while only consuming 30-50% more energy, then going back to sleep after only 2.5 minutes?
HUGI is real.
Sent from my Transformer TF101
Click to expand...
Click to collapse
Its counter productive because it is giving less to something that needs more. (Don't take this post as me trying to be a ****. Just voicing how someone explained it to me a while ago)
Think of this as cars.
Lets say you have a nice fancy v8 mustang. Stock, everything is well, balanced.
If you start adding parts and get it pushing out 1000 horsepower (overclock) your most likely gonna need more feul (voltage) or at least stock amount flowing into the engine just to keep it running.
Now lets say you got that same 1000 horsepower gas destroying mustang and you start to lower the amount of gas flowing into the engine (undervolt (done in vipermod)) cylinders (CPU) wont get enough gas, it wont work, and your stuck going no where.
So if that made sense (did to me) then you can see why they are counter productive. Unless your using vipermod to overvolt (which idk if you can since I don't use it) then you can disregard this whole post
Sent from my PC36100 using xda premium
Your car analogy is completely irrelevant. You can look up the exact voltages that the CPU runs on at every frequency, *even when overclocking*. Overclocking an Evo 1ghz to 1.2ghz takes maybe a 5% bump in voltage, and that 5% extra power is only going to be used *when the CPU is running at max speed* (which is only when there is a lot of work to do), and even then, it's *still better to let the CPU run at max speed with a tiny bit more power consumption than to cap the CPU at a slower speed and make it work for even longer*. Intel calls it HUGI, Hurry Up and Get Idle.
I know what I'm talking about, and I wish people would stop trying to argue with me based off of second hand speculation. I do this for a living, after all. There is absolutely nothing wrong with overclocking and undervolting, and it's the best way to get the most battery life *and* performance out of your phone, period.
Sent from my Transformer TF101
Gary13579 said:
Your car analogy is completely irrelevant. You can look up the exact voltages that the CPU runs on at every frequency, *even when overclocking*. Overclocking an Evo 1ghz to 1.2ghz takes maybe a 5% bump in voltage, and that 5% extra power is only going to be used *when the CPU is running at max speed* (which is only when there is a lot of work to do), and even then, it's *still better to let the CPU run at max speed with a tiny bit more power consumption than to cap the CPU at a slower speed and make it work for even longer*. Intel calls it HUGI, Hurry Up and Get Idle.
I know what I'm talking about, and I wish people would stop trying to argue with me based off of second hand speculation. I do this for a living, after all. There is absolutely nothing wrong with overclocking and undervolting, and it's the best way to get the most battery life *and* performance out of your phone, period.
Sent from my Transformer TF101
Click to expand...
Click to collapse
Hmm, *interesting*. I believe the best answer to the OP was covered rather well earlier. It's all about your rom/kernel/hardware combination. With all the variables to consider as relevant, your best bet is to experiment and find what works for your device. Don't check set on boot untill you are confident the set-up is stable. Higher is not always better with overclocking. My device runs blazingly well underclocked @768max. Gets insanely great battery @499max. However my quadrants are better @ 1036 than at 1190.
Great thing about android is you can experiment and learn through trial and error.
Sent from my PC36100 using xda premium
This doesn't represent real-world use. This is an extreme example of how long you can make the battery last by severely throttling the CPU!
I posted another thread about the method used to apply this mod (you can find it here) but I made this thread to concentrate purely on the side effect of it, which is insanely good battery life. Firstly, I'd just like to make this point clear: I would not recommend doing this mod. It makes your device get pretty screwy and renders it fairly unusable. It needs further development before it can be useful.
Yes, this mod gives you absolutely incredible battery life but it only does so by severely limiting the CPU speed and limiting the CPU to a single core (It might even just run off the companion core and nothing else. I've had conflicting results) which makes the phone insanely laggy. I believe, however, that this throttling could be made less aggressive and then toggled on and off at will. From my tests it seems this also throttles the Companion Core, so you could even use this mod as-is to get better screen-off battery life (which is already pretty amazing). This isn't definite though and needs more tests
Anyway, less chit-chat, here are my results:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
That's right, 12 hours and 35 minutes screen-on time!
It would probably last about 4 or 5 days if the screen was off!
ROM: Android Revolution HD
Kernel: stock ARHD kernel
Screen on lowest brightness
No other modifications (apart from the throttling mod)
"It makes your device get pretty screwy and renders it fairly unusable."
Ok then, i'll just charge when the battery gets low then and use it as a great phone
SartoriXX said:
"It makes your device get pretty screwy and renders it fairly unusable."
Ok then, i'll just charge when the battery gets low then and use it as a great phone
Click to expand...
Click to collapse
If I power off my device, then I find that they battery will last for several days, maybe more
Swyped from my DesireS
Might aswell do that!
I'll repeat what I bolded in the first post:
From my tests it seems this also throttles the Companion Core, so you could even use this mod as-is to get better screen-off battery life
Is this really not something people are interested in
This could potentially double the battery life if we could modify how aggressive the throttling is. We can already toggle it on/off on the fly.
Meltus said:
I'll repeat what I bolded in the first post:
From my tests it seems this also throttles the Companion Core, so you could even use this mod as-is to get better screen-off battery life
Is this really not something people are interested in
This could potentially double the battery life if we could modify how aggressive the throttling is. We can already toggle it on/off on the fly.
Click to expand...
Click to collapse
I think it sounds awesome and happy to see people like you try to developing the power consumption!
Sent from my HTC One X using Tapatalk 2
sure beats my battery life with only 30 minutes screen on time
ben_pyett said:
If I power off my device, then I find that they battery will last for several days, maybe more
Swyped from my DesireS
Click to expand...
Click to collapse
ben_pyett said:
If I power off my device, then I find that they battery will last for several days, maybe more
Swyped from my DesireS
Click to expand...
Click to collapse
Comments like that are a complete waste, if they are on to something you should be more encouraging.
Done a bit more testing and it turns out that it does indeed throttle the LPCore, but not by much.
I've hit another odd contradiction though; I'm polling "sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq" to get the current frequency but even when the screen is off that file still reports that it's active. Does this mean that at least one core is always active alongside the LPCore or does the CPU0 display the LPCore's frequency when the rest are disabled? If CPU0 does indeed show the LPCore frequency when the screen is off then doesn't that mean that Android CAN see the companion core?
In any case, the CPU0 file reports frequencies between 51Mhz and 475Mhz (51mhz being the frequency it hits about 80% of the time) and with the throttling enabled it seems to be locked to between 51Mhz and 102Mhz (with it hitting 51Mhz about the same percentage).
So it does seem to limit the LPCore (or whatever core is running) but it also seems that it's pretty much as optimised as it's going to get. Throttling does seem like it would increase screen-off time, but by how much I have no idea.
I'll test it overnight and see what kind of battery life I get
I wholeheartedly endorse your explorations. Find a way to salvage this phone; battery life currently makes the international version borderline unusable.
lamenramen said:
I wholeheartedly endorse your explorations. Find a way to salvage this phone; battery life currently makes the international version borderline unusable.
Click to expand...
Click to collapse
Huh? Borderline unusable? If you're serious then exchange your faulty phone. I'm getting 16 odd hours with 4-5 hrs screen time.
I agree about the explorations through mate.
Sent from my HTC One X using XDA
Meltus said:
Done a bit more testing and it turns out that it does indeed throttle the LPCore, but not by much.
I've hit another odd contradiction though; I'm polling "sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq" to get the current frequency but even when the screen is off that file still reports that it's active. Does this mean that at least one core is always active alongside the LPCore or does the CPU0 display the LPCore's frequency when the rest are disabled? If CPU0 does indeed show the LPCore frequency when the screen is off then doesn't that mean that Android CAN see the companion core?
In any case, the CPU0 file reports frequencies between 51Mhz and 475Mhz (51mhz being the frequency it hits about 80% of the time) and with the throttling enabled it seems to be locked to between 51Mhz and 102Mhz (with it hitting 51Mhz about the same percentage).
So it does seem to limit the LPCore (or whatever core is running) but it also seems that it's pretty much as optimised as it's going to get. Throttling does seem like it would increase screen-off time, but by how much I have no idea.
I'll test it overnight and see what kind of battery life I get
Click to expand...
Click to collapse
Android sees all cores as equal meaning it would assumes the lpcore is a ~1.5 core, so to get around this nvidia have made it transparent to android and the kerenel / low level drivers switch between the main and the lpcore but both show to android as the same CPU or as you've found shown as core 0. If it didn't do this when the main cores went off it wouldn't see a CPU at all.
Edit: as I can't post on your other topic from the app
I believe that file links to the throttle_table in the same folder, just did some tests
2 - limited too 1 core (i assume lp maybe a main core) 102 MHz
3 - 2 cores and 340 MHz
Then phone crashed so I went back to sleep lol I will do some more testing later.
Sent from my HTC One X using premium
Does throttling the compnion core means you're just using 1 core in a quad core device?
Maybe its wiser to not get a quad core alltheway.
punyategar said:
Does throttling the compnion core means you're just using 1 core in a quad core device?
Maybe its wiser to not get a quad core alltheway.
Click to expand...
Click to collapse
The hox has 5 cores, 4 main cores and 1 super low power core.
What this does is turn off the main cores and run on the super low power core which is great for battery life but it only goes to 500 MHz and in respect to CPUs is slower at processing stuff then almost all CPUs price you pay for power saving.
Sent from my HTC One X using xda premium
Applaud your investigations, so many Haters on this forum!
This phone has masses of potential for some awesome custom Roms (and even a decent official Rom if HTC ever sort themselves out!). Battery life pretty much whole day for me but improvements always welcome.
xchasa said:
Huh? Borderline unusable? If you're serious then exchange your faulty phone. I'm getting 16 odd hours with 4-5 hrs screen time.
I agree about the explorations through mate.
Sent from my HTC One X using XDA
Click to expand...
Click to collapse
He is probably talking screen-on time. 4-5 Hours screentime is great, unfortunately you do not fall under the average hours of screen-on time. The average time would be anywhere between 2 and a half to 3 and a half hours.
Which in my opinion is nothing special, admittedly, it does get me through a day but hey! I wouldn't mind having more screen-on time. If 4-5 hours screen on time was the average than you wouldn't see many if anyone complaining at all.
Good day!
treebill said:
Android sees all cores as equal meaning it would assumes the lpcore is a ~1.5 core, so to get around this nvidia have made it transparent to android and the kerenel / low level drivers switch between the main and the lpcore but both show to android as the same CPU or as you've found shown as core 0. If it didn't do this when the main cores went off it wouldn't see a CPU at all.
Edit: as I can't post on your other topic from the app
I believe that file links to the throttle_table in the same folder, just did some tests
2 - limited too 1 core (i assume lp maybe a main core) 102 MHz
3 - 2 cores and 340 MHz
Then phone crashed so I went back to sleep lol I will do some more testing later.
Sent from my HTC One X using premium
Click to expand...
Click to collapse
Ah, that makes more sense
So, were you able to get the 'throttle' file to stick to anything but '1'?
I noticed the throttle_table and tried to use a few of them but they all just defaulted to 1.
It's a shame the 'throttle_table' file isn't editable too, that would make modifying it so much easier!
My first test failed miserably I'm afraid, I forgot to turn off an alarm and it rang out for about 3 hours and then ran out of battery! I'll remember to turn off the alarm next time
Bloody good effort. Despite the idiotic comments from those who clearly haven't grasped the idea behind this, it's impressive homework.
Research like this can only help improve custom-ROM's, which is kinda the point of XDA Dev's, no?
I think some people should focus on the comments section of sites like Engadget, where their funny pictures will be much better suited.
ok guys I downloaded cpu spy and after using the phone for 10min my phone never hit above 1.5 ghz ... I thought this phone was at 1.9 ,I did a lot of testing and still couldn't get the phone past 1.5 , no wonder things are not as smooth as they should be. I also upgraded to the new firmware it is a bit faster but I see the phone cpu is always around 1.5-1.1 ghz not good to run as smooth , also if cpu the low I'm sure gpu as low why all the animations run slow.
Edit : was playing angry birds star wars check back cpu ran at 1.1ghz -950mhz ...
Edit2: so i ran a anTuTu test and finally it hit at 1.9ghz and it drop down to 1.6ghz and 1.7 ghz for a few seconds. I really feel if this phone ran past the 1.5 it be a lottttt smoother i mean a lot.. just my 2cents trying to help out.
Sent from my SGH-M919 using xda premium
CPU factors
Listed CPU speeds are a maximum, a lot of factors play into that actually CPU speed you will see when running various apps.
Also, the CPU monitor reporting may not be 100% accurate, again due to several factors.
Also for reasons spread around this forum (all the battery threads popping up after the 1st week with the devices in hand)
The default cpu speed governors are likely set to preserve battery and only kick into high gear when the need REALLY presents itself.
Ie to samsung a little stuttering is fine if it means the battery lasts an extra hour in most cases
Most custom roms have different cpu governors in place - designed in part to respond more quickly to system load and increase performance.
Which kernel is best for performance?(for Whyred)
1. Black box
2.no name
And many out there???
Suggestions please.
Thanks in advance.
Deep.cdy said:
Which kernel is best for performance?(for Whyred)
1. Black box
2.no name
And many out there???
Suggestions please.
Thanks in advance.
Click to expand...
Click to collapse
You should try them and find out the most suitable for you, use them for 1-2 days, you'll see the difference.... personally, I'm using NoName kernel with RR
NoName for Lineage based.
Deep.cdy said:
Which kernel is best for performance?(for Whyred)
1. Black box
2.no name
And many out there???
Suggestions please.
Thanks in advance.
Click to expand...
Click to collapse
i think currently is noname.
we hope a bunch of recognised developers in the near future as franco as many others.
Kirks, for battery...
Dude unlocked the lower cpu freqs...
m666p said:
Kirks, for battery...
Dude unlocked the lower cpu freqs...
Click to expand...
Click to collapse
It operates on lower Volts using this unlocked freqs?
peter-k said:
It operates on lower Volts using this unlocked freqs?
Click to expand...
Click to collapse
God knows, but what I do know is that it should produce less heat at the very least and it performs pretty gud on powersave governor. The gpu on the other hand is garbage at min freq (160mhz), even the launcher lags....
peter-k said:
NoName for Lineage based.
Click to expand...
Click to collapse
But after flashing no name 1.3 the WiFi doesn't work for me on rr 12th June
Deep.cdy said:
But after flashing no name 1.3 the WiFi doesn't work for me on rr 12th June
Click to expand...
Click to collapse
Mine was fine but now I'm on Aosip.
i think for now the best is to use a stock kernel, be careful with the charging limits.
peter-k said:
It operates on lower Volts using this unlocked freqs?
Click to expand...
Click to collapse
m666p said:
God knows, but what I do know is that it should produce less heat at the very least and it performs pretty gud on powersave governor. The gpu on the other hand is garbage at min freq (160mhz), even the launcher lags....
Click to expand...
Click to collapse
Of course it operates at lower voltage as it's a lower frequency and requires less power draw. Lower voltages should mean lower heat, however you don't magically get that lower freqs to operate, you need to tweak the interactive governor to make use of them all efficiently. So far I'm on Kirks kernel and AOSiP and it's a quite good combo.
The lag is not caused by low GPU freqs, it's because of low CPU freqs for that particular load, so governor tweaking is needed.
Cirra92 said:
Of course it operates at lower voltage as it's a lower frequency and requires less power draw. Lower voltages should mean lower heat, however you don't magically get that lower freqs to operate, you need to tweak the interactive governor to make use of them all efficiently. So far I'm on Kirks kernel and AOSiP and it's a quite good combo.
The lag is not caused by low GPU freqs, it's because of low CPU freqs for that particular load, so governor tweaking is needed.
Click to expand...
Click to collapse
Lol, I tested what you said out. Because you said it with such confidence...
I changed the cpu governor to performance and set the gpu to 160mhz max...
That made the experience a bit better but it would still lag a lot in recents and app launcher scrolling...
I've attached a screen shot to prove it too...
Another thing, just because the clock is lower does not mean that the voltage is lower as well, many devices that ive owned over the years have had the same voltage's for lower clocks( moto g2, Sony xperia z1)
And lastly, you should "magically" get those lower frequencies(if they are truly unlocked) since governors will always operate within the min/max frequencies that are set by the user or by default(unless it reverts parameters back to stock, like our device does on interactive)...
Forgot screenshot....
m666p said:
Lol, I tested what you said out. Because you said it with such confidence...
I changed the cpu governor to performance and set the gpu to 160mhz max...
That made the experience a bit better but it would still lag a lot in recents and app launcher scrolling...
I've attached a screen shot to prove it too...
Another thing, just because the clock is lower does not mean that the voltage is lower as well, many devices that ive owned over the years have had the same voltage's for lower clocks( moto g2, Sony xperia z1)
And lastly, you should "magically" get those lower frequencies(if they are truly unlocked) since governors will always operate within the min/max frequencies that are set by the user or by default(unless it reverts parameters back to stock, like our device does on interactive)...
Click to expand...
Click to collapse
First of all, we are talking here about difference in voltage between stock minimum freq for big cluster, which is 1.1ghz and actual possible minimum which is 300mhz, and there is a difference in voltage, that was the point. The devices I owned, S5 and Z3compact had more CPU steps, therefore the difference between some of the steps was really small or there wasn't any, but the CPU scaling made a jump to the freq with bigger difference (higher or lower, that was the stock behavior so some freqs weren't used). Here it might use all of the freq steps as there are less of them and the difference in voltage is significant enough, which might be the case, I said that because of my experience with previous devices. But you've missed the point anyway, I have said that even if unlocked, some freqs won't be used just because they are there if the governor parameters aren't set properly (or will be barely used). That was my point, I said that as a general note, so users won't jump the gun and blame devs for whatever.
And another one, regarding your test and lag with GPU, now I'm confused why would you set your max at 160mhz? I know it was for testing purposes in this case, but you did complain about it in original post and I said it won't lag because the max would still be set to 430mhz in which case the GPU freq scaling would do the job which it does very good so far. It would lag of course if you set max GPU freq to 160, but that's not what would you do for daily usage, right? Sorry if I misunderstood something.
Cirra92 said:
First of all, we are talking here about difference in voltage between stock minimum freq for big cluster, which is 1.1ghz and actual possible minimum which is 300mhz, and there is a difference in voltage, that was the point. The devices I owned, S5 and Z3compact had more CPU steps, therefore the difference between some of the steps was really small or there wasn't any, but the CPU scaling made a jump to the freq with bigger difference (higher or lower, that was the stock behavior so some freqs weren't used). Here it might use all of the freq steps as there are less of them and the difference in voltage is significant enough, which might be the case, I said that because of my experience with previous devices. But you've missed the point anyway, I have said that even if unlocked, some freqs won't be used just because they are there if the governor parameters aren't set properly (or will be barely used). That was my point, I said that as a general note, so users won't jump the gun and blame devs for whatever.
And another one, regarding your test and lag with GPU, now I'm confused why would you set your max at 160mhz? I know it was for testing purposes in this case, but you did complain about it in original post and I said it won't lag because the max would still be set to 430mhz in which case the GPU freq scaling would do the job which it does very good so far. It would lag of course if you set max GPU freq to 160, but that's not what would you do for daily usage, right? Sorry if I misunderstood something.
Click to expand...
Click to collapse
I kinda get what you mean, but the min freqs should kick in by default. They don't though on kirks, you need to change the governor to something like alucard or zzmove once before it actually starts clocking down to 300mhz...
On a side I would just disable the big. Cluster if I could, I don't really need that much cpu performance...
I was trying to find the min gpu freq that would be usable and I was disappointed, cuz my Sony z1 had a smooth ui experience with the gpu clocked at 200mhz max and that thing had a sd800...
Btw, I do all this to get better battery life...
I found out something else, I can't use power save governor any more because it can't handle audio processing(ainur, v4a) when the screen is off...
Just like my old z1, Lol...
Makes me think that the performance is really identical to the snapdragon 800...
I wonder how pissed I would be if a I got the redmi 5 plus, the 625 would have been even worse...
m666p said:
I kinda get what you mean, but the min freqs should kick in by default. They don't though on kirks, you need to change the governor to something like alucard or zzmove once before it actually starts clocking down to 300mhz...
On a side I would just disable the big. Cluster if I could, I don't really need that much cpu performance...
I was trying to find the min gpu freq that would be usable and I was disappointed, cuz my Sony z1 had a smooth ui experience with the gpu clocked at 200mhz max and that thing had a sd800...
Btw, I do all this to get better battery life...
Click to expand...
Click to collapse
m666p said:
I found out something else, I can't use power save governor any more because it can't handle audio processing(ainur, v4a) when the screen is off...
Just like my old z1, Lol...
Makes me think that the performance is really identical to the snapdragon 800...
I wonder how pissed I would be if a I got the redmi 5 plus, the 625 would have been even worse...
Click to expand...
Click to collapse
Yeah I agree, it should, but how much it stays on minimum freq is dependent on couple of governor parameters (talking about interactive). On mine though it does stay on 300mhz when idling, on stock Kirks settings. Big cluster can be disabled through new hotplug solution, like Intelliplug, which I used on my old devices, and it performed great, 1 core was active when screen was off, screen on and light usage required only 2 cores, while all 4 were active under heavy load. Here however there is only Qualcomm's hotplug solution, until that changes, no luck. Regarding GPU freq, I don't think any device would work smoothly under 200mhz, you can set 266mhz here, it will be smooth, I've tested today, on my old SD801 it performed at 233mhz IIRC.
I've seen that, V4A requires higher freq than 300mhz, or even 422mhz which SD801 had, it's more about the freq rather than the chipset, as I've read on multiple threads that even the devices with SD820 were struggling a lot when processing audio at 300mhz when the screen was off. Don't worry, it's a general issue. There is also the optimization of the rom and audio mods as well, background tasks, kernel, it all goes into the mix.
This is actually a very good chipset, it's technically SD660 just with lower clocks on both CPU and GPU.
EDIT: I forgot, this is my usage on AOSiP + Kirks, stock interactive tunables, min freq 300mhz (big/little), GPU initial/min freq 160mhz, max 430mhz. Using microG instead off GApps, I have used FB, Instagram, Messenger app for 1,5h each, Viber was couple of hours, Chrome some 30mins, Panini sticker album 30+ minutes, 30 minutes of 2G calls. Network mode was LTE, though I was on wifi on whole charge.
Started measuring from 92%.
Thanks bro, that explains a lot...