Consolidation of tweaks for redmi 3 (my usage). If you have a tweak you think is useful and want added, just comment in this thread below and I'll add it to OP when possible. Take note, if you use this thread, you are expected to have at least some working knowledge of android and the system. This is not for novices because there is the potential of messing up big time. I will not answer questions like "where can i find buildprop"or "how do I enter this code". This thread is only for discussing tweaks, research, effect/affect and performance.
Rooted users only
CPU hotplugging(only works for miui) - with this, for the most part, BIG will have only 1 CPU online when idle, and so will LITTLE
Big - add this to buildprop
Code:
ro.core_ctl_min_cpu=0
little - use terminal or add to init post boot script
Code:
echo 60 85 95 95 > /sys/devices/system/cpu/cpu4/core_ctl/busy_up_thres
echo 30 50 75 75 > /sys/devices/system/cpu/cpu4/core_ctl/busy_down_thres
I use this in conjunction with the advanced interactive tweaks for insane battery life(up to 1 hour screen on for 10%)
http://forum.xda-developers.com/mi-4i/general/guide-advanced-interactive-governor-t3280391
Code:
CPU #1 (aka "Big", aka "has 4 cores", aka "maxes out at 1665Mhz")
target_loads - 1 960000:80 1113600:85 1344000:90
timer_slack - 80000
hispeed_freq - 1113600
timer_rate - 20000
above_hispeed_delay - 20000 1113600:50000
go_hispeed_load - 85
min_sample_time - 50000
CPU #2 (aka "little", aka "has 4 cores", aka "maxes out at 1113Mhz")
target_loads - 1 800000:80
timer_slack - 80000
hispeed_freq - 998400
timer_rate - 40000
above_hispeed_delay - 10000
go_hispeed_load - 90
min_sample_time - 40000
Fast dormancy - MIUI only, use only if your network supports it
Code:
persist.env.fastdorm.enabled true
persist.fd.scroff.timer 1000
persist.fd.scron.timer 5000
Not to ask to many questions.
But which software do you use to make it smooth like a baby's butt.
Currently I'm using KA and/or EX Kernel Editor, disabled thermal engine but BIG sometimes have no (tunable) governor
atiprusma said:
Not to ask to many questions.
But which software do you use to make it smooth like a baby's butt.
Currently I'm using KA and/or EX Kernel Editor, disabled thermal engine but BIG sometimes have no (tunable) governor
Click to expand...
Click to collapse
KA is fine. I'm using it as well. These questions are welcome, just not questions that can be answered via a general search on google or the forums.
As for your tunable governor, sometimes you might need to reload the governor in KA, meaning you change it to another governor. It does it sometimes.
Thanks for this, very helpful. My main issue with my redmi 3 is the heat (although it's not really hot, I'd rather no heat at all over higher performance).
So I've set
ro.core_ctl_min_cpu=0
ro.core_ctl_max_cpu=0
Meaning no big cores.
I've also set
echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus
So little only has 2 cores running ordinarily. I didn't use your threshold settings above, left those at default and just reduced the number of minimum cores on little.
The biggest boost to performance I've found is just setting:
echo deadline > /sys/block/mmcblk0/queue/scheduler
echo deadline > /sys/block/mmcblk1/queue/scheduler
So overall, happy with these settings. 2 min little cpus, 4 max (default) and no big cores (so doesn't get hot at all) and deadline improves performance so you don't notice the big cores being off for most uses.
FYI
Geekbench 3, single core = 724, 2400ish with (2 big enabled, 4 little, default i/o scheduler)
Geekbench 3, single core = 603, 1800ish with (0 big enabled, 4 little, deadline i/o scheduler)
Not tested the battery life yet, but I'd imagine it would be better.
sc754 said:
Thanks for this, very helpful. My main issue with my redmi 3 is the heat (although it's not really hot, I'd rather no heat at all over higher performance).
So I've set
ro.core_ctl_min_cpu=0
ro.core_ctl_max_cpu=0
Meaning no big cores.
I've also set
echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus
So little only has 2 cores running ordinarily. I didn't use your threshold settings above, left those at default and just reduced the number of minimum cores on little.
The biggest boost to performance I've found is just setting:
echo deadline > /sys/block/mmcblk0/queue/scheduler
echo deadline > /sys/block/mmcblk1/queue/scheduler
So overall, happy with these settings. 2 min little cpus, 4 max (default) and no big cores (so doesn't get hot at all) and deadline improves performance so you don't notice the big cores being off for most uses.
FYI
Geekbench 3, single core = 724, 2400ish with (2 big enabled, 4 little, default i/o scheduler)
Geekbench 3, single core = 603, 1800ish with (0 big enabled, 4 little, deadline i/o scheduler)
Not tested the battery life yet, but I'd imagine it would be better.
Click to expand...
Click to collapse
But disabling all the big cores will essentially meant that you're really, REALLY crippling the phone. In all fairness, the phone handles heat better than the snapdragon 615 by quite a bit. I find that hotplugging generally helps with the heat alot. In Kernel adiutor, why not go to thermal and enable core control instead so that the native thermal engine can do its work? otherwise I would rather disable the small cores, that way you still have that little extra boost of power where you need it with the big ones. the 616 is using all a53 cores i believe, just clocked slightly differently.
davtse said:
But disabling all the big cores will essentially meant that you're really, REALLY crippling the phone. In all fairness, the phone handles heat better than the snapdragon 615 by quite a bit. I find that hotplugging generally helps with the heat alot. In Kernel adiutor, why not go to thermal and enable core control instead so that the native thermal engine can do its work? otherwise I would rather disable the small cores, that way you still have that little extra boost of power where you need it with the big ones. the 616 is using all a53 cores i believe, just clocked slightly differently.
Click to expand...
Click to collapse
True, but I'm not a heavy user in anyway, so this works perfect for me. I'd imagine others would leave the bigger cores on for the slightly better performance. The deadline scheduler gives it great performance for the non heavy multi tasking user like me.
davtse said:
KA is fine. I'm using it as well. These questions are welcome, just not questions that can be answered via a general search on google or the forums.
As for your tunable governor, sometimes you might need to reload the governor in KA, meaning you change it to another governor. It does it sometimes.
Click to expand...
Click to collapse
I can't change my governor after modified the governor it self because no option to change it.
And btw, did you disabled your thermal engine?
atiprusma said:
I can't change my governor after modified the governor it self because no option to change it.
And btw, did you disabled your thermal engine?
Click to expand...
Click to collapse
No my thermal engine is still on. What do you mean you cant change your governor?
davtse said:
No my thermal engine is still on. What do you mean you cant change your governor?
Click to expand...
Click to collapse
After going to cpu governor tunable it happen like this
{
"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"
}
Click to expand...
Click to collapse
And back to cpu option the governor has no option
Click to expand...
Click to collapse
Sent from my Redmi 3 using Tapatalk
atiprusma said:
After going to cpu governor tunable it happen like this
And back to cpu option the governor has no option
Sent from my Redmi 3 using Tapatalk
Click to expand...
Click to collapse
no clue.. you could try the typical fixes first and see if they help, update supersu to beta 2.72, update busybox etc. other than that I don't have this problem so I dont know how to help with this
davtse said:
no clue.. you could try the typical fixes first and see if they help, update supersu to beta 2.72, update busybox etc. other than that I don't have this problem so I dont know how to help with this
Click to expand...
Click to collapse
I'm using bb v13 and supersu 72 already.
Should i modify the thermal engine ?
Sent from my Redmi 3 using Tapatalk
atiprusma said:
I'm using bb v13 and supersu 72 already.
Should i modify the thermal engine ?
Click to expand...
Click to collapse
Up to you.. I generally leave mine lone
what version of MIUI are you guys running? I am having trouble getting the governor changes to stick. I am using MIUI EU ROM 6.5.19. I have found Lollipop to be a real headache for making system level changes.
It is not possible to get it to stick at all.
I have tried using KA and Ex kernel but it is not working properly. I tried writing the little core mod into a a script but it didn't work. I have root and TWRP. My busy box version is new. I moved KA to the system partition and I think it is working better now but still it often tells me the governor is not tune-able or gives me a blank list in the governor selection list.
echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpus
Or
echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpu
Or
echo 2 > /sys/devices/system/cpu/cpu4/core_ctl/min_cpu2
I got all that to work finally after plowing around for a while and updating and moving apps to the system partition and adjusting power nap. The only thing I'm still not sure about is how to set the little cpu to two on. But I have been getting about 10% per hour screen on time with 1-2 percent drain through the night. Thank you guys.
Supermatt01 said:
I got all that to work finally after plowing around for a while and updating and moving apps to the system partition and adjusting power nap. The only thing I'm still not sure about is how to set the little cpu to two on. But I have been getting about 10% per hour screen on time with 1-2 percent drain through the night. Thank you guys.
Click to expand...
Click to collapse
the min for little CPU doesnt seem to respect the terminal command for it, only the up threshold and down threhold.
you can try insmod the core_ctrl.ko and see if that helps
Okay, thanks, I will have to learn about that first
after applying the cpu tweak should i have to turn on "apply on boot"??
Riyad_ said:
after applying the cpu tweak should i have to turn on "apply on boot"??
Click to expand...
Click to collapse
If you use KA, then you should turn it on.
Sent from my ASUS_Z00A using XDA Labs
Related
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 XPlay 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 *
* Haven't gathered much needed information. Will add it later.
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
Reserved for kernel infos
Sent from my WT19i
Yes, we do have kernels with Lionheart, lulzactive and intellidemand.
Nice reference cheers.
Sent from Xperia Play (R800a) with Tapatalk
CosmicDan said:
Yes, we do have kernels with Lionheart, lulzactive and intellidemand.
Nice reference cheers.
Sent from Xperia Play (R800a) with Tapatalk
Click to expand...
Click to collapse
Really ? Okay will add it in later
Sent from my WT19i
kokzhanjia said:
Really ? Okay will add it in later
Sent from my WT19i
Click to expand...
Click to collapse
Yeah LuPuS has Lulzactive, Virtuous, Intellidemand, Lazy, Ondemandx, Lionheart and Badass added (but no mention of LionheartX).
Turbo kernel also has intellidemand but the parameters have been modified quite a bit (by me) to suit our snapdragon SOC's better. I think wedgess also put these changes into LuPuS too (at least one of the ICS/JB kernels he builds he said he did). The browser mode still has no effect AFAIK but in my experience it's more battery-friendly and better performance than on-demand (thanks mainly to dbus_input ramping). But many users have reported slightly better gaming experience with SmartAssv2.
Great reference, this will be of much help to new comers, thanks for the hard work you put into this.
CosmicDan said:
Yeah LuPuS has Lulzactive, Virtuous, Intellidemand, Lazy, Ondemandx, Lionheart and Badass added (but no mention of LionheartX).
Turbo kernel also has intellidemand but the parameters have been modified quite a bit (by me) to suit our snapdragon SOC's better. I think wedgess also put these changes into LuPuS too (at least one of the ICS/JB kernels he builds he said he did). The browser mode still has no effect AFAIK but in my experience it's more battery-friendly and better performance than on-demand (thanks mainly to dbus_input ramping). But many users have reported slightly better gaming experience with SmartAssv2.
Click to expand...
Click to collapse
Yeah. Saw your work Nice one.. anymore in depth infos about kernels at here ? I want to add a bonus one for this..
paragroth said:
Great reference, this will be of much help to new comers, thanks for the hard work you put into this.
Click to expand...
Click to collapse
Thanks
Coloured signatures are nice
Nah that's pretty much it
Sent from Xperia Play (R800a) with Tapatalk
Throughout my experience(mainly from observing CPU speeds during music playback), I found that:
Scary:
Ramps up to max after reaching a threshold (50/60% CPU load) then slow scales down to match as 50-80% CPU Load @ X MHz. After a while if load lowers (30-40%), it will clock down to match the 50-80% load. You will see a lot of 100% @ low MHz with this governor.
SavagedZen:
It maintains a 80-90% CPU Load @ X MHz for a fairly constant load. This one also scales based on the Max CPU Freq. settings. So the lower your Max CPU Freq, the better it is at maintaining the CPU Load/MHz balance (for music playback at least).
I didn't look at the source, so these are just from observations only. So I might be talking out of my ass.
Also, having good CPU Load at appropriate CPU Speeds may or may not contribute to battery life. No experiments showed that yet iirc.
Monitoring done via "Diagnosis - System Information" an app that generates an overlay with whatever information your want ie cpu load, speed, memory free, used, disk io, network io, etc.
Refresh rate kept at 5 seconds to keep CPU Load interference minimal (lower than ICS/JB CPU Info overlay from Development, Settings tab).
Great thread, this should be sticky!
jabberwocky_one said:
Throughout my experience(mainly from observing CPU speeds during music playback), I found that:
Scary:
Ramps up to max after reaching a threshold (50/60% CPU load) then slow scales down to match as 50-80% CPU Load @ X MHz. After a while if load lowers (30-40%), it will clock down to match the 50-80% load. You will see a lot of 100% @ low MHz with this governor.
SavagedZen:
It maintains a 80-90% CPU Load @ X MHz for a fairly constant load. This one also scales based on the Max CPU Freq. settings. So the lower your Max CPU Freq, the better it is at maintaining the CPU Load/MHz balance (for music playback at least).
I didn't look at the source, so these are just from observations only. So I might be talking out of my ass.
Also, having good CPU Load at appropriate CPU Speeds may or may not contribute to battery life. No experiments showed that yet iirc.
Monitoring done via "Diagnosis - System Information" an app that generates an overlay with whatever information your want ie cpu load, speed, memory free, used, disk io, network io, etc.
Refresh rate kept at 5 seconds to keep CPU Load interference minimal (lower than ICS/JB CPU Info overlay from Development, Settings tab).
Click to expand...
Click to collapse
Nono you are right. I read these before and your observation is just about it, thanks for the info
chabbe11 said:
Great thread, this should be sticky!
Click to expand...
Click to collapse
Thank you
Sent from my WT19i with Real Xperia r1
Am I setting it up the right way?
{
"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"
}
I prefer using that minimum and maximum.
And would this screen off profile work, even if I have configured the main minimum? The 100mhz for screen off really saves a lot of my battery.
Sent from my R800i using Tapatalk 2
Gr8 helped me a lot in understanding alll of this .....
bhavei said:
Am I setting it up the right way?
I prefer using that minimum and maximum.
And would this screen off profile work, even if I have configured the main minimum? The 100mhz for screen off really saves a lot of my battery.
Sent from my R800i using Tapatalk 2
Click to expand...
Click to collapse
Yes it is right. I didnt really tried the other way that you mentioned, because i have No-Frills pre-installed in my settings..but i see it worked. Of course it will save battery.. Nice
piku2008 said:
Gr8 helped me a lot in understanding alll of this .....
Click to expand...
Click to collapse
Will add more soon About kernels, Is there any BFS kernels around here ? Most kernels are CFS..
Sent from my WT19i with Real Xperia r1
kokzhanjia said:
About kernels, Is there any BFS kernels around here ? Most kernels are CFS..
Click to expand...
Click to collapse
There was, I ported it over a few months ago. But I removed it because it was causing priority issues. The latest BFS patch for our kernel has some critical bugs, so I ditched it. When I get ext# fixed in .60 kernel up and going I will probably take another crack at it, backporting one of the more recent 3.x BFS versions.
One of the LuPuS kernels might still have na laternative BFS version, but I think wedgess stopped building it for the same reason as me.
CosmicDan said:
There was, I ported it over a few months ago. But I removed it because it was causing priority issues. The latest BFS patch for our kernel has some critical bugs, so I ditched it. When I get ext# fixed in .60 kernel up and going I will probably take another crack at it, backporting one of the more recent 3.x BFS versions.
One of the LuPuS kernels might still have na laternative BFS version, but I think wedgess stopped building it for the same reason as me.
Click to expand...
Click to collapse
I see, there are really few BFS based kernels out there. BFS is better in my opinion so i would like to elaborate more about BFS to attract more users.
Btw, one guy in Xperia Mini, Mini Pro and Active forums had already successfully making it up and running for stock and CM ROMs. Its already hitted version 2.3
Maybe you could get some help from him ? Name is Mesa Kernel.
Sent from my WT19i with Real Xperia r1
kokzhanjia said:
I see, there are really few BFS based kernels out there. BFS is better in my opinion so i would like to elaborate more about BFS to attract more users.
Btw, one guy in Xperia Mini, Mini Pro and Active forums had already successfully making it up and running for stock and CM ROMs. Its already hitted version 2.3
Maybe you could get some help from him ? Name is Mesa Kernel.
Sent from my WT19i with Real Xperia r1
Click to expand...
Click to collapse
I was using v0.313 of BFS, it wasn't that hard - just had to adapt the patch for the Xperia's stupid kernel. That version is so unstable and buggy, in fact all 2.6.x BFS patches were so problematic that the official page has removed them.
I'll check it out, if he back-ported BFS for Linux kernel 3.0 and has them on GitHub, otherwise it would be easier just to do it myself. But I have other more important concerns for Zeus development right now, BFS doesn't really bring any significant performance boost (which is why it is continually rejected from AOSP inclusion).
CosmicDan said:
I was using v0.313 of BFS, it wasn't that hard - just had to adapt the patch for the Xperia's stupid kernel. That version is so unstable and buggy, in fact all 2.6.x BFS patches were so problematic that the official page has removed them.
I'll check it out, if he back-ported BFS for Linux kernel 3.0 and has them on GitHub, otherwise it would be easier just to do it myself. But I have other more important concerns for Zeus development right now, BFS doesn't really bring any significant performance boost (which is why it is continually rejected from AOSP inclusion).
Click to expand...
Click to collapse
Oh... i didnt know that.. anyway, I don't think he has his github set up. I didnt saw a link to his github on his thread. And isnt BFS aimed for forward looking(like only performing on a task that is given without any concerns) ? I read about it at google docs about it. And i don't really know how to explain it clearly..
Good luck in your development my frirend. And this thread has been moved to General section. Hope you can find it and Nice to have another friend
Sent from my WT19i with Real Xperia r1
This is nice info,
Thanks
Thanks man. This is awesome. Much appreciated
★ ☆ [Kernel] NuK3RN3L | s2w+s2s | 01-21-14 | 1,900MHz | 3.0.84 | Sense/AOSP | ☆ ★
-NuK3RN3L-
OVERCLOCKED
Edition
Now added!
Santod's Mecha ICS Sense/AOSP Kernel
{
"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"
}
DOWNLOAD:
NuK3rn3l mecha Final
sweep2wake
sweep2sleep
16 Governors
TCP Controls
Zram/Swap
Linaro
OTG
01-20-14
Use Trickster Mod to enable Wake options
You need an updated version of Busybox from the Play Store to use Trickster Mod.
Once that's installed, open it and run the installer.
Then you can install Trickster Mod, grant it su permissions, and use it to enable s2w+s2s and adjust all other kernel settings and tweaks.
Trickster Mod can be found here.
-NuK3RN3L-
stock frequencies
current build
~ or ~
NuK3RN3L-
Overclocked Edition
1,516MHz Default/Max
current build 6-25-13
+ LagFree
-NuK3RN3L-
Aosp NuK3RN3L, with working wifi on Aosp ICS and Jelly Bean.
Only use this for this one on Aosp roms. (CM9/CM10)
[URL="http://www.androidfilehost.com/?fid=23017610006233856"]NuK3RN3L ICS/JB Aosp OC Edition
[/URL]
These have been well tested, but use at your own risk!
I am not responsible for you or your device or anything that you do to it!
Included Governors:
SavagedZen
lulzactive
adaptive
hyper
scary
skywalker
brazilianwax
fantasy
SmartassV2
interactive
conservative
userspace
powersave
lionheart
ondemand
performance
How to install:
Flash zip in Recovery
Wipe cache and Dalvik cache
Reboot
This can be flashed to any current ICS roms!
Sense and AOSP!
NuK3RN3L was initially built for Sense roms, it has been confirmed to be working on Joe Black's latest CM9 build, though it needs a little camera patching...
Looks like we may have an AOSP/Sense ICS Hybrid Kernel.
On Aosp, Data and Netflix do work, camcorder not yet.
Will work on things with Joe to improve this.
Click to expand...
Click to collapse
I will try and update my git repo every 7-90 days until I automate it into my buildbox process...
Compiled using the 4.4.3 gcc toolchain.
Big thanks to my buddy Ziggy for his help and inspiration.
XXPachaXX for his work on msm7x30
Flemmard for his work on msm7x30
Also to HTC for finally releasing the source code...
HTCDEV Source files: my copy
FAQ:
Hopefully this answers some common questions.
I will add to this as kernel changes are made.
On UnSenseROM Jelato, there is a script in /system/etc/init.d called 00_vdd_levels if I recall the name exactly.
It's essentially a text file that should be either deleted, or remove the ## from the name of it so it doesn't run at boot.
Then whatever app is used to control governors and clock speeds will not get reset upon rebooting, whether you use the built in CPU Controls or No Frills, etc,..
On my other roms, the same rule applies, if there is a script in /system/etc/init.d with vdd levels in the name, remove it or rename it.
On NuSenseX ROM you should be careful touching anything in init.d, or you could break your wifi connection.
Soon, I intend to have kernels that will be baked into each rom, and there will be no need to concern oneself with any of this, and it's really nothing of much concern anyhow.
But I think that about covers most cases...
____
GOVERNORS
1) Ondemand:
Default governor in almost all stock kernels.
One main goal of the ondemand governor is to switch to max frequency as soon as there is a CPU activity detected to ensure the responsiveness of the system.
Effectively, it uses the CPU busy time as the answer to "how critical is performance right now" question.
So Ondemand jumps to maximum frequency when CPU is busy and decreases the frequency gradually when CPU is less loaded/apporaching idle.
Even though many of us consider this a reliable governor, it falls short on battery saving and performance on default settings.
One potential reason for ondemand governor being not very power efficient is that the governor decide the next target frequency by instant requirement during sampling interval.
The instant requirement can respond quickly to workload change, but it does not usually reflect workloads real CPU usage requirement in a short enough time and it may cause it to frequently change between highest and lowest frequency.
2) Conservative:
A slower Ondemand which scales up slowly to save battery.
The conservative governor is based on the ondemand governor.
It functions like the Ondemand governor by dynamically adjusting frequencies based on processor utilization.
However, the conservative governor increases and decreases CPU speed more gradually.
Simply put, this governor increases the frequency step by step on CPU load and jumps to lowest frequency on CPU idle.
Conservative governor aims to dynamically adjust the CPU frequency to current utilization, without jumping to max frequency.
The sampling_down_factor value acts as a negative multiplier of sampling_rate to reduce the frequency that the scheduler samples the CPU utilization.
For example, if sampling_rate equal to 20,000 and sampling_down_factor is 2, the governor samples the CPU utilization every 40,000 microseconds.
3) Interactive:
(currently my recommended governor for best overall battery and performance)
Can be considered a faster ondemand. So - more snappier, less battery!
Interactive is designed for latency-sensitive, interactive workloads.
Instead of sampling at every interval like ondemand, it determines how to scale up when CPU comes out of idle.
The governor has the following advantages:
1) More consistent ramping, because existing governors do their CPU load sampling in a workqueue context, but interactive governor does this in a timer context, which gives more consistent CPU load sampling.
2) Higher priority for CPU frequency increase, thus giving the remaining tasks the CPU performance benefit, unlike existing governors which schedule ramp-up work to occur after your performance starved tasks have completed.
Interactive - It's an intelligent Ondemand because of stability optimizations. Why??
Sampling the CPU load every X ms (like Ondemand) can lead to under-powering the CPU for X ms, leading to dropped frames, stuttering UI, etc.
Instead of sampling the CPU at a specified rate, the interactive governor will check whether to scale the CPU frequency up soon after 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 very busy between exiting idle and when the timer fires, then we assume the CPU is underpowered and ramp to max frequency.
4) Userspace:
Instead of automatically determining frequencies, lets user set frequencies.
5) Powersave:
Locks max frequency to min frequency.
Can not be used as a screen-on or even screen-off (if scaling min frequency is too low).
6) Performance:
Sets min frequency to max frequency.
Use this while benchmarking!
7) SmartassV2:
Version 2 of the original smartass governor from Erasmux. Another favorite for many a people.
The governor aim for an "ideal frequency", and ramp up more aggressively towards this freq and less aggressive after.
It uses different ideal frequencies for screen on and screen off, namely awake_ideal_freq and sleep_ideal_freq.
This governor scales down CPU very fast (to hit sleep_ideal_freq soon) while screen is off and scales up rapidly to awake_ideal_freq (500 mhz for GS2 by default) when screen is on.
There's no upper limit for frequency while screen is off (unlike Smartass).
So the entire frequency range is available for the governor to use during screen-on and screen-off state.
The motto of this governor is another option for balance between performance and battery.
8) Lulzactive:
Basically interactive governor with added smartass bits and variable (as opposed to fixed amout) frequency scaling, based on currently occuring cpu loads.
Like smartass, it has a sleep profile built-in.
9) Lagfree:
Lagfree is similar to ondemand. Main difference is it's optimization to become more battery friendly. Frequency is gracefully decreased and increased, unlike ondemand which jumps to 100% too often. Lagfree does not skip any frequency step while scaling up or down. Remember that if there's a requirement for sudden burst of power, lagfree can not satisfy that since it has to raise cpu through each higher frequency step from current. Some users report that video playback using lagfree stutters a little.
____
So, Governors can be categorized into 3/4 on a high level:
1.a) Ondemand Based:
Works on "ramp-up on high load" principle. CPU busy-time is taken into consideration for scaling decisions.
Members: Ondemand, OndemandX, Intellidemand, Lazy, Lagfree.
1.b) Conservative Based:
Members: Conservative, Lionheart, LionheartX
2) Interactive Based:
Works on "make scaling decision when CPU comes out of idle-loop" principle.
Members: Interactive, InteractiveX, Lulzactive, Luzactiveq, Smartass, SmartassV2, Brazilianwax, SavagedZen.
3) Weird Category:
Members: Userspace, Powersave, Performance.
Click to expand...
Click to collapse
___
Changelog:
__
062513
Updated 1,516 OC'd Edition!
Added Governors:
LagFree
Lulzactive
SmartassV2
7 more modules built in
062213
Added 1,516 OC'd Edition!
Adjusted cpu frequency tables
Adjusted voltages
Enabled 1,516 MHz Overclock as Default
062113
Powersave governor added for those of you trying to squeeze more out of the battery, or only using the device on wifi.
062013
Interactive governor added for better response time, keyboard reaction, etc,..
Reserved...
NuK3RN3L is also now booting with AOSP JellyBean.
Stay Tuned!!!!
santod040 said:
NuK3RN3L is also now booting with AOSP JellyBean.
Stay Tuned!!!!
Click to expand...
Click to collapse
Any chance of a dual boot setup?
Check out the Devil kernel and recovery for the note 2......
Would be nice to have a slimmed down AOSP ROM and a Sense one for when you wanted it.
I'm not trying to be rude to anyone but let's keep the feature requests to a minimum until he gets the more important aspects worked out. There is a lot of testing going on with just what this kernel can do as we speak. I'm sure once things calm down the other features can be implemented.
Sent from my ADR6400L using Tapatalk 2
Says AOSP in the title. Can this be used with the CM9 in this thread?
Sent from my NusenseX Bolt using Tapatalk 2
arizonaomnia said:
Says AOSP in the title. Can this be used with the CM9 in this thread?
Sent from my NusenseX Bolt using Tapatalk 2
Click to expand...
Click to collapse
This can be flashed to any current ICS roms!
Sense and AOSP!
NuK3RN3L was initially built for Sense roms, it has been confirmed to be working on Joe Black's latest CM9 build, though it needs a little camera patching...
Looks like we may have an AOSP/Sense ICS Hybrid Kernel.
On Aosp, Data and Netflix BOTH work, camcorder not yet.
Will work on things with Joe to improve this.
Congrats on RLS brosif these guys are lucky you are still carrying the infected flame for this phone !!!!
santod040 said:
This can be flashed to any current ICS roms!
Sense and AOSP!
NuK3RN3L was initially built for Sense roms, it has been confirmed to be working on Joe Black's latest CM9 build, though it needs a little camera patching...
Looks like we may have an AOSP/Sense ICS Hybrid Kernel.
On Aosp, Data and Netflix BOTH work, camcorder not yet.
Will work on things with Joe to improve this.
Click to expand...
Click to collapse
Anyone know if it fixes the Gmail whiteout? I can live without the camcorder but the Gmail thing was too much.
Sent from my NusenseX Bolt using Tapatalk 2
Virus said:
Congrats on RLS brosif these guys are lucky you are still carrying the infected flame for this phone !!!!
Click to expand...
Click to collapse
Good to see you here @Virus.
I haven't seen you since my EVO days!
i flashed both the stock and oc'd versions of this kernel over joe black's cm9 (which was also clean flashed... even wiped my sd) and wifi isn't working. it flat out won't turn on.
i don't have my tbolt in service anymore, so without wifi, i can't use it at all. wifi worked with the included kernel on joe's cm9 rom.
i'm a little pressed for time at the moment, but if a logcat would be helpful, lemme know and i'll post one when i'm back from vacation at the end of the upcoming week.
namurt said:
i flashed both the stock and oc'd versions of this kernel over joe black's cm9 (which was also clean flashed... even wiped my sd) and wifi isn't working. it flat out won't turn on.
i don't have my tbolt in service anymore, so without wifi, i can't use it at all. wifi worked with the included kernel on joe's cm9 rom.
i'm a little pressed for time at the moment, but if a logcat would be helpful, lemme know and i'll post one when i'm back from vacation at the end of the upcoming week.
Click to expand...
Click to collapse
Yeah that's a known issue with flashing it seperate.
There's a couple things not included in the kernel zip, that have to be changed Rom side.
These changes are easily made and Joe should have an update posted soon with this kernel in it and the needed Rom files to have WiFi working.
Sorry for the inconvenience.
It's just become known it would work as well as it does.
Fixes and improvements to his Rom and this kernel are coming.
If he doesn't have it up soon, I'll post a patch for using this on his Rom.
Sent from my HTC6435LVW using xda app-developers app
sweet jesus, you are one amazing dev!
that was a lightning quick response, hah.
it's so nice to see our bastard child of a device still getting some love.
santod040 said:
NuK3RN3L is also now booting with AOSP JellyBean.
Stay Tuned!!!!
Click to expand...
Click to collapse
You know....if you WANTED to....you know, just for sh1ts and giggles.....you COULD post the version of this without working data, just to give a preview and let people play with it. I remember that Liquid did something similar with an early build of OCS for the Thunderbolt. Or not. Whatever you want to do is fine, of course.
*drooling*
Sent from my NusenseX Bolt using Tapatalk 2
namurt said:
sweet jesus, you are one amazing dev!
that was a lightning quick response, hah.
it's so nice to see our bastard child of a device still getting some love.
Click to expand...
Click to collapse
Yep, santod is the man, no doubt about it.
This device launched more than 2 years ago with froyo, was upgraded to gingerbread, eventually got ICS, and may yet see unofficial jellybean!? That's an amazing run for any phone IMHO.
santod040 said:
NuK3RN3L is also now booting with AOSP JellyBean.
Stay Tuned!!!!
Click to expand...
Click to collapse
where i can find thunderbolt aosp jelly bean ROM...
olredi tried this kernel on Jelato ROM and make ma fone awesomely blasting fast :good:
guinzo said:
where i can find thunderbolt aosp jelly bean ROM...
olredi tried this kernel on Jelato ROM and make ma fone awesomely blasting fast :good:
Click to expand...
Click to collapse
AOSP jellybean hasn't been released yet, they're still working on it.
quickdraw86 said:
Yep, santod is the man, no doubt about it.
This device launched more than 2 years ago with froyo, was upgraded to gingerbread, eventually got ICS, and may yet see unofficial jellybean!? That's an amazing run for any phone IMHO.
Click to expand...
Click to collapse
+1
Santod, Chief Executive Officer
Sent from my ADR6400L using xda app-developers app
Can anyone please test and see if Onavo works with this kernel? Thanks.
https://play.google.com/store/apps/details?id=com.onavo.android.onavoics
Hey guys, eskriminal here
There's been interest shown by some users of dorimanx kernel to use the profiles in stweaks of some specific people with success (e.g. myself, @rkoby13 and @infatality)
So this thread is here to provide download links for profiles with various goals/strengths, and they'll be indexed in the second post here.
The main profiles will be those of me and @rkoby13, though if anyone has a profile to share and it's found to be good, it may be included in op as well
Instructions for installing profiles!
1. Ensure the kernel version of the backup (will be listed here) is compatible with your installed kernel version.
2. Select the profile you want (generally you should try them out to work out what's best for you)
3. Download the profile, and copy it to /data/.siyah/ on your phone (from root directory)
4. Go into STweaks and ensure you're on default profile, then select to Restore your profile backup.
5. Reboot and check if it was applied in STweaks! Enjoy!
To all posting profiles: please do not include any undervolting in the profiles posted here, only those given by pm. If your profile has undervolting, copy that section of the default profile and paste it over your changes prior to uploading. GPU undervolting is permissible if not too extreme.
ANY OVERCLOCK MUST BE STATED CLEARLY IN THE POST CONTAINING YOUR PROFILE.
Profiles:
1. 9.40 - eskriminal - zzmoove heavy battery tuning - CPU Underclock 1gz - GPU Underclock/Undervolt
Soon to be expanded!
eskriminal's profile flasher! is here
credits to @dorimanx, I used his updater script as base because the s2 has stupid mount points and I couldn't remember what they were
to use it open up the zip and put your profile in the data/.siyah folder
I haven't tested but it *should* work fine
Reserved
Great work guys. This looks to be a very helpful idea.
Sent from my GT-I9100 using XDA Premium 4 mobile app
Updated on 09/09/2013
My default profiles Dropbox folder
My DB folder....with default.profile and default.profile_backup ....
1st is for manual restore via data/.siyah/* replacement and/or via Stweaks by putting it to root of internal sdcard and restore via Stweals backup/restore tab....reboot in both cases! @eskriminal you can add them to your OP
>>>UPDATE: 26/10/2013
My DB folder above is updated with new profiles for backup/restore via Stweaks and for manual restore via replacing default.profile in data/.siyah/*
Details :Check it out before use:good:....note that profile is meant to be used with 9.43 official release by @dorimanx and I'm not responsible if your device blows up or you lose data or something if you will use it on another version of kernel
released. It's stable for me and it feels like :tank: :good:
Edit:...I have it perfectly stable and smooth with these settings...no SoDs freezes or such....:good:
and check spoiler for FUN:
{
"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"
}
and as always....enjoy folks
Great work
Posté via Vanilla Rootbox
Subscribed!
Sent from my GT-I9100 using Tapatalk 4
Would be a good idea to publish and battery life...
vrwmiaris1 said:
Subscribed!
Sent from my GT-I9100 using Tapatalk 4
Click to expand...
Click to collapse
+1
Sent from my GT-I9100
Also subscribed, great work eskriminal (I'm mostly a silent lurker, but follow all 4 dori kernel threads).
Just wondering if the profiles posted here will be for only the official builds & releases? Or if you will have a separate section (maybe in 2nd or 3rd post) for beta version profiles? No pressure, just wondering.
Sent from a galaxy far, far away
Haha.. I just realized this thread on my email! I will post my battery and default profile this evening especially for those on group 2!:sly:
Sent from my Nexus 7 using Tapatalk 4
Hopper8 said:
Also subscribed, great work eskriminal (I'm mostly a silent lurker, but follow all 4 dori kernel threads).
Just wondering if the profiles posted here will be for only the official builds & releases? Or if you will have a separate section (maybe in 2nd or 3rd post) for beta version profiles? No pressure, just wondering.
Sent from a galaxy far, far away
Click to expand...
Click to collapse
yep mate, the version will be listed with the profile in the op, and I at least will update for each beta, and probably the others will too
dinos3 said:
Would be a good idea to publish and battery life...
Click to expand...
Click to collapse
I won't be doing this unless there's a lot of demand due to the fact that a major part of battery life is irrelevant to kernel parameters
Sent from my GT-I9100 using XDA Premium 4 mobile app
Default profile, v9.40.
This profile is for anyone who wants a profile which is based on the stock profile but with extra performance. It intentionally doesn't use all the 'cutting edge' governors and io schedulers. Its meant to be fast & stable. Using tuned hyper wake & a tuned conservative sleep. Sio /noop io schedulers.
OVERCLOCK CPU to 1.4 GHz (voltages untouched)
GPU OVERCLOCK - 330Mhz (voltage raised for step 5 as it's a higher clock speed). Also minimum GPU speed is 160Mhz.
This profile is one I have been tweaking for about a month over various kernel releases. It is intended for the quickest UI (scrolling, opening apps especially) but without sacrificing battery (I get 5.5 hour screen time). It will not work well for gaming due to io scheduler used.
Not that it matters, but for anyone interested this profile gets over 5000 in quadrant & 12500 in antutu.
http://db.tt/2eGnfGiR
@eskriminal please let me know if this is not how you intended users to upload their profiles. I'm happy to edit my post & (even take down) my profile if you desire, just trying to help
Edit : NOTE: I use the 'force auto data & force auto wifi' options under the 'tweaks' tab. If anyone uses my profile then that will disable data while screen is off. You may want to uncheck those boxes in Stweaks.
Sent from a galaxy far, far away
Hopper8 said:
Default profile, v9.40.
This profile is for anyone who wants a profile which is based on the stock profile but with extra performance. It doesn't use all the 'cutting edge' governors and io schedulers, intentionally. Its meant to be fast & stable. Using tuned hyper wake & a tuned conservative sleep. Sio /noop io schedulers.
OVERCLOCK CPU to 1.4 GHz (voltages untouched)
GPU OVERCLOCK - 330Mhz (voltages raised for step 5). Also minimum GPU speed is 160Mhz.
This profile is one I have been tweaking for about a month over various kernel releases. It is intended for the quickest UI (scrolling, opening apps especially) but without sacrificing battery (I get 5.5 hour screen time). It will not work well for gaming due to io scheduler used.
Not that it matters, but for anyone interested this profile gets over 5000 in quadrant & 12500 in antutu.
http://db.tt/2eGnfGiR
@eskriminal please let me know if this is not how you intended users to upload their profiles. I'm happy to edit my post & (even take down) my profile if you desire, just trying to help
Edit : NOTE: I use the 'force auto data & force auto wifi' options under the 'tweaks' tab. If anyone uses my profile then that will disable data while screen is off. You may want to uncheck those boxes in Stweaks.
Sent from a galaxy far, far away
Click to expand...
Click to collapse
that is exactly how you should post it, good job
not all those details are necessary, but they're fine to include if you have time
Sent from my GT-I9100 using XDA Premium 4 mobile app
Nice thread for newbs like me in kernel tuning
Sent from my GT-I9100 using Tapatalk 4
@rkoby13, your setup at least working like a charm so far. Even Facebook app has lost its scrolling lag mostly. Curious how battery is affected by this "nitro-setup" ^_^
Sent from my GT-I9100 using Tapatalk 4
Truman82 said:
@rkoby, your setup at least working like a charm so far. Even Facebook app has lost its scrolling lag mostly. Curious how battery is affected by this "nitro-setup" ^_^
Sent from my GT-I9100 using Tapatalk 4
Click to expand...
Click to collapse
it's not nitro setup.....GPU quad core does it's job as it should at first place.....that's the place where boost comes out...:good:...GPU config is very important performance wise....at least for me.......you can oc your cpu up to 1.6 ghz and if you'll leave gpu set like it's set by default your scrolling & apps opening feeling won't be much better....so I pushed up last 2 gpu steps to 400mhz -1200mv and 440mhz. - 1250mv ....try to disable VPLL mode and reboot....you'll notice what i'm sayin'
Sent from Android 4.3:good:
Everyone check the second op, nice surprise there
Sent from my GT-I9100 using XDA Premium 4 mobile app
eskriminal said:
Profiles:
1. 9.40 - eskriminal - zzmoove heavy battery tuning - CPU Underclock 1gz - GPU Underclock/Undervolt
Soon to be expanded!
Click to expand...
Click to collapse
oops I don't even forum
eskriminal said:
oops I don't even forum
Click to expand...
Click to collapse
added to my db aswell :good:
neat...
Sent from Android 4.3:good:
In 2015, Galaxy S3 is a quite old device. It was introduced in 2012, with a lot of supporters around the world. I think it is the best smartphone of Samsung ever. And in 2015, it is still a good phone with latest software update from other developers
These are my combinations of roms, kernels, mods and tweaks of my Galaxy S3 (i9300). I think it is the best combination ever, with good performance and experience. Remember that this is my own opinion, so maybe it won't appropriate with somebody. Anyway, let's get start!!!
ROM
Cyanogenmod is undoubtedly the most popular and best-performance rom ever. It is based on Stock Android, so it runs very smooth and has brilliant performance, especially in Benchmark Test. Android 5.0 Lollipop is released, then our S3 has a very good CM12 rom with latest software version. I have used this rom for 4 months, and I do not expect anything more about my phone because it runs PERFECTLY.
Link for Cyanogenmod 12 rom: http://forum.xda-developers.com/galaxy-s3/development/wip-cyanogenmod-12-t2936990
{
"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"
}
KERNEL
Since Siyah kernel is end-of-development, Boeffla Kernel is a perfect alternative. This kernel brings us a lot of things : change CPU governers, overclock CPU (up to 1600 Mhz) and GPU (640 Mhz), sound tweaks, undervolt CPU and GPU, etc. It lets us to control our devices freely and effectively. It also gives us brilliant battery performance.
Links for Boeffla Kernel i9300: http://forum.xda-developers.com/gal...rnel-boeffla-kernel-2-2-stable-27-03-t2449408
MODS
When I bought my Galaxy S3, I soon realized that is had a poor sound experience. So I looked for a sound mods that it improves my phone speaker. And fortunately, I have found a thread that had an amazing work: ACID Audio Engine. It gives me many positive improvements with i9300 sounds, and I have the best sound experience ever.
Link for ACID Audio Engine mod: http://forum.xda-developers.com/galaxy-s3/development/mod-acid-audio-engine-v5-0-samsung-t2002197
APPS & GAMES
I am a student, so I do not have much working or business apps. These app below are mostly entertaining apps : music, games,…
Google Camera: easy, simple and functional interface
https://play.google.com/store/apps/details?id=com.google.android.GoogleCamera
Inbox by Google: a beautiful Material Design email app, and officially published by Google
https://play.google.com/store/apps/details?id=com.google.android.apps.inbox
Google Keep: easy for taking notes with texts, images and many cute symbols…
https://play.google.com/store/apps/details?id=com.google.android.keep
Zedge: up-to-date beautiful wallpapers, ringtones and other stuffs.
https://play.google.com/store/apps/details?id=net.zedge.android
Wolfram Alpha: as a student, I have to do a lot of calculating exercises. This app is my perfect assistant at school, especially in Maths lessons.
https://play.google.com/store/apps/details?id=com.wolfram.android.alpha
Fenix: my daily Twitter app
https://play.google.com/store/apps/details?id=it.mvilla.android.fenix
Seeder: it is undeniable that many Android devices become slower and slower after long time using them. Seeder helps us to prevent this problem. It gives us a smooth experience with no lags and FC’s.
http://forum.xda-developers.com/showthread.php?t=1987032
Xposed Installer + Gravity Box(LP) : best apps for interface editing, mods, and tweaks
http://forum.xda-developers.com/showthread.php?t=3034811
Ram Manager Pro: a lot of RAM options, swap RAM (up to 2GB), friendly interface.
https://play.google.com/store/apps/details?id=com.smartprojects.RAMOptimizationFree
FIFA 15: Since FIFA 16, in my opinion, is not as good as FIFA 15 (graphics problems, worse user interface,…), I am still playing with my own Ultimate Team. Best Sport app ever.
https://play.google.com/store/apps/details?id=com.ea.game.fifa15_row
Asphalt 8: Racing games with a lot of cars, roads and game modes, brilliant graphics.
https://play.google.com/store/apps/details?id=com.gameloft.android.ANMP.GloftA8HM
Leo’s Fortune: This is the best graphics games ever…
https://play.google.com/store/apps/details?id=com.leosfortune
TWEAKS & SELF-EXPERIENCE
CPU governer: ondemand
I/O Scheduler: deadline
Max freq: 1400 Mhz
Min freg: 200 Mhz
Undervolt CPU: -75mV
GPU freq: 160/266/350/440/533
GPU undervolt: -75mV
Build.prop tweaks:
Fast Reboot
persist.sys.purgeable_assets=1
Render UI with GPU
debug.sf.hw=1
Increasing It Will Make Mobile Smoother
windowsmgr.maxevents_per_sec=150
Video Acceleration Enabled
video.accelerate.hw=1
Increase Performance
debug.performance.tuning=1
Disable Sending Usage Data
ro.config.nocheckin=1
Deeper Sleep / Better Battery Life
ro.ril.disable.power.collapse=1
pm.sleep_mode=1
Disable BootAnimation
debug.sf.nobootanimation=1
Faster Scrolling
ro.max.flingvelocity=12000ro.min.fling_velocity=8000
sorry for this,but,either u are not informed on whats going on these days,or just lack of knowledge.
this version you chose as your rom is EOL state,and its much worse than any rom IMO (memory leaks,stagefright not patched etc). the best rom right now is AD latest or B19 from archi as well.
kernel-wise,boeffla is EOL state again,he only update ramdisk,so this is just for campatibility still active.while things starting to end for this phone,archi wow us every single time,and archikernel latest is the most "optimized" for this phone along with his roms...
I/O sheduler-wise, deadline and noop is known to low speeds and performance crippling..best shedulers for our phone are BFQ latest,and CFQ.
ROW is better generally but not for I9300.it sucks.
You should never undervolt processor especially -75!! GPU as well. games will lag.
But this guide is,from my point of view,battery life driven.
but i would not get crazy for battery life anymore because anyways battery is fcked up so many years,especially stock.the only thing u will achieve is at best half an hour screen on time.not worth it for me
as for build prop tweaks,dont even touch it anymore,its not worth it,plus archi have better build prop tweaks and generally well made Roms.
*flies away*
My best setup is Archidroid + ArchiKernel
Cpu voltages table:
1400 1.1375V
1300 1.1V
1200 1.075V
1100 1.025V
1000 0.95V
900 0.925V
800 0.9V
700 0.875V
600 0.85V
500 0.825V
400 0.8V
300 0.8V
200 0.8V
GPU:
700 - 1.175V
600 - 1.0625V
440 - 0.9375V
300 - 0.8375V
150 - 0.7375V
CPU Governor: lulzactiveQ
CPU States: IDLE + LPA + AFTR
eMMC/SD Governor row/cfq
I think, that we can undervolt our SoC much lower, but not by setting same '-xx mV' value for all profiles, i spend about 2 hours for testing voltages on every profile. I descended to 0.8V on CPU, lower values were giving me a lot of freezes and lags. On GPU i set 0.7V (Boeffla kernel) and image went away. My ASV level is 3. I also tried it on other i9300 @ 2LVL ASV, GPU was working with same voltages. But CPU wanted extra 25mV for every profile from my table.
I also saw one more thing, ArchiKernel requies higher voltages, but it's harder to freeze phone (especially GPU) than on Boeffla.
Sorry for my bad english, i'll improve that - i promise
i wish i didnt sold my s3 :/
How to undervolt?
Sent from my Be_Pure using XDA Free mobile app
The Funky Pear said:
sorry for this,but,either u are not informed on whats going on these days,or just lack of knowledge.
this version you chose as your rom is EOL state,and its much worse than any rom IMO (memory leaks,stagefright not patched etc). the best rom right now is AD latest or B19 from archi as well.
kernel-wise,boeffla is EOL state again,he only update ramdisk,so this is just for campatibility still active.while things starting to end for this phone,archi wow us every single time,and archikernel latest is the most "optimized" for this phone along with his roms...
I/O sheduler-wise, deadline and noop is known to low speeds and performance crippling..best shedulers for our phone are BFQ latest,and CFQ.
ROW is better generally but not for I9300.it sucks.
You should never undervolt processor especially -75!! GPU as well. games will lag.
But this guide is,from my point of view,battery life driven.
but i would not get crazy for battery life anymore because anyways battery is fcked up so many years,especially stock.the only thing u will achieve is at best half an hour screen on time.not worth it for me
as for build prop tweaks,dont even touch it anymore,its not worth it,plus archi have better build prop tweaks and generally well made Roms.
*flies away*
Click to expand...
Click to collapse
Hi The Funky Pear!!
Can you post here your complete kernel config on synapse?
Thanks in advance
_nEoN_ said:
Hi The Funky Pear!!
Can you post here your complete kernel config on synapse?
Thanks in advance
Click to expand...
Click to collapse
of course! feel free to ask anything!! will post screenshots because its easier
what is "ad latest" rom?
mkdr said:
what is "ad latest" rom?
Click to expand...
Click to collapse
here u go: http://forum.xda-developers.com/galaxy-s3/development/rom-archidroid-v2-4-6-power-hands-t2354859
Intro
So this is a Guide that ive decided to make because ive found that you can get really good battery or really good performance by adjusting something called core_ctl, now Ive found that the z5's little cores NEVER turn off which in my opinion is silly so i decided to poke around and i found something called corectl and another called msm_performance.
im pretty certain this wont do any damage to your device as ive been playing with this since i got my z5 but there may be a performance hit and another note is that this SHOULD work on any S810 device or anything that has a big.little system.
Things Ive Learned
im going to note down things ive learned here that you shouldent do
- Do not Swap the big cores for the small cores using Is_big_cluster, it will cause repeat FCs and other issues.
- minimum of 1 big and 1 small core as it tends to become laggy without.
- Dont force off cores, if you want a core to turn off then use busy_up_thres or busy_down_thres
Requirements
you WILL need root and a filemanager like xplore unless you already know your way around a terminal emulator/adb
you Definately need a brain[emoji14]and just some time to read this obviously
this only works with the stock kernel or stock-ish kernels as of the moment.
Important Note
Before editing make sure everything is RW (Permission mode 744) and after editing anything be sure to change the permissions to read only (permission mode 644)
Core_ctl?
First of all these settings wont stick if you reboot so we will have to wait for Kernel Adiutor or an app alike to get updated.
anyway lets get started: you can find the parameter files in:
/sys/devices/system/cpu/cpu0/core_ctl/
(alternatively /sys/devices/system/cpu/cpu4/core_ctl/ for the big cores)
there will be 2 folders which will have this, cpu0 and cpu4. cpu0 is sort of the master core for the small cores and cpu4 is the master core for the big cores
(cpu0 to cpu3 are small)
(cpu4 to cpu7 are big)
editable files:
- busy_down_thres
- busy_up_thres
- is_big_cluster
- max_cpus
- min_cpus
Click to expand...
Click to collapse
busy_down_thres:
- Little cores
This file has a default value of "0" (looks like 0 0 0 0) (this is different for the big cores)
this means that if i change it to "25" when the cpu load dips below "25" it will then turn off cores, I recomend putting it at "40" (you dont have to change it to 40 40 40 40, you can just save it as 40)
( it seems the stock values for the big cores is fine with this)
busy_up_thres
If you havent guessed it, this does the oposite of the down_thres one, when your cpu load hits your set value then it will turn on cores, again this is defaulted to "0" for the little cores.
I have mine set to 50 for my little cores (i have left the default value for the big cores)
Is_big_cluster
this one is quite obvious but if you havent figured it out when set to "1" it then it will make the selected cluster (in this case little for example) take on heavier loads and act like the big cores
I dont recomend turning this to 1 as the little cores are little for a reason
max_cpus
this determines how many cpus within that cluster can be online at once
I recomend that you leave it at 4 as the little cores are quite weak but for the big cores you are fine to put it to 2 or even 1 if you want
min_cpus
This determines how many cpus MUST be online at once, I highly recomend that you keep 1 little core online as ive tried both with 0 minimum cores and ive had times where my device went total crazy and started lagging very bad
( you should be fine allowing 0 min_cpus for the big cores)
msm_performance
msm_performance is one of 2 (maybe more) hotplugs that the z5 uses with the stock kernel, there is msm_idle and msm_performance
there are some tweakable parameters in this so lets get started
you can find this in /sys/modules/msm_performance/parameters/
there is not much point to editing msm_performance as core_ctl is better to edit in my opinion
editable files:
- max_cpus
- num_clusters
(im pretty sure you can edit all of these but may be quite anoying to work with as they tend to reset them selves back to default)
max_cpus
so max_cpus is a global limit on how many cores can be on, it overrides what you'll find in the core_ctl but this has a habit of re-setting its self unless you change the permission mode to 644 after editing which is read only
when you open max_cpus you will see "-1:-1" this means any small or big core (e.g small:big), you can change this how ever you like, for example i recomend 4:2 or 2:2
num_clusters
this decides how many clusters you have, by default this is 2 because the snapdragon 810 has one small cluster and one big one, if you set this to 1 instead of 2 the big cores will act like any small core
My Config (updates 22nd of 05th 2016
- Little
busy_down_thres: 85
busy_up_thres: 75
is_big_cluster: 0
max_cpus: 2
min_cpus: 1
- Big
busy_down_thres: 0
busy_up_thres: 0
is_big_cluster: 1
max_cpus: 0
min_cpus: 0
Envious_Data said:
My Config
- Little
busy_down_thres: 40
busy_up_thres: 50
is_big_cluster: 0
max_cpus: 4
min_cpus: 1
- Big
busy_down_thres: 30
busy_up_thres: 60
is_big_cluster: 1
max_cpus: 2
min_cpus: 0
Click to expand...
Click to collapse
Interesting, thanks !
Is your config good for performance or for battery life (or balanced) ?
nreuge said:
Interesting, thanks !
Is your config good for performance or for battery life (or balanced) ?
Click to expand...
Click to collapse
As much battery without too much heavy lag
Sent from my E6653 using XDA-Developers mobile app
Envious_Data said:
As much battery without too much heavy lag
Sent from my E6653 using XDA-Developers mobile app
Click to expand...
Click to collapse
Well, do you think that it would be possible to find a config as performant as stock but better for battery life ?
Works so far, so I made a small Tasker script that replace the "stock" files at every reboot with the modified ones
Nice write-up, thanks!
Though, this seems to be removed on current andro-kernel v26 so u might want to add that this is only available when running a kernel which includes this feature (like stock kernel as of now)
nreuge said:
Well, do you think that it would be possible to find a config as performant as stock but better for battery life ?
Click to expand...
Click to collapse
if you want better performance then make the big cores more aggressive when turning on and just have one small core, i tried this and it works out quite fine but gets you about the 4hrs SOT that stock gives
2 Max cores for big
1 max core for little
langeveld024 said:
Nice write-up, thanks!
Though, this seems to be removed on current andro-kernel v26 so u might want to add that this is only available when running a kernel which includes this feature (like stock kernel as of now)
Click to expand...
Click to collapse
added a small note under requirements
Anybody tried something like this?
http://forum.xda-developers.com/one-m9/development/mod-htc-one-m9-enhanced-thermal-t3369574
Luhccas-X10 said:
Anybody tried something like this?
http://forum.xda-developers.com/one-m9/development/mod-htc-one-m9-enhanced-thermal-t3369574
Click to expand...
Click to collapse
You should be able to edit the thermal parameters in
/Sys/module/msm_thermal/ if you want
I havent bothered since my z5 only gets hot when im doing 80 things at once
Sent from my E6653 using XDA-Developers mobile app
My Z5 Premium barely goes warm too...
The point here is: Snapdragon 810 accepts this values directly on that path you told, or the one inside system/etc is sufficient?
Sent from my Xperia Z5 Premium!
Hello, how to keep settings after rebooting the phone ? Thanks
Luhccas-X10 said:
My Z5 Premium barely goes warm too...
The point here is: Snapdragon 810 accepts this values directly on that path you told, or the one inside system/etc is sufficient?
Sent from my Xperia Z5 Premium!
Click to expand...
Click to collapse
im pretty sure most Snapdragon 810 devices should be fine with these paths as i asked a freind with a nexus 6p to check if corectl was there and it is. im not too sure about /system/etc i usualy dont bother to look around there for stuff like this.
hug42 said:
Hello, how to keep settings after rebooting the phone ? Thanks
Click to expand...
Click to collapse
you may have to make some sort of script or use an app that copies modified versions for now untill an app implements the features required, i haved asked that this gets implemented into kernel adiutor but im not sure if that'll happen or not.
hug42 said:
Hello, how to keep settings after rebooting the phone ? Thanks
Click to expand...
Click to collapse
You can add lines inside the init.qcom.post_boot.sh files in / system / etc / in the part where it sets the sd810 (msm 8994, from line 867 onwards) Link: imgur .com/svfZ6ZE
Anyone have any battery comparisons before vs after?
Lrs95 said:
You can add lines inside the init.qcom.post_boot.sh files in / system / etc / in the part where it sets the sd810 (msm 8994, from line 867 onwards) Link: imgur .com/svfZ6ZE
Click to expand...
Click to collapse
Thanks
i'm a beginner, I don't find the core_ctl folder with the AndroPlus kernel
sovanyio said:
Anyone have any battery comparisons before vs after?
Click to expand...
Click to collapse
{
"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"
}
Im still playing with the setup and at the moment i think ive found one i like as when i tried recording a video with my previous setup my phone lagged up and froze but not yet with this one
Sent from my E6653 using XDA-Developers mobile app
hug42 said:
Thanks
i'm a beginner, I don't find the core_ctl folder with the AndroPlus kernel
Click to expand...
Click to collapse
This file is there only by using the stock kernel.
Inviato da Z5C utilizzando Xda mobile app
Envious_Data said:
...
Im still playing with the setup and at the moment i think ive found one i like as when i tried recording a video with my previous setup my phone lagged up and froze but not yet with this one
...
Click to expand...
Click to collapse
Hot damn! Ok I'm convinced haha
Envious_Data said:
Im still playing with the setup and at the moment i think ive found one i like as when i tried recording a video with my previous setup my phone lagged up and froze but not yet with this one
Sent from my E6653 using XDA-Developers mobile app
Click to expand...
Click to collapse
That's fantastic...
I have 7.5hr SOT on my Z5p with moderate usage (almost a day)...
Your battery life is tempting me to root my phone!