[Q] Kernel Governors - Thunderbolt Q&A, Help & Troubleshooting

I have found explanations for most of the governors but would be nice to have a better explanation of the governors in particular the Smartass governor. Any kernel devs want to do a nice writeup explaining these.
Thanks.

the thing with governors is that they typically vary by developers and sometimes even by individual kernels. The concept of smartass is to throttle back when not used and ramp up using more slots to accurately match your speed to your usage. Most devs throw their own tweaks into each governor though, specifically the smartass one most
hope that helps a little bit...

Nice development thread!

This is more of a general question (and probably will rightfully be moved there soon enough)
Here it is though
Performance (never use): Keeps CPU at max all of the time
Powersave (never use):Keeps the CPU at min at all times
Conservative (personally suggested): Keeps CPU at lowest clockspeed possible while trying to perform well
interactive: Generally not used
smartass: works like conservative most of the time but locks the CPU at a low clock speed with screen off (depends on the kernel on exacts)
interactiveX: Seen in a kernel for my TB but NO idea what it does at all
Any I miss?

Userspace. Nobody knows what the hell its for.
Ondemand...lowers clock when not needed, ramps up very quickly when needed.
Interactive is very similar in that manner.
smartass can be configured to act like conservative or ondemand. I have it acting more like ondemand.

Standard Linux governors.

Related

[Q] Ondemand governor settings

I am running CM7 with the Streamline kernel and have mostly used Conservative or SamrtassV2, but recently I have been trying out Ondemand.
What values are people using with Ondemand (Sampling rate, Up threshold, etc)?
Nobody uses Ondemand?
my phones don't seem to like on-demand with any kernel.... I've had more SOD's trying to use on-demand I finally got tired of screwing with it and went back to conservative, some battles just are not worth the effort you know!
My phone is doing really well with Ondemand and a slight overclock. I've played with the settings a bit, but I'm having a hard time noticing any difference, so I'm wondering what settings others are using/have found to be good.

[Q] SetCPU Governors

Can somebody please explain the SetCPU governors to me? Normally I would use Smartass V2, but we only have the stock kernel.
The main governors I am curious about are mot_hotplug and hotplug. My phone seems to use a lot of battery when these are enabled, even with underclocked minimum scaling values.
Last night I ran my phone on ondemand at 300 min -300max (screen off profile) and it didn't drop 10%, first increment on battery reading stock ROM). Today while in school, it dropped from about 80% - 20% (using the same profile but with mot_hotplug).
Do all of the other governors manage both processors and hotplug can not?
You might as well use hotplug m8
MattyOnXperiaX10 said:
You might as well use hotplug m8
Click to expand...
Click to collapse
Why? That doesn't make any sense based from the findings I posted.
I'm using mot-hotplug in a week I'll know
Was using ondemand but I read an article where it shows the descriptions. Apparently hotplug behaves very similarly to ondemand but has the capability to turn off the 2nd core if there isn't a lot of workload. I switched to hotplug and so far its shown a significant difference in battery life. However, it may be a placebo as well so i'll stick to it for a week or so and then compare.
*edit
heres a link with better explaination
http://icrontic.com/discussion/95140/android-cpu-governors-and-you-setcpu-system-tuner-tegrak
evonc said:
Was using ondemand but I read an article where it shows the descriptions. Apparently hotplug behaves very similarly to ondemand but has the capability to turn off the 2nd core if there isn't a lot of workload. I switched to hotplug and so far its shown a significant difference in battery life. However, it may be a placebo as well so i'll stick to it for a week or so and then compare.
*edit
heres a link with better explaination
http://icrontic.com/discussion/95140/android-cpu-governors-and-you-setcpu-system-tuner-tegrak
Click to expand...
Click to collapse
I use kholks custom CPU governor it seems to be a lot snappier and battery use is good.
There is info in the development forum on here about it and using it.
Sent from my XT910 using XDA

[Q] [REQUEST] - APP that suggests kernel tweaks

Is there an app for the S3 that you can start and collects info about your usage and can suggest which governor, scheduler, undervolting (for gpu, cpu) to use? doesn't need to be JB (but it helps!), ICS is ok.
It's very confusing to understand that many things and I just don't notice any difference (for example with pegasusq and lulzactiveq haven't had a single crash) and undervolted the cpu 50mV and everything seems to be running the same so I don't know if I'm doing right or not. The only thing I noticed (and probably I'm wrong on that) is that the phone got hotter when I changed pegasusq for lulzactiveq so I reverted because I have the feeling that the hotter the phone means the more battery drain but my physics is not that good.
Thanks for helping.
My advice is that you ask/request this over at Apps and Themes as it more that section and most likely to find what you are looking for mate

[REF][Super Friendly] Explanation of Governors, I/O Schedulers and Kernels [23-Nov]

Introduction
"It takes few hours to make a thread but it doesn't even take few seconds to say Thanks"- arpith.fbi
Click to expand...
Click to collapse
Code:
Don't be afraid to ask me anything.
I won't bite, but I might lick you.
Just thank me for this super brief thread.
Give credits to this thread by linking it if you're using any of my info.
Thank you to you too
Have you unlocked your bootloader of your current device ? If so, read it ! If not, learn the benifits ! :victory:
What is this thread about ? It is a very brief explanation of every governors and schedulers to let you find the best combo for your device.
I've been searching a lot about informations about Kernels, Governors, I/O Schedulers and also Android Optimization Tips. No matter its Google or XDA or other android forums. I will go into it and try the best I can to find these infos. So I thought of sharing it to here for the Neo users.
My main reason to share this is to benefit users for better knowledge about Kernels, Governors, I/O Schedulers and Tips on Android Optimization. I'm not aware of whether where this should be posted, its related to kernels, governors and schedulers so I think it would be best if I share it to here. Yes, I wrote it word by word with references.Happy learning. :angel:
After months on XDA, no matter its in a development forum or Off Topic forum. Users kept on asking what's this what's that. And I'm sure that not all members will understand what is it until they bump into my thread
FAQs regarding on :-
-I/O Schedulers
-Kernel Governers
-Better RAM
-Better Battery
-FAQs
*Will add more when I found something useful.
Click to expand...
Click to collapse
I do a lot of asking by PM, to learn, it doesn't matter whether its a stupid one. (People who know me understands)
With my experience and lots of asking. I managed to find a lot of infos that we can use to optimize our phone.
I will try to explain as clear as I can.
Governors :-
-Smoothass
-Smartass
-SmartassV2
-SavagedZen
-Interactivex
-Lagfree
-Minmax
-Ondemand
-Conservative
-Brazilianwax
-Userspacce
-Powersave
-Performance
-Scary
-Lulzactive *
-Intellidemand *
-Badass *
-Lionheart *
-Lionheartx *
-Virtuous *
* Not yet available in current kernels in this forum
Explanation
OnDemand
Brief
Available in most kernels, and the default governor in most kernels. When the CPU load reaches a certain point, OnDemand will rapidly scale the CPU up to meet the demand, then gradually scale the CPU down when it isn't needed.
Click to expand...
Click to collapse
Review
Brief says all. By a simple explantion, OnDemand scales up to the required frequency to undergo the action you are doing and rapidly scales down after use.
Conservative
Brief
It is similar to the OnDemand governor, but will scale the CPU up more gradually to better fit demand. Conservative governor provides a less responsive experience than OnDemand, but it does save batter
Click to expand...
Click to collapse
Review
Conservative is the opposite of Interactive; it will slowly ramp up the frequency, then quickly drops the frequency once the CPU is no longer under a certain usage.
Interactive
Brief
Available in latest kernels, it is the default scaling option in some stock kernels. Interactive governor is similar to the OnDemand governor with an even greater focus on responsiveness.
Click to expand...
Click to collapse
Review
Interactive is the opposite of Conservative; it quickly scales up to the maximum allowed frequency, then slowly drops the frequency once no longer in use.
Performance
Brief
Performance governer locks the phone's CPU at maximum frequency. While this may sound like an ugly idea, there is growing evidence to suggest that running a phone at its maximum frequency at all times will allow a faster race-to-idle. Race-to-idle is the process by which a phone completes a given task. After that it returns the CPU to extremely efficient low-power state.
Click to expand...
Click to collapse
Review
Good at gaming, Really good. Disadvantages are it may damage your phone if too much usage.
Powersave
Brief
The opposite of the Performance governor, the Powersave governor locks the CPU frequency at the lowest frequency set by the user.
Click to expand...
Click to collapse
Review
Set it to your desired minimum frequency and you won't have to look for your charger for once in a while.
Scary
Brief
A new governor wrote based on Conservative with some Smartass features, it scales accordingly to Conservative's way. It will start from the bottom. It spends most of its time at lower frequencies. The goal of this is to get the best battery life with decent performance. It will give the same performance as Conservative right now.
Click to expand...
Click to collapse
Review
Hmm.. Overall I don't see any difference. After I understand its main objective. I was very curious and decided to use it again. Results are the same.. No difference. Report to me if anyone has tested this.
Userspace
Brief
Userspace is not a governor pre-set, but instead allows for non-kernel daemons or apps with root permissions to control the frequency. Commonly seen as a redundant and not useful since SetCPU and NoFrills exist.
Click to expand...
Click to collapse
Review
Highly not recommended for use.
Smartass
Brief
It is based on the concept of the Interactive governor.
Smartass is a complete rewrite of the code of Interactive. Performance is on par with the “old” minmax and Smartass is a bit more responsive. Battery life is hard to quantify precisely but it does spend much more time at the lower frequencies.
Click to expand...
Click to collapse
Review
Smartass is rather the governer that will save your battery and make use of your processor for daily use. Like the brief explantion said " Smartass will spend much more time on lower frequencies." So logically you don't need for sleep profiles anymore.
SmartassV2
Brief
Theoretically a merge of the best properties of Interactive and OnDemand; automatically reduces the maximum CPU frequency when phone is idle or asleep, and attempts to balance performance with efficiency by focusing on an "ideal" frequency.
Click to expand...
Click to collapse
Review
This is a much favourite to everybody. I believe almost everyone here is using SmartassV2. Yes, it is better than Smartass because of its speed no scaling frequencies from min to max at a short period of time.
Smoothass
Brief
A much more aggressive version of Smartass that is very quick to ramp up and down, and keeps the idle/asleep maximum frequency even lower.
Click to expand...
Click to collapse
Review
In my personal experience, this is really useful for daily use. And yes, I'm using it all the time. It may decrease your battery life. I saw it OC itself to 1.4 gHz when I set it to 1.2. Good use. Recommended.
Brazilianwax
Brief
Similar to SmartassV2. More aggressive scaling, so more performance, but less battery.
Click to expand...
Click to collapse
Review
Based on SmartassV2. But its advantage is a much more performance wise governor.
SavagedZen
Brief
Another SmartassV2 based governor. Achieves good balance between performance & battery as compared to Brazilianwax.
Click to expand...
Click to collapse
Review
Not much difference compared to SmartassV2. But it is a optimized version of it.
Lagfree
Brief
Again, similar to Smartass but based on Conservative rather than Interactive, instantly jumps to a certain CPU frequency after the device wakes, then operates similar to Conservative. However, it has been noted as being very slow when down-scaling, taking up to a second to switch frequencies.
Click to expand...
Click to collapse
Review
Used it before. Like the name of the governor, I didn't experience any lag whatsoever. Another governor based on performance, but not battery efficient.
MinMax
Brief
MinMax is just a normal governor. No scaling intermediate frequency scaling is used.
Click to expand...
Click to collapse
Review
Well.. it's too normal that I can't really say anything about it..
Interactivex
Brief
InteractiveX governor is based heavily on the Interactive governor, enhanced with tuned timer parameters to optimize the balance of battery vs performance. InteractiveX governor's defining feature, however, is that it locks the CPU frequency to the user's lowest defined speed when the screen is off.
Click to expand...
Click to collapse
Review
A better understanding from the brief to you users, this is an Interactive governor with a wake profile. More battery friendly than Interactive.
Due to current kernels doesn't have these governors. I will be delaying the explanation, its very interesting. If you want it ASAP, post below
-Lulzactive *
-Intellidemand *
-Badass *
-Lionheart *
-Lionheartx *
-Virtuous *
**********************************************************************************************************************************************************************
I/O Schedulers(thanks to droidphile)
Deadline
Goal is to minimize I/O latency or starvation of a request. The same is achieved by round robin policy to be fair among multiple I/O requests. Five queues are aggressively used to reorder incoming requests.
Advantages:
Nearly a real time scheduler.
Excels in reducing latency of any given single I/O.
Best scheduler for database access and queries.
Bandwidth requirement of a process - what percentage of CPU it needs, is easily calculated.
Like noop, a good scheduler for solid state/flash drives.
Disadvantages:
When system is overloaded, set of processes that may miss deadline is largely unpredictable.
Click to expand...
Click to collapse
Noop
Inserts all the incoming I/O requests to a First In First Out queue and implements request merging. Best used with storage devices that does not depend on mechanical movement to access data. Advantage here is that flash drives does not require reordering of multiple I/O requests unlike in normal hard drives.
Advantages:
Serves I/O requests with least number of cpu cycles. (Battery friendly?)
Best for flash drives since there is no seeking penalty.
Good throughput on db systems.
Disadvantages:
Reduction in number of cpu cycles used is proportional to drop in performance.
Click to expand...
Click to collapse
Anticipatory
Based on two facts
i) Disk seeks are really slow.
ii) Write operations can happen whenever, but there is always some process waiting for read operation.
So anticipatory prioritize read operations over write. It anticipates synchronous read operations.
Advantages:
Read requests from processes are never starved.
As good as noop for read-performance on flash drives.
Disadvantages:
'Guess works' might not be always reliable.
Reduced write-performance on high performance disks.
Click to expand...
Click to collapse
BFQ
nstead of time slices allocation by CFQ, BFQ assigns budgets. Disk is granted to an active process until it's budget (number of sectors) expires. BFQ assigns high budgets to non-read tasks. Budget assigned to a process varies over time as a function of it's behavior.
Advantages:
Believed to be very good for usb data transfer rate.
Believed to be the best scheduler for HD video recording and video streaming. (because of less jitter as compared to CFQ and others)
Considered an accurate i/o scheduler.
Achieves about 30% more throughput than CFQ on most workloads.
Disadvantages:
Not the best scheduler for benchmarking.
Higher budget assigned to a process can affect interactivity and increased latency.
Click to expand...
Click to collapse
CFQ
Completely Fair Queuing scheduler maintains a scalable per-process I/O queue and attempts to distribute the available I/O bandwidth equally among all I/O requests. Each per-process queue contains synchronous requests from processes. Time slice allocated for each queue depends on the priority of the 'parent' process. V2 of CFQ has some fixes which solves process' i/o starvation and some small backward seeks in the hope of improving responsiveness.
Advantages:
Considered to deliver a balanced i/o performance.
Easiest to tune.
Excels on multiprocessor systems.
Best database system performance after deadline.
Disadvantages:
Some users report media scanning takes longest to complete using CFQ. This could be because of the property that since the bandwidth is equally distributed to all i/o operations during boot-up, media scanning is not given any special priority.
Jitter (worst-case-delay) exhibited can sometimes be high, because of the number of tasks competing for the disk.
Click to expand...
Click to collapse
SIO
Simple I/O scheduler aims to keep minimum overhead to achieve low latency to serve I/O requests. No priority quesues concepts, but only basic merging. Sio is a mix between noop & deadline. No reordering or sorting of requests.
Advantages:
Simple, so reliable.
Minimized starvation of requests.
Disadvantages:
Slow random-read speeds on flash drives, compared to other schedulers.
Sequential-read speeds on flash drives also not so good.
Click to expand...
Click to collapse
VR
Unlike other schedulers, synchronous and asynchronous requests are not treated separately, instead a deadline is imposed for fairness. The next request to be served is based on it's distance from last request.
Advantages:
May be best for benchmarking because at the peak of it's 'form' VR performs best.
Disadvantages:
Performance fluctuation results in below-average performance at times.
Least reliable/most unstable.
Click to expand...
Click to collapse
Credits
-droidphile
-kokzhanjia
Reseved for kernel info
Sent from my WT19i
I usually go to http://forum.xda-developers.com/showthread.php?t=1369817 to see full explanation of each governor, io scheduler etc
archer928 said:
I always go to http://forum.xda-developers.com/showthread.php?t=1369817 to see full explanation of each governor, io scheduler etc
Click to expand...
Click to collapse
Yeah that one is great. Mine is straight forward i think
EDIT : And now you dont have to go that far now , just click over your development to see these ;D
Sent from my WT19i
Dude... exactly what I need. You are awesome.
archer928 said:
I usually go to http://forum.xda-developers.com/showthread.php?t=1369817 to see full explanation of each governor, io scheduler etc
Click to expand...
Click to collapse
Same here ...
But OP has already credited droidphile. I see!
So all's good!
Sent from my MT11i using xda premium
Ghostfreak NB said:
Same here ...
But OP has already credited droidphile. I see!
So all's good!
Sent from my MT11i using xda premium
Click to expand...
Click to collapse
In xda, i like how different forums have different users with different personalities. so i posted here so that i could feel that feeling again
Sent from my WT19i
Good work OP!
Keep updating whenever you've got time!
Sent from my MT11i using xda premium
kokzhanjia said:
Yeah that one is great. Mine is straight forward i think
EDIT : And now you dont have to go that far now , just click over your development to see these ;D
Click to expand...
Click to collapse
Mine isn't straight forward enough? May be because I over-explain things...
It isn't that 'far' if you bookmark a thread in browser bookmark toolbar
droidphile said:
Mine isn't straight forward enough? May be because I over-explain things...
It isn't that 'far' if you bookmark a thread in browser bookmark toolbar
Click to expand...
Click to collapse
I didnt mean that
What i meant was my thread is only for stuffs mentioned at the title.
No offence friend. Your thread is far more than complete.
Sent from WT19i
droidphile said:
Mine isn't straight forward enough? May be because I over-explain things...
It isn't that 'far' if you bookmark a thread in browser bookmark toolbar
Click to expand...
Click to collapse
Your thread is subscribed so question of it being 'far 'is totally wiped out!
And with that kinda explanation, that you've made,
Your thread rules!
Its best for getting very detailed info!
Just that OP has made a fair attempt to post it in our device forum! And has tried to keep it short!
Sent from my MT11i using xda premium

Whats the best kernel governor that you have use for battery life?

Currently i am still on testing roms and kernel for my perfect daily usage (RN4SD)..when it comes to kernel, it made an ocean of choice in term of choosing governor..so far whats your input on blu_active and impulse? I am using impulse and i notice a greater battery life..i never tested blu active so many years even i have many phones and kernel that offers blu_active governor, i always end up choosing either smartass, impulse or interactive(default option if i had no choice) Impulse and interactive are my number one choice..so i need to hear from you how blu_active reacts on each of your phones..actually im not trying to find the "best" since not every one taste were the same..but i am just trying to fine tune with my daily usage as i dont want to keep on changing kernels and roms every day..it might hurt the battery as well..
Are you using Nougat or Oreo ?
Use interactive governor and change the cpu governor tunables using this thread https://forum.xda-developers.com/redmi-note-4/how-to/tweak-interactive-governor-tunables-t3608118

Categories

Resources