Related
The SetCPU website explains some governors: http://www.pokedev.com/setcpu/#7
However it seems that some extra governors, not covered by the SetCPU site, have been added to some kernels; which I think should be documented so users know which one to pick.
I will add responses as to what each governor does to this post. If there are any governors not explained that you've come across, please post and we'll see if somebody can explain it.
Unexplained governors (somebody please tell me what they do)
smartass (Best explanation i've found paraphrases to: based on interactive, but better.)
----
ondemand
Available in most kernels, and the default governor in most kernels. When the CPU load reaches a certain point (see "up threshold" in Advanced Settings), ondemand will rapidly scale the CPU up to meet demand, then gradually scale the CPU down when it isn't needed. - SetCPU website
conservative
Available in some kernels. It is similar to the ondemand governor, but will scale the CPU up more gradually to better fit demand. Conservative provides a less responsive experience than ondemand, but can save battery. - SetCPU website
performance
Available in most kernels. It will keep the CPU running at the "max" set value at all times. This is a bit more efficient than simply setting "max" and "min" to the same value and using ondemand because the system will not waste resources scanning for the CPU load. This governor is recommended for stable benchmarking. - SetCPU website
powersave
Available in some kernels. It will keep the CPU running at the "min" set value at all times. - SetCPU website
userspace
A method for controlling the CPU speed that isn't currently used by SetCPU. For best results, do not use the userspace governor. - SetCPU website
Interactive
The 'interactive' governor has a different approach. Instead of sampling the cpu
at a specified rate, the governor will scale the cpu frequency up when coming
out of idle. When the cpu comes out of idle, a timer is configured to fire
within 1-2 ticks. If the cpu is 100% busy from exiting idle to when the timer
fires then we assume the cpu is underpowered and ramp to MAX speed.
If the cpu was not 100% busy, then the governor evaluates the cpu load over the
last 'min_sample_rate' (default 50000 uS) to determine the cpu speed to ramp down
to. - [Patches] For developers, interactive governor patch for leo kernel
Thanks,
RJackson
As explained by MDJ:
SMARTASS GOVERNOR - is based on the concept of the interactive governor.
I have always agreed that in theory the way interactive works - by taking over the idle loop - is very attractive. I have never managed to tweak it so it would behave decently in real life. Smartass is a complete rewrite of the code plus more. I think its a success. Performance is on par with the "old" minmax and I think smartass is a bit more responsive. Battery life is hard to quantify precisely but it does spend much more time at the lower frequencies.
Smartass will also cap the max frequency when sleeping to 245Mhz (or if your min frequency is higher than 245 - why?! - it will cap it to your min frequency). Lets take for example the 998/245 kernel, it will sleep at 245. No need for sleep profiles any more!
Click to expand...
Click to collapse
FerretAD said:
As explained by MDJ:
Click to expand...
Click to collapse
I saw that one but didn't use it because it didn't really explain what it does.
RJackson said:
smartass (Best explanation i've found paraphrases to: based on interactive, but better.)
Click to expand...
Click to collapse
Which Kernel support SmartAss? I use WildMonks with SetCPU 2.1.0 and I don't see the "smartass" governor in my list.
SalsaForte said:
Which Kernel support SmartAss? I use WildMonks with SetCPU 2.1.0 and I don't see the "smartass" governor in my list.
Click to expand...
Click to collapse
i have the "savage" kernal with smartass
LeeDroid's Kernals and ROMs support smartass as well
Leong428 said:
LeeDroid's Kernals and ROMs support smartass as well
Click to expand...
Click to collapse
Add Tiamat to the list.
add chad's incredikernel
SalsaForte said:
Which Kernel support SmartAss? I use WildMonks with SetCPU 2.1.0 and I don't see the "smartass" governor in my list.
Click to expand...
Click to collapse
On my evo shift the x99 kernel supports smartass for stockish froyo roms and cm7 roms
you have to have a kernel to add smartass to your list
RJackson said:
The SetCPU website explains some governors: http://www.pokedev.com/setcpu/#7
However it seems that some extra governors, not covered by the SetCPU site, have been added to some kernels; which I think should be documented so users know which one to pick.
I will add responses as to what each governor does to this post. If there are any governors not explained that you've come across, please post and we'll see if somebody can explain it.
Unexplained governors (somebody please tell me what they do)
smartass (Best explanation i've found paraphrases to: based on interactive, but better.)
----
ondemand
Available in most kernels, and the default governor in most kernels. When the CPU load reaches a certain point (see "up threshold" in Advanced Settings), ondemand will rapidly scale the CPU up to meet demand, then gradually scale the CPU down when it isn't needed. - SetCPU website
conservative
Available in some kernels. It is similar to the ondemand governor, but will scale the CPU up more gradually to better fit demand. Conservative provides a less responsive experience than ondemand, but can save battery. - SetCPU website
performance
Available in most kernels. It will keep the CPU running at the "max" set value at all times. This is a bit more efficient than simply setting "max" and "min" to the same value and using ondemand because the system will not waste resources scanning for the CPU load. This governor is recommended for stable benchmarking. - SetCPU website
powersave
Available in some kernels. It will keep the CPU running at the "min" set value at all times. - SetCPU website
userspace
A method for controlling the CPU speed that isn't currently used by SetCPU. For best results, do not use the userspace governor. - SetCPU website
Interactive
The 'interactive' governor has a different approach. Instead of sampling the cpu
at a specified rate, the governor will scale the cpu frequency up when coming
out of idle. When the cpu comes out of idle, a timer is configured to fire
within 1-2 ticks. If the cpu is 100% busy from exiting idle to when the timer
fires then we assume the cpu is underpowered and ramp to MAX speed.
If the cpu was not 100% busy, then the governor evaluates the cpu load over the
last 'min_sample_rate' (default 50000 uS) to determine the cpu speed to ramp down
to. - [Patches] For developers, interactive governor patch for leo kernel
Thanks,
RJackson
Click to expand...
Click to collapse
Thanks for the kind descriptions...
I've translated them to Korean for my fellow countrymen!
>,<
http://caleb1783.tistory.com/157
Thanks for this. Smartass has been a mystery to me.
When I installed SETCPU I selected auto-detect, now on my device (not a HD2, but this seemed like a good place to ask as it is directly related) now I have no way to select the governor at all (box is blank), how to I change the detection from automatic to a device type "Tegra 2" in my case, I see no option to allow me to do this?
Thanks,
ERIC
Powersave
I read on this forum that Power save SetCPU governor saves the best battery. I Hope this is true?
I am trying to get my hands on powersave
I can't find powersave in the "market" though.. What's up with that? Can anyone tell me which one it is? Maybe give the name of the developer so i can find it back easier?
thnks in advance
Im using galaxy s 2 with lite'ning rom 6.1 ninphetamine 2.0.5
ssienn said:
I read on this forum that Power save SetCPU governor saves the best battery. I Hope this is true?
I am trying to get my hands on powersave
I can't find powersave in the "market" though.. What's up with that? Can anyone tell me which one it is? Maybe give the name of the developer so i can find it back easier?
thnks in advance
Im using galaxy s 2 with lite'ning rom 6.1 ninphetamine 2.0.5
Click to expand...
Click to collapse
Yeah, that's not how it works. Governors are a part of the kernel. If you want features in your kernel that you don't have, you must flash a new kernel.
also, perhaps you should reread what 'powersave' is. It will keep your phone at the lowest cpu speed constantly. This will save battery, sure, but it will also completely destroy your phone's performance. Might as well go back to your old Moto Razr.
thx, actually, i set those gov randomly before i read this post
Ondemand vs. Smartass vs. Performance gov. - Test
The idea was, that maybe the display eats so much power,
that if it is on, the CPU setting does not make a big different.
Bottom line: it does.
Phone: HTC Sensation, Leedroid Sensational 3.1 (kernel 3.2)
Conditions: Simulating light cpu use like writing email:
Brightness 50% (no timeout), MP3 playing (Volume=1, headphone), a new document on the screen,
Wifi and 3G network off (these have fluctuation, so it is easier to compare if these are off)
Ondemand 192/1188 governor: 5 h 10 min
Performance governor: 4 h 20 min
SmartassV2 192/1188 governor: 5 h 2 min
Off course if the display is off, it is easy to choose, because there is no need for performance.
I set up Conservative 192/810, but any similar can work.
I choose Ondemand, and using "Tasker" to switch to Performance, if certain applications are active,
like Doodle Jump - which run a little smoother with the Performance, for as an example.
thanks for the info...
nice, thanks
Thanks, cleared my doubts.
completely noob question, how do u choose between governors? set cpu from the market its a paid app, and the one i downloades from the official post wont work
i have a galaxy s2 with Touch X-POWER+ 2.1 [XXKI3] rom
Spreadsheets for CPU Governors and I/O Schedulers
GOVERNOR RESULTS
I/O SCHEDULERS
Summary of the Results
This is a summary of the six most commonly used governors, listed in order of performance.
Best Performing
#1 - Performance
--- : Use Noop or Deadline
--- : Uses a lot more battery
#2 - SmartassV2
--- : Use Noop or SIO
--- : Good choice if you use a lot of CPU intensive apps
#3 - LulzactiveV2
--- : Use Deadline or Noop
--- : Good choice if you use a lot of CPU intensive apps
--- : Uses a little more battery than SmartassV2
#4 - Lazy
--- : Use Deadline or CFQ
--- : Do not enable SOMF (Screen Off Max Frequency uses more battery)
--- : Good choice if you do not use CPU intensive apps
#5 - Ondemand
--- : Use Noop or Deadline
--- : Good choice if you do not use CPU intensive apps
--- : Saves slightly more battery than Lazy
#6 - Conservative
--- : Use CFQ or Noop
--- : Generally one of the worst governors for saving battery, see next post for why.
Check my summary in the Battery Drain thread for more info about how to save battery.
Where did the other benchmarks go?
All ICS ROM Benchmarks: this thread
Kernel Features and Benchmarks: this thread
Battery drain: this thread
Power Saving Governors: this thread
Thanks to all the developers.
Conservative Not Saving Power?
chickelnoodensoup said:
Is the summary in the first post correct with regard to conservative? Is it really "Generally one of the worst governors for saving battery"? Interesting.
Click to expand...
Click to collapse
I know it seems a little odd. It's because a lot of developers seem to have tweaked conservative to make it feel snappier, but it has resulted in more CPU time at the top frequency.
If you take a look at my new spreadsheet: http://goo.gl/ThVzX
...you can see conservative always uses more power when the screen is on (at least for the four kernels I tested).
There is just one exception where conservative saves more power than other governors, and that is when the screen is off, music is on, deep idle is on, and this only applies specifically to Air Kernel. PLEASE NOTE: Steve Garon does not include deep idle, but is working on it, neither does Eugene, but I've asked him to consider it. For these two kernels, if you are listening to music with the screen off, currently, the best power saving governor is Ondemand.
For people who don't use their phone while off, and don't use many intensive apps, Ondemand is the best power saving choice.
For people who use a lot of CPU intensive apps, SmartassV2 will be the better choice. It will scale more agressively, help prevent lags, and save energy being wasted through these delays.
If you listen to music with the screen off, and your kernel supplies deep idle, the best power saving governor is SmartassV2 (except for the case of Air Kernel, see above). This is because it keeps the CPU close to the most efficient frequency: 400MHz.
I hope that covers anything. If I've made any glaring errors in my reasoning, please let me know.
Choosing a Governor
Variety is the spice of life, so try them all! While Mathkid95 swears by Ondemand, developers Eugene373, morfic, and steve.garon all vetted this work and agreed that the highest performing CPU governor is likely to offer battery savings through the race-to-idle principal. Eugene added that finding the right I/O scheduler to combine with your governor will make a big difference too. Extra thanks to Steve for providing the kernel on which I based this test, and all his valuable input! The I/O scheduler for the test was cfq, and note: governors have settable parameters which may vary between developers.
Choosing a Scheduler
I/O schedulers perform differently depending on the governor you are using. I've investigated this using the six most popular CPU governors (vote here) vs the six available I/O schedulers in Eugene's kernel, and the four available in r_data's kernel. All governors are based on either ondemand, interactive, or conservative. Recommended reading is available here: schedulers also for governors
Schedulers tested against these popular governors:
SmartassV2 - interactive variant, and winner of the governor test.
LulzactiveV2 - interactive variant
Lazy - Ezekeel's governor, ondemand variant
Performance - included as a reference for high scores
Ondemand
Conservative
Testing Methodology
To test the kernels I want a fair environment, so any differences in the results are down to the kernel, and nothing else. To achieve this I first make sure I have a clean system:
1) Format /system and /cache and wipe dalvic
2) Install the ROM, install the kernel
3) Boot up, use nstools to select deadline for I/O scheduler
4) Then select a CPU governor and I/O scheduler depending on the test at hand
5) Titanium Backup to restore all my benchmark programs (app only). Set everything to off, no gps, no sync, no BT, airplane mode. Force GPU rendering is selected. Wifi is on for connecting to the benchmark servers. A power adaptor is in use so the battery is always full.
Then I begin testing.
For the CPU Governor Comparison study:
6) Power off and power back up. When lock screen arrives, wait one minute to settle the system, i.e. until screen auto-off. Count to three. Unlock, and begin testing, recording all scores. Start over with all the tests. Record those scores. (I now have two sets of scores for all the benchmarks to create a mean for improved accuracy). Then select next governor, power off and on, and start the cycle again.
For the I/O Scheduler Comparison study:
6) Power off and power back up. For each new scheduler I completed one test which I did not record, just to ensure that the program was properly cached in the system. I then recorded the subsequent ten results. After ten results, I would select the next scheduler, until I had finished all six, then I would also select the next governor and go back to the first scheduler. I repeated this cycle until I had collected data for performance, and the three other main governor types.
Statistics in the scheduler study are a little different to the other tests. They combine overall performance scores with overall variance scores (where lower is better). The formula is
a= Database IO score - 3 standard deviations
b= Write speed - 3 standard deviations
c= Read speed - 3 standard deviations
score=(a*b*c) to the power of 1/3
If you multiply three values together, and take the cube root (same as raising to 1/3) then you arrive at the geometric mean. This type of mean allows the comparison of two different schedulers based not just on their performance, but also how consistent in that performance they are. That score is then compensated by adjusting by half of the percentage discrepancy between the mean and median. For most scores that is an adjustment of less than 1%.
Summary of the Results
SmartassV2 won the governor benchmarks, and also performed well in the battery drain benchmarks.
The best I/O scheduler to combine with this is noop.
This is the combination I personally prefer. However, this is merely my opinion, based on my tests. Mathkid95 prefers ondemand. At the time of writing, Steve Garon and Franco prefer their own tweaked versions of conservative. (My tests indicate CFQ is the best match for conservative.)
Nice work on this!
bedalus said:
Summary of the Results
SmartassV2 won the governor benchmarks, and also performed well in the battery drain benchmarks.
The best I/O scheduler to combine with this is noop.
This is the combination I personally prefer. However, this is merely my opinion, based on my tests. Mathkid95 prefers ondemand. At the time of writing, Steve Garon and Franco prefer their own tweaked versions of conservative. (My tests indicate CFQ is the best match for conservative.)
Click to expand...
Click to collapse
Im also prefer smartassv2+noop. Really good combination
Very usefull, Thanks
Surnom said:
Very usefull, Thanks
Click to expand...
Click to collapse
No problem. If anyone is wondering why so few posts, it's because I recently separated this work away from my kernel benchmarking thread. Feel free to feedback.
bedalus said:
Summary of the Results
SmartassV2 won the governor benchmarks, and also performed well in the battery drain benchmarks.
The best I/O scheduler to combine with this is noop.
This is the combination I personally prefer. However, this is merely my opinion, based on my tests. Mathkid95 prefers ondemand. At the time of writing, Steve Garon and Franco prefer their own tweaked versions of conservative. (My tests indicate CFQ is the best match for conservative.)
Click to expand...
Click to collapse
Never kneww that SmartassV2 works best with noop! I used to have it with deadline. Now experiencing the best experience ever!
using Franco BFS Nov 1st
Thanks man! Thanks Franco!
SmartassV2/Noop +1
UPDATE: Steve had a rethink of his Conservative governor parameters, and I've updated the table to include this. Check column L.
Lower scores are natural with conservative. This time, with the new parameters, the scores are even lower. This indicates that the new conservative is throttling the frequencies more aggressively, but it should also be noted that this governor feels much more responsive than the previous incarnation.
Note - the IO score shows a great improvement, but this is due only to a boost in database IO through the recent FSYNC patch. Make sure you use stable voltages to avoid reboots and potential data loss. (No benefit to UV anyway - check the results of my battery study, see link above.)
thx mate! You do a great job!
Sent from my Nexus S using Tapatalk
Some serious work been put into this.. Anyway of listing governors in respect of there performance then a list of governors for best battery life and the recommended I/O schedulers to accompany them. I know the graph is there but it'll be easier for people like me (not so good with cpu settings) to just simply apply from a high to low list which indicates best performance or more battery life. I'm getting great battery life and decent performance using ondemand with noop but it eats battery a lot more when phone is in use compared to other combinations I've tried.
Sent from my HTC Desire S using XDA App
bedalus said:
Summary of the Results
SmartassV2 won the governor benchmarks, and also performed well in the battery drain benchmarks.
The best I/O scheduler to combine with this is noop.
Click to expand...
Click to collapse
Is it just me or does the spreadsheet say deadline is best with SmartassV2 with noop second?
dabado said:
Some serious work been put into this.. Anyway of listing governors in respect of there performance then a list of governors for best battery life and the recommended I/O schedulers to accompany them. I know the graph is there but it'll be easier for people like me (not so good with cpu settings) to just simply apply from a high to low list which indicates best performance or more battery life. I'm getting great battery life and decent performance using ondemand with noop but it eats battery a lot more when phone is in use compared to other combinations I've tried.
Sent from my HTC Desire S using XDA App
Click to expand...
Click to collapse
Good idea. I will try to do it today.
kernels ; battery ; ROM ; gov/sched
Thaks to your recommend, I use noop + SmartassV2.
I used cfq+tweaked conservative before that set, but I can't feel differece and battery life (I don't know this phrase mean but I'm saying it is very good!)
UPDATE: First post edited. Now summarises all findings. Also, makes it easier to read if you are using the XDA app
Thank you !
Bedalus, I did a little amateur test today.
I played some music with not-too-loud volume.
I keep my data ON, everything else is off.
The screen is always ON with lowest brightness because I'm looking at the CPU frequency used.
CPU min 200, max 1000.
I went to Processor settings and look at the CPU frequency used at the moment.
When I selected Conservative and let it stay for 10 seconds, the CPU freq is showing 1000 constant.
Then I selected Lazy and let it stay for another 10 seconds, the CPU freq is 400 constant.
With SmartassV2, let it stay for 10 seconds, the CPU freq is randomly jumping from 200, 400 and sometimes 1000.
Well my question is, shouldn't Conservative be constantly using the lowest frequency among the other governors?
From what I saw it is Lazy which constantly used the lowest.
What do you think?
I know this test is not reliable at all, so sorry if it's just a waste of time.
glennkaonang said:
Bedalus, I did a little amateur test today.
I played some music with not-too-loud volume.
I keep my data ON, everything else is off.
The screen is always ON with lowest brightness because I'm looking at the CPU frequency used.
CPU min 200, max 1000.
I went to Processor settings and look at the CPU frequency used at the moment.
When I selected Conservative and let it stay for 10 seconds, the CPU freq is showing 1000 constant.
Then I selected Lazy and let it stay for another 10 seconds, the CPU freq is 400 constant.
With SmartassV2, let it stay for 10 seconds, the CPU freq is randomly jumping from 200, 400 and sometimes 1000.
Well my question is, shouldn't Conservative be constantly using the lowest frequency among the other governors?
From what I saw it is Lazy which constantly used the lowest.
What do you think?
I know this test is not reliable at all, so sorry if it's just a waste of time.
Click to expand...
Click to collapse
It sounds like quite an interesting test. I'm surprised at the conservative result. Which kernel are you on?
Well I am sticking to one Rom and that's Crisekelo's like in my good 'n old sgs froyo times, but I like to test various kernels, when I have time...
Anyway I never saw a Mod Kernel with so many governors as the AbyssNote kernel, which I am testing right now..
Since there are many users out there that unlike me, already own the GNote for a long time and are way more experienced than me with this particular Kernel, I decided to start this Poll-thread so users can vote on their favorite governor and prehaps elaborate a little about it..
Thanks in advance..
Since Abyss Kernel is not working for my Note (overheat), I' at FM kernel with SavagedZen governor and vr I/0 Scheduler, butter smooth and stable, goes to deep sleep as it supposed to, sharp performance and moderate battery life. I know you prefer Abyss but just wanna let you know how the other kernel is working.
When I was on Abyss I was using abyssplug governor with and without undervolting. Hope you can get Abyss work for you, if you manage to do it without overheat I would appreciate any info.
have fun!
Oops ... you reacted fast ! The poll was not even ready
At the moment I don't prefer any kernel ( Only the rom) and on a device such as the GNote, I have a hunch that we dont need a super-optimized kernel with tons of iterations and that's why I always keep CF-Root and Speedmod handy, but I like the dedication and availability of AbyssNote developer, so I am giving it another try...
Since I have not enough time to play with the GNote as I did with the sgs, I am hoping that the AbyssNote users will give this specific input ....
iceangel1980 said:
"... Abyss Kernel is not working for my Note (overheat), I' at FM kernel with SavagedZen governor and vr I/0 Scheduler, butter smooth and stable, goes ..."
Click to expand...
Click to collapse
Hi betoNL,
just give the Abyss Kernel v3.7 another try. I am really satisfied with ABYSSPLUG governor and the SIO scheduler - great balance between performance and battery life. And it is also butter smooth and stable without any overclocking indeed ;-)
To be honest: I can't understand your problem with overheating. It could have its seeds in an app with unnormal behaviour or a constant hang-up in the background. Maybe you will execute this little turnaround at the next opportunity:
1. Charge your battery to 100%
2. Use a Taskkiller and kill every open task
3. Reboot in Recovery Mode and wipe voltage & battery stats (DON'T WIPE ANYTHING ELSE, PLEASE!)
4. Reboot yours system...
Best regards
[bs]
---------- Post added at 05:53 PM ---------- Previous post was at 05:50 PM ----------
Hi,
great poll... my vote goes to the abyssplug ;-)
Would be interesting to add users choice of the I/O scheduler.
What do you think about that little improvement?
Best regards
[bs]
As I said, I recommend AbyssPlug
I don't understand how abyssplug works. So I don't use it.
I do use lulzactive because it uses mostly my lowest frequency which drains battery the least when not stressed and highest frequency when stressed and basically ignores everything in between. It's been great.
can someone explain how abyssplug works? I've been searching, it only says modified hotplug. That doesn't tell me much.
Originally Posted by mancman
here the exact explanation on RootzWiki:
Wheatley governor
in short words this govenor is build on "ondemand" but increases the C4 state time of the CPU and doing so trying to save juice....
The known ones are really good described here one the setcpu page:
the rest is nice described here:the rest is nice described here:
lazy (http://forum.xda-developers.com/show....php?t=1276092) - is ondemand but with an added option to stay longer on a certain frequency. This is due to the fact that some CPU's dont like too quick freq changes when sampling rate for decision making is set too low. See link for more.
lulzactive (http://tegrak2x.blogspot.com/2011/11...vernor-v2.html) - is basically interactive governor with added smartass bits and variable (as opposed to fixed amout) frequency scaling, based on currently occuring cpu loads. Has, like smartass, a sleep profile built-in. See link for details on exact scaling.
lagfree (http://forum.xda-developers.com/show....php?t=1272933) - seems to be ondemand but with a lessend tendency to ramp up to 100% but rather also use steps available in between 0-100%.
intellidemand (freely translated from http://www.android-hilfe.de/root-hac...-governor.html) - behaves like ondemand when the system is under heavy use, it behaves differently when the system is mostly ideling. That mode is colled "browsing mode" or "browser mode" or whatever. It seems to be some sort of "intelligent" demand sensing/analysing ondemand governor.
smartassV2 - this one should be known. It's the same as smartass(V1) but tweaked. Same code author. I heard one should use smartassV2 instead of smartass when available.
ondemandx - is ondemand with an added sleep profile built-in. I believe all ...X kernels are the default kernels but with an added sleep profile.
AbyssPlug Governor:
Abyssplug governor is a modified hotplug governor
>>Hotplug Governor:
The "hotplug" governor scales CPU frequency based on load, similar to
"ondemand". It scales up to the highest frequency when "up_threshold"
is crossed and scales down one frequency at a time when "down_threshold"
is crossed. Unlike those governors, target frequencies are determined
by directly accessing the CPUfreq frequency table, instead of taking
some percentage of maximum available frequency.
The key difference in the "hotplug" governor is that it will disable
auxillary CPUs when the system is very idle, and enable them again once
the system becomes busy. This is achieved by averaging load over
multiple sampling periods; if CPUs were online or offlined based on a
single sampling period then thrashing will occur.
Sysfs entries exist for "hotplug_in_sampling_periods" and for
"hotplug_out_sampling_periods" which determine how many consecutive
periods get averaged to determine if auxillery CPUs should be onlined or
offlined. Defaults are 5 periods and 20 periods respectively.
Otherwise the standard sysfs entries you might find for "ondemand" and
"conservative" governors are there.
__________________
After goin thru this thread I tried the AbyssPlug governor.
And indeed its good so far.
Me likes!!!!!!!!!
Sent from my GT-N7000 using xda premium
My choice is lulzactive.
Most important things for me are smoothness, fast wake&unlock and gaming performance. I don't care about the battery life that much so it seems a perfect choice for me.
pjm77 said:
My choice is lulzactive.
Most important things for me are smoothness, fast wake&unlock and gaming performance. I don't care about the battery life that much so it seems a perfect choice for me.
Click to expand...
Click to collapse
I like lulzactive, too!
What, no smartassv2 love here ? I found it at least as good as lulzactive for my usage.
My priorities - Fast response after sleep, smoothness, battery.
My governor choices on top were : SmartAssV2 (Currently using), AbyssPlus (Used it, liked it, later will compare to SmartAssV2) and Lulzactive (which is pretty good as well).
betoNL said:
Originally Posted by mancman
here the exact explanation on RootzWiki:
Wheatley governor
in short words this govenor is build on "ondemand" but increases the C4 state time of the CPU and doing so trying to save juice....
The known ones are really good described here one the setcpu page:
the rest is nice described here:the rest is nice described here:
lazy (http://forum.xda-developers.com/show....php?t=1276092) - is ondemand but with an added option to stay longer on a certain frequency. This is due to the fact that some CPU's dont like too quick freq changes when sampling rate for decision making is set too low. See link for more.
lulzactive (http://tegrak2x.blogspot.com/2011/11...vernor-v2.html) - is basically interactive governor with added smartass bits and variable (as opposed to fixed amout) frequency scaling, based on currently occuring cpu loads. Has, like smartass, a sleep profile built-in. See link for details on exact scaling.
lagfree (http://forum.xda-developers.com/show....php?t=1272933) - seems to be ondemand but with a lessend tendency to ramp up to 100% but rather also use steps available in between 0-100%.
intellidemand (freely translated from http://www.android-hilfe.de/root-hac...-governor.html) - behaves like ondemand when the system is under heavy use, it behaves differently when the system is mostly ideling. That mode is colled "browsing mode" or "browser mode" or whatever. It seems to be some sort of "intelligent" demand sensing/analysing ondemand governor.
smartassV2 - this one should be known. It's the same as smartass(V1) but tweaked. Same code author. I heard one should use smartassV2 instead of smartass when available.
ondemandx - is ondemand with an added sleep profile built-in. I believe all ...X kernels are the default kernels but with an added sleep profile.
AbyssPlug Governor:
Abyssplug governor is a modified hotplug governor
>>Hotplug Governor:
The "hotplug" governor scales CPU frequency based on load, similar to
"ondemand". It scales up to the highest frequency when "up_threshold"
is crossed and scales down one frequency at a time when "down_threshold"
is crossed. Unlike those governors, target frequencies are determined
by directly accessing the CPUfreq frequency table, instead of taking
some percentage of maximum available frequency.
The key difference in the "hotplug" governor is that it will disable
auxillary CPUs when the system is very idle, and enable them again once
the system becomes busy. This is achieved by averaging load over
multiple sampling periods; if CPUs were online or offlined based on a
single sampling period then thrashing will occur.
Sysfs entries exist for "hotplug_in_sampling_periods" and for
"hotplug_out_sampling_periods" which determine how many consecutive
periods get averaged to determine if auxillery CPUs should be onlined or
offlined. Defaults are 5 periods and 20 periods respectively.
Otherwise the standard sysfs entries you might find for "ondemand" and
"conservative" governors are there.
__________________
Click to expand...
Click to collapse
Again, it's just a modified hotplug. What's modified about it?
betoNL said:
Oops ... you reacted fast ! The poll was not even ready
Click to expand...
Click to collapse
guess I was in chatty mood
BrainSex said:
\
To be honest: I can't understand your problem with overheating. It could have its seeds in an app with unnormal behaviour or a constant hang-up in the background. Maybe you will execute this little turnaround at the next opportunity:
1. Charge your battery to 100%
2. Use a Taskkiller and kill every open task
3. Reboot in Recovery Mode and wipe voltage & battery stats (DON'T WIPE ANYTHING ELSE, PLEASE!)
4. Reboot yours system...
Click to expand...
Click to collapse
Believe me I don't get it either and I'm pretty upset I can't use that kernel which is so valued by other android users. I was trying your advice and any other I could find in Abyss Kernel thread, nothing works for me. What is really funny I don't have any problems on other kernels. Well maybe I'm just unlucky this way. I'm thinking about getting my Note to Samsung for screen display exchange, so maybe they can do something about overheating too, maybe it's hardware related.
Thank you for your interest and advice
anyone using the app 2nd core and turning on dynamic hotplug?
It rly helps the battery
Might be useless to use along side abyssplug tho since it does the same thing
I use lulzactive, don't care about a little more battery drain
I use too 500mhz minimum speed @ 800mv, with it is pretty strange because 100 and 200 are not stable at that voltage and need 825, so having more speed I use less battery.
You don't use less battery because it's not only determined by voltage. Frequency us also a factor in power consumption, so 100MHz at 825 uses less battery for sure.
Sent from my superior GT-N7000 using Tapatalk
Zamboney said:
You don't use less battery because it's not only determined by voltage. Frequency us also a factor in power consumption, so 100MHz at 825 uses less battery for sure.
Sent from my superior GT-N7000 using Tapatalk
Click to expand...
Click to collapse
There's a post here somewhere here in the gnote forum that shows a study where they explain how 50 and 100MHz do consume more battery cause the CPU gets more stressed and takes longer to perform the task that would take less time and effort to accomplish at a higher frequency (or something like that)
Actually a higher frequency @ same voltage as a lower frequency would consume LESS battery because it will complete the task faster.
Sent from my GT-N7000 using Tapatalk
With my setup only ondemand really worked well, my second core scaling is always set to 2 cores enabled and I have a landscape setting for ADWex and any other governor will give me like 10-15fps when opening the app drawer.
Abyssplug fits my needs: I don't need so much power (no playstation-like games) but I use phone h24, from music to calls, from surfing to calendar/alarm...quite all stuff by BT headset and voice command. Battery drains slower than expected, my Note stays alive 'till night
Thank to @DooMLoRD, we have a powerful customized kernel allowing to improve the user experience with our Z2.
Current version: DooMKernel (v11)
This is the place to share and to discuss about our settings (allowed by DooMKernel). Please don't flood the kernel thread with such information, the right place is here.
First, it must be emphasized that the best tools to enable and tune the settings allowed by DooMKernel are:
- Fauxclock
- FauxSound
However, you can use others tools (such as Pimp my Z1, ...) and your feedback using these alternate tools will be welcome.
Currently, I use these Fauxclock settings (Updated sections in red - 13 Oct 2014):
- CPU Clock:
Min freq.: 300 MHz
Max freq.: 2.458 GHz (overclocked, see FAQ in post #2 for enabling overclocking permanently)
Governor: Intelliactive
- CPU Hotplug: Intelliplug - Profile: balanced - Touch boost enabled, or mpdecision for better perf. (see FAQ in post #2)
Intelliactive + Intelliplug = good performances +, very good battery life +++
Intelliactive + mpdecision = good performances ++, good battery life ++
Lagfree + mpdecision = very good performances +++, good battery life +
- Voltage tuning: -12 mV
Beyond this value, my device crashes (not necessarily the same for all devices). Stability can be tested with StabilityTest or Antutu benchmark.
Reducing the Votage is interesting for power saving and thermal management.
From a few reports, you could be 100% stable up to -48 mV.
- Thermal manager: Intellithermal (recommended by Faux)
Better than Thermald for 4K recording (look at my tests here)
Temperature threshold freq.: 70°C (158°F)
Temperature threshold core: 80°C (176°F)
- GPU manager: msm-adreno-tz - 578 MHz
Try these settings for great GPU performance!! And please give feedback.
- Sheduler I/O (eMMC & SDCard): row
- Readahead size (eMMC & SDCard): eMMC: 2048 - SD: 4096
- Colour / Gamma: not tested
- Memory manager:
VFS cache enabled
Automatic mode for writeback delay: enabled
- Same Page Merge: Intelli-KSM enabled
- FastCharge:
Battery Temperature Throttling: on
Battery throttle cpu frequency: 2457600
Fastcharge options: disabled - not tested
Currently, I use these FauxSound settings:
- Preset Profile: Quality
- Speaker gain: does not work
That's all. All is working perfect for me.
Compared to stock settings, about 2000 points are won on the Antutu Benchmark Score.
These settings will be updated and discussed in this post from your future reports.
FAQ:
- How to enable CPU overclocking permanently ?
Open Fauxclock,
go to fastcharge,
enable "Battery temperature throttling"
search "Battery throttle cpu frequency" & set it there up to "2457600",
activate "set on boot",
go back to cpu/hotplug,
set cpu at max,
and reboot.
Thanks to @MysticEnforcer for this tip.
- You experience lags listening eXistenZ modded Walman+sound enhancements ?
Use CPU hotplug mpdecision.
I find my phone freezes on boot when I use the intelliactive governor with sio.
Sent from my HTC One X using Tapatalk
KrisPerry said:
I find my phone freezes on boot when I use the intelliactive governor with sio.
Sent from my HTC One X using Tapatalk
Click to expand...
Click to collapse
That's strange... What rom do you use?
nreuge said:
Update of my settings: voltage tuning set from -48 mV to -24 mV for stability issues. Seems stable at -24 mV but needs confirmation.
Antutu benchmark is a good test to verify stability.
Click to expand...
Click to collapse
for me initially -72 mV was working but not stable... for now -60 mV is mostly stable, with a rare random reboot here or there
DooMLoRD said:
for me initially -72 mV was working but not stable... for now -60 mV is mostly stable, with a rare random reboot here or there
Click to expand...
Click to collapse
I was nearly stable at -36 mV with a rare random reboot here or there. Now, it's seems I'm 100% stable at -24 mV and I saw elsewhere that another user was stable at -48 mV. No luck for me... Anyway, all that confirms that each device behaves differently.
Stable at - 36
Sent from my D6503 using Tapatalk
If you want to get rid of micro stutter, try using one of the following cpu governors:
Lagfree, Smartass V2 or Lionheart
Games, launchers, Chrome etc. became much more responsive since I've switched.
Gesendet von meinem D6503 mit Tapatalk
deezid said:
If you want to get rid of micro stutter, try using one of the following cpu governors:
Lagfree, Smartass V2 or Lionheart
Games, launchers, Chrome etc. became much more responsive since I've switched.
Gesendet von meinem D6503 mit Tapatalk
Click to expand...
Click to collapse
have you done any specific governor tweaks?
can you share them with us?
DooMLoRD said:
have you done any specific governor tweaks?
can you share them with us?
Click to expand...
Click to collapse
No, didn't modify them.
There are laggy governors like: Ondemand, Interactive, Conservative, Intellidemand etc. and fast ones: Performance (no good solution), Lionheart, Smartass V2, Lagfree.
Just try it. Made my phone fly. Games like Temple Run Oz and Asphalt 8, which were unplayable before are working fine since I've using another governor (currently Lionheart). Feels like a Nexus 5 or HTC M8 now. Much better than stock!
Thanks for your great work!
Gesendet von meinem D6503 mit Tapatalk
I think I'll share my settings. This is not for those who expect ultimate power from their Z2's. I'm not a gamer, so this settings are for browsing the web and focused on battery performance.
Here we go:
Underclocked to 1728 ghz, governor intelliactive
CPU Hotplug: mpdecision (there's nothing we can do about that )
Voltage: -24 mV
Thermal: Intellithermal, frequency throttle 70 C, Core throttle: 65 C, all cores throttled
GPU: msm-adreno-tz 578 mhz, gpu rendering: on
I/O Schedulers: SIO for internal and external, cache 1024
Memory manager: Clear VFS cache after boot, rest on stock
Same Page merge: Intelli-KSM enabled
Low Memory Kill: why do i need those with 3gigs of ram?
FastCharge: Battery throttling: throttle at 50 C of bettery - throttle to 1267200
Battery lasts from 7am to 10pm with heavy use - 40% left. Stamina mode on all the time. Screen with auto brightness.
I'm using fauxClock. Smooth UI, fast browsing, no stuttering, fullhd camera works like charm. I'm not using 4k recoding and I haven't tested it.
Stable at -60 mv..
Sent from my D6503 using XDA Premium 4 mobile app
Is it better to turn mpdecision on or leave it off? I read somewhere that mpdecision overwrites the cpu governor settings.
GiGi. said:
Is it better to turn mpdecision on or leave it off? I read somewhere that mpdecision overwrites the cpu governor settings.
Click to expand...
Click to collapse
It's better to turn it on as there is no alternate manager for the moment.
amon87 said:
GPU: msm-adreno-tz 578 mhz, gpu rendering: on
Click to expand...
Click to collapse
How you turn on the GPU Rendering?
From Developer Options? Force GPU Rendering?
amon87 said:
GPU: msm-adreno-tz 578 mhz, gpu rendering: on
Click to expand...
Click to collapse
TheoDores said:
How you turn on the GPU Rendering?
From Developer Options? Force GPU Rendering?
Click to expand...
Click to collapse
In your opinion, what advantage is there in turning on GPU rendering?
I had tried it with my old Xperia T, but I hadn't noticed any difference...
deezid said:
No, didn't modify them.
There are laggy governors like: Ondemand, Interactive, Conservative, Intellidemand etc. and fast ones: Performance (no good solution), Lionheart, Smartass V2, Lagfree.
Just try it. Made my phone fly. Games like Temple Run Oz and Asphalt 8, which were unplayable before are working fine since I've using another governor (currently Lionheart). Feels like a Nexus 5 or HTC M8 now. Much better than stock!
Click to expand...
Click to collapse
@DooMLoRD
I've done several tests comparing different governors in term of power consumption. My screen was off and I was listening to music with Walkman.
Results (discharging rates):
Intelliactive: -2%/h
Lagfree: -3%/h
Lionheart: -4%/h
Smartass v2: -12%/h (big issue: freq. always at max)
So, Lagfree and Lionheart are probably more performant than Intelliactive (based on Ondemand) and more suitable for gamers but they are far more power hungry. So, this must be considered before choosing a governor.
There is patently an issue with Smartass v2.
nreuge said:
I've done several tests comparing different governors in term of power consumption. My screen was off and I was listening to music with Walkman.
Results (discharging rates):
Intelliactive: -2%/h
Lagfree: -3%/h
Lionheart: -4%/h
Smartass v2: -12%/h (big issue: freq. always at max)
So, Lagfree and Lionheart are probably more performant than Intelliactive (based on Ondemand) and more suitable for gamers but they are far more power hungry. So, this must be considered before choosing a governor.
There obviously an issue with Smartass v2.
Click to expand...
Click to collapse
Have seen the same, Smartass V2 is buggy and keeps the frequency at maximum (just like performance governor does).
Lagfree seems to be the best compromise, it works pretty well in games.
Gesendet von meinem D6503 mit Tapatalk
deezid said:
No, didn't modify them.
There are laggy governors like: Ondemand, Interactive, Conservative, Intellidemand etc. and fast ones: Performance (no good solution), Lionheart, Smartass V2, Lagfree.
Just try it. Made my phone fly. Games like Temple Run Oz and Asphalt 8, which were unplayable before are working fine since I've using another governor (currently Lionheart). Feels like a Nexus 5 or HTC M8 now. Much better than stock!
Thanks for your great work!
Gesendet von meinem D6503 mit Tapatalk
Click to expand...
Click to collapse
Very hard on battery though
Sent from my D6503 using Tapatalk
deezid said:
Have seen the same, Smartass V2 is buggy and keeps the frequency at maximum (just like performance governor does).
Lagfree seems to be the best compromise, it works pretty well in games.
Gesendet von meinem D6503 mit Tapatalk
Click to expand...
Click to collapse
KrisPerry said:
Very hard on battery though
Sent from my D6503 using Tapatalk
Click to expand...
Click to collapse
I think that Interactive should be good for games and not too power hungry. However, presently, it seems incorrectly parametirized: using it, I can hear few scratching noises listening to music in Walkman (and also with Ondemand)!! I'll see what I can do.
Hey. After checking CPU on "Kernel Adiutor", I noticed that none of six cores are going offline. All of them is staying online, its happening also if there is no tasks on background. I am using interactive governor for both big and LITTLE cores. I want to know, is there better governor, that will not sacrifice performance, but will put some cores to offline mode, so battery life would be better. Any suggestions for hexacore governors?
Thanks!
EDITED on 28.11.15:
Thanks dark4codrutz for explaining things! So I have flashed v4tk kernel version 5 for XT1572.
Settings at "Kernel Adiutor":
CPU
big cores: min - 384 MHz, max - 1824 MHz, governor - interactive.
little cores: min - 384 MHz, max - 1440 MHz, governor - interactive.
CPU Boost - disabled on all cores (I suppose that stock variant with "input boost frequency core 1 - 1248 MHz" was reason why all settings didnt stock on, so this option is disabled now)
CPU Hotplug
Thunderplug is enabled;
Min Cores screen off - 2;
Sampling Rate - 600;
Load Threshold - 60;
I get that I wanted. Now there isnt 6 cores online always. With this settings I didnt got noticeable lagging, and on small system load I have only 1 little and 1 big core online. Others are offline!
Will test this out, it should get some batery for device (SOT).
BooBzi said:
Hey. After checking CPU on "Kernel Adiutor", I noticed that none of six cores are going offline. All of them is staying online, its happening also if there is no tasks on background. I am using interactive governor for both big and LITTLE cores. I want to know, is there better governor, that will not sacrifice performance, but will put some cores to offline mode, so battery life would be better. Any suggestions for hexacore governors?
Thanks!
Click to expand...
Click to collapse
If you are rooted, you could flash one of the custom ROMS that has a custom kernel. You could change hotplugs, governors, etc. Or if you want to stay stock, there is also a custom kernel for that. Thunderplug takes several copies offline.
Sent from my XT1575 using Tapatalk
countryfolk07 said:
If you are rooted, you could flash one of the custom ROMS that has a custom kernel. You could change hotplugs, governors, etc. Or if you want to stay stock, there is also a custom kernel for that. Thunderplug takes several copies offline.
Sent from my XT1575 using Tapatalk
Click to expand...
Click to collapse
I am rooted, but want to stay on stock ROM. Some time ago I tried v4tk kernel, but had some problems with it - interactive governor disabled one big, and two little cores. Also I couldnt change max and min frequency. So whatever I did, I had one big core offline, but other one was always on ~1.2Ghz. It didnt go to 300MHz or to 1.8GHz.
So the main question for now - Is there some special governors for hexa-core phones? I see that in stock interactive governor when screen is on, all six cores always is online, so I am looking for other governor, that uses same type for agresive performance, but also that can disable big cores by it self. No drops in performance.
But thanks for answering this thread.
BooBzi said:
I am rooted, but want to stay on stock ROM. Some time ago I tried v4tk kernel, but had some problems with it - interactive governor disabled one big, and two little cores. Also I couldnt change max and min frequency. So whatever I did, I had one big core offline, but other one was always on ~1.2Ghz. It didnt go to 300MHz or to 1.8GHz.
So the main question for now - Is there some special governors for hexa-core phones? I see that in stock interactive governor when screen is on, all six cores always is online, so I am looking for other governor, that uses same type for agresive performance, but also that can disable big cores by it self. No drops in performance.
But thanks for answering this thread.
Click to expand...
Click to collapse
Sorry for bothering in your thread but I see you have some misconceptions about kernels. The governor is nothing more than a set of rules that the CPU follows and uses to decide when, how much and for how long to scale the FRECQUENCY.
What you are looking for is an HOTPLUG, which is the part of the kernel that tells the CPU to HOTPLUG( disconnect or connect) a number of cores, also contains parameters for when to do that, at which initial FRECQUENCY to HOTPLUG the core and also for how long to wait until disconnecting it.
I am using v4tk's kernel right now and I can confirm it works as a beauty. In version V5 (the latest for my XT1572) he even modified the Thunderbolt Hotpluging and adapted it to respect six cores little.Big configuration. In my experience with this HOTPLUG it keeps first little core and first Bigg core always on during screen on, then it gradually lights up second, third, forth little cores when needed. I didn't got to make him light up the second Big core in Kernel Auditorium, but I'm pretty sure it lights up when video is decoded or encoded.
I don't recommend you using the newly added MSN, it doesn't do much for me.
As for the governors ( you can select two: one for little cores and one for Big) I stay with stock Interactive and I haven't experienced bad frequency scalling.
dark4codrutz said:
Sorry for bothering in your thread but I see you have some misconceptions about kernels. The governor is nothing more than a set of rules that the CPU follows and uses to decide when, how much and for how long to scale the FRECQUENCY.
What you are looking for is an HOTPLUG, which is the part of the kernel that tells the CPU to HOTPLUG( disconnect or connect) a number of cores, also contains parameters for when to do that, at which initial FRECQUENCY to HOTPLUG the core and also for how long to wait until disconnecting it.
I am using v4tk's kernel right now and I can confirm it works as a beauty. In version V5 (the latest for my XT1572) he even modified the Thunderbolt Hotpluging and adapted it to respect six cores little.Big configuration. In my experience with this HOTPLUG it keeps first little core and first Bigg core always on during screen on, then it gradually lights up second, third, forth little cores when needed. I didn't got to make him light up the second Big core in Kernel Auditorium, but I'm pretty sure it lights up when video is decoded or encoded.
I don't recommend you using the newly added MSN, it doesn't do much for me.
As for the governors ( you can select two: one for little cores and one for Big) I stay with stock Interactive and I haven't experienced bad frequency scalling.
Click to expand...
Click to collapse
Finally, big THANKS to you for explaining things!
Will try later v4tk's kernel to change HOTPLUG, but I had some bad experience - all settings that I changed didnt stick on, so after some seconds they lived their lives.