• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[GUIDE] [Osprey] Advanced Interactive Governor Tweaks

Search This thread

hekomat

Senior Member
Feb 4, 2012
233
72
I tried aero control and the app just hangs when I go to governor tunables.. Seems like setting custom values for interactive does not work in stock kernel at all.
 

Tel864

Senior Member
Nov 22, 2011
3,012
1,096
Greenville
I'm on these settings for a full day now and they are still there. Busybox and Ex works for me..
Now that I've been using these settings for 24 hours I don't see any battery problems and I can see a definite improvement in speed.
 
Last edited:

TVD1903

Senior Member
Jan 9, 2016
81
23
Eindhoven
here everything working with stock+squid kernel+kernel adiutor (third time i say this....)
maybe someone on stock rom can try this other app >> Aero kernel control
I am so sorry. I must've looked over it in all the commotion about it working or not.

I tried aero control and the app just hangs when I go to governor tunables.. Seems like setting custom values for interactive does not work in stock kernel at all.
Wow. This is really odd. It is starting to look like it's random for whom it works. Could you maybe try EX Kernel Manager as @Tel864 suggested?

I'm on these settings for a full day now and they are still there. Busybox and Ex works for me..
Now that I've been using these settings for 24 hours I don't see any battery problems and I can see a definite improvement in speed.
Awesome. I really do appreciate all the testing that you've done.

Now, for some feedback... What do you guys think I should add or change to the OP in regards to it working on stock? Should I just leave it like this, or maybe just say it doesn't work, or that one has to test for themselves?
 

nelsonw

Senior Member
Jun 29, 2009
2,569
550
Samsung Galaxy S20 FE
bc9ef1e1a85cd6743698aeaa586961ee.jpg


This is correct? That's the right way? Thanks!

Sent from my MotoG3 using Tapatalk
 

Tel864

Senior Member
Nov 22, 2011
3,012
1,096
Greenville
I am so sorry. I must've looked over it in all the commotion about it working or not.

Wow. This is really odd. It is starting to look like it's random for whom it works. Could you maybe try EX Kernel Manager as @Tel864 suggested?


Awesome. I really do appreciate all the testing that you've done.

Now, for some feedback... What do you guys think I should add or change to the OP in regards to it working on stock? Should I just leave it like this, or maybe just say it doesn't work, or that one has to test for themselves?
I don't know. Maybe suggest that if one kernel manager doesn't work, try another. Kernel Auiditor didn't work for me, but Ex Kernel Manager did. Other than installing Busybox, that's all I changed.
 
Dec 12, 2014
36
11
I am so sorry. I must've looked over it in all the commotion about it working or not.

Wow. This is really odd. It is starting to look like it's random for whom it works. Could you maybe try EX Kernel Manager as @Tel864 suggested?


Awesome. I really do appreciate all the testing that you've done.

Now, for some feedback... What do you guys think I should add or change to the OP in regards to it working on stock? Should I just leave it like this, or maybe just say it doesn't work, or that one has to test for themselves?

I think it should at least be mentioned that with the stock ROM it's kind of a hit or a miss. I know that @..::Matr!x::.. and @Tel864 were able to get it working just fine with theirs, both on Lollipop and Marshmallow, respectively, but I have not been able to do so. I've tried all kinds of combinations: stock Lollipop, stock Marshmallow, stock kernel, squid kernel, Kernel Adiutor, EX Kernel Manager, Franco's Kernel app, different busybox installer apps...nothing seemed to work for me with stock. I only got the settings to stick when I was on crDroid, both with the kernel that comes with the ROM and with squid, and the settings stuck.

Also, it looks like @nelsonw is having the same issue I was, where go_hispeed_load is stuck on 10, though he doesn't mention which ROM he's on.
 
Last edited:

TVD1903

Senior Member
Jan 9, 2016
81
23
Eindhoven
bc9ef1e1a85cd6743698aeaa586961ee.jpg


This is correct? That's the right way? Thanks!


Sent from my MotoG3 using Tapatalk
Yes, except for the go_hispeed_load. It should be changed to '99'

I don't know. Maybe suggest that if one kernel manager doesn't work, try another. Kernel Auiditor didn't work for me, but Ex Kernel Manager did. Other than installing Busybox, that's all I changed.

I think it should at least be mentioned that with the stock ROM it's kind of a hit or a miss. I know that @..::Matr!x::.. and @Tel864 were able to get it working just fine with theirs, both on Lollipop and Marshmallow, respectively, but I have not been able to do so. I've tried all kinds of combinations: stock Lollipop, stock Marshmallow, stock kernel, squid kernel, Kernel Adiutor, EX Kernel Manager, Franco's Kernel app, different busybox installer apps...nothing seemed to work for me with stock. I only got the settings to stick when I was on crDroid, both with the kernel that comes with the ROM and with squid, and the settings stuck.
Yes will do. It is really quite a pity that it doesn't work well with stock though.
 
  • Like
Reactions: nelsonw

==vj==

Senior Member
Jan 19, 2013
1,078
1,033
Goa
Well I thought someone here is positive to discuss and share. But now I feel I was wrong after reading all above with an negative attitude. Lol..!

In that case I delete my post and sorry about discussing with you master ;)
 

TVD1903

Senior Member
Jan 9, 2016
81
23
Eindhoven
Well I thought someone here is positive to discuss and share. But now I feel I was wrong after reading all above with an negative attitude. Lol..!

In that case I delete my post and sorry about discussing with you master ;)
No worries. I was a bit too aggressive as well. I am sorry for that.

The OP is updated to include some changes made in timer_rate and I have added the align_windows line as well (@===vj==) :)
 

Tel864

Senior Member
Nov 22, 2011
3,012
1,096
Greenville
Here's a new one, no matter which program I use, the timer_rate won't change from 40000. I've tried several kernel programs.

Sent from my SM-T530NU using Tapatalk
 

TVD1903

Senior Member
Jan 9, 2016
81
23
Eindhoven
Here's a new one, no matter which program I use, the timer_rate won't change from 40000. I've tried several kernel programs.
Lol yes that's new. Could you try changing it manually using Root Explorer located in /sys/devices/system/cpu/cpufreq/interactive? We could also try changing the permissions to 0444 (read-read-read) so that the system can no longer change it. This will not break your device, I have tested it as well :). If you do try the second method however, you will have to turn off 'set on boot' in you apps, as that will change the permissions back to 0644.
 

FalKoopa

Senior Member
Jun 23, 2015
130
24
Berhampur
I can't change the timer_rate. It is stuck at 40000. Everything else worked and the phone is working smoothly.

It's Optimus Kernel R3 on Resurrection Remix Marshmallow.
 

mihaum

Senior Member
Jun 6, 2012
484
110
I've just applied these settings on stock 6.0 ROM with stock kernel. Everything sticks, but the timer_rate.
However, I can't find touch boost options in Kernel Audiutor.
 

Tel864

Senior Member
Nov 22, 2011
3,012
1,096
Greenville
Lol yes that's new. Could you try changing it manually using Root Explorer located in /sys/devices/system/cpu/cpufreq/interactive? We could also try changing the permissions to 0444 (read-read-read) so that the system can no longer change it. This will not break your device, I have tested it as well :). If you do try the second method however, you will have to turn off 'set on boot' in you apps, as that will change the permissions back to 0644.
It won't change in Root Explorer either, I guess it just likes 40000 too much.[emoji1] After I save the change, it tellls me the original file is saved as a bak but there is no backup file actually created. The permissions are r/w on the folder and file so the changes should be made.
 

TVD1903

Senior Member
Jan 9, 2016
81
23
Eindhoven
It won't change in Root Explorer either, I guess it just likes 40000 too much.[emoji1] After I save the change, it tellls me the original file is saved as a bak but there is no backup file actually created. The permissions are r/w on the folder and file so the changes should be made.
Haha yes probably :). Oh well, it was more of an experiment anyways and the timer_rate at 40000 instead of 35000 will not make a lot -if any- on most systems anyways, sooo...

I've just applied these settings on stock 6.0 ROM with stock kernel. Everything sticks, but the timer_rate.
However, I can't find touch boost options in Kernel Audiutor.
Great to see that your settings are sticking. No, the stock kernel does indeed not have the touchboost feature.

I can't change the timer_rate. It is stuck at 40000. Everything else worked and the phone is working smoothly.

It's Optimus Kernel R3 on Resurrection Remix Marshmallow.
Sweet. As I mentioned above, the 5000 difference in the timer_rate will most likely not make a big difference. It is curious that it does not work on both a custom ROM and Kernel though. I have not encountered any issues on crDroid.
 

Tel864

Senior Member
Nov 22, 2011
3,012
1,096
Greenville
Haha yes probably :). Oh well, it was more of an experiment anyways and the timer_rate at 40000 instead of 35000 will not make a lot -if any- on most systems anyways, sooo...


Great to see that your settings are sticking. No, the stock kernel does indeed not have the touchboost feature.


Sweet. As I mentioned above, the 5000 difference in the timer_rate will most likely not make a big difference. It is curious that it does not work on both a custom ROM and Kernel though. I have not encountered any issues on crDroid.

OK, I have a partial answer for the timer_rate setting. It will only take 10000 value increments. It will accept 30000 fine. Sooo, I'm wondering what would be best, 30000 or 40000.
I've also discovered that go_hispeed_load will only take multiples of 10. I can use 90 or 100, but not 99.
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 9
    Any information in this thread is based on @soniCron's guide here. If anyone would like more information on how exactly this works, head over there.

    Introduction

    After having read through all of soniCron's posts, I was really impressed and I wanted to test if for myself, but I do not have either a Nexus 6P of a Nexus 5X. I do however have a Moto G 2015, and since instructions were provided to apply his technique on other devices, I decided to give it a go. So after quite a bit of testing and calculating, I have been able to come up with some tweaks for our little phone. Now, I have not yet fully tested the battery life with these tweaks. I feel like they will work though, and so far, performance has been better than before and according to some frequency tables, the frequencies are staying lower.

    Some more details
    These tweaks should work on any ROM and/or kernel. However, there seem to be issues with the stock ROM, where either the target_loads and/or the above_hispeed_delay are not sticking. Please test for yourself. For a list of confirmed working ROMs, check below.
    Your phone must be rooted. If you are not sure how to do this, check this guide.

    With this out of the way, we can finally start with some numbers. In accordance with soniCron's thread, I have started with calculating the nominal (minimum required to do anything smoothly) clock rates for scrolling, watching video and loading apps. These clock rates were calculated using the performance governor, limiting the maximum clock speeds while performing a given task. These are only my observations and yours may vary depending on your settings and how well you have optimised your system and browser etc. Be sure to check if the clock rates are similar to those that you need to run the given task smoothly, you should be good to go.
    For idle, I observed a nominal clock rate of 400000 MHz.
    For scrolling, I observed a nominal clock rate of 998400 MHz.
    For video watching, I observed a nominal clock rate of 1094400 MHz.
    And finally, for app loading, I observed a nominal clock rate of 1209600 MHz.
    With these values in mind, I then proceeded to calculating the maximum and minimum loads that were most efficient. (For more details, please see soniCron's thread)
    Here they are:
    • 200000:1
    • 400000:68
    • 533333:50
    • 800000:25
    • 998400:82
    • 1094400:86
    • 1152000:10
    • 1209600:80
    These values are essentially the target_loads the kernel looks for. I have also applied some other miscellaneous tweaks for the governor which all helped with performance while keeping battery life. Now, without further ado, I present you:

    What you need to do (on Custom ROMs)

    1) Make sure you are rooted and have Busybox installed.
    2) Download a kernel manager app. There are loads of these in the play store, but I personally recommend this one.
    3) Pop the following values in at the 'governor tunables' section, making sure you have the interactive governor selected.
    • above_hispeed_delay 20000 400000:60000 998400:30000
    • boostpulse_duration 80000
    • go_hispeed_load 99
    • hispeed_freq 1363200
    • max_freg_hysteresis 60000
    • min_sample_time 60000
    • target_loads 98 400000:68 533333:50 800000:25 998400:82 1094400:86 1152000:10 1209600:90
    • timer_rate 35000
    • timer_slack 80000
    • align_windows 1
    4) TURN OFF TOUCH BOOST
    5) (OPTIONAL) apply the other tweaks listed here
    6) Make sure it's working correctly. Check if everything keeps running smoothly. If it doesn't, optimize your device more, or increase the min_sample_time by increments of 5000. If your CPU is going over the Idle speed often, adjust the timer_rate upwards by increments of 5000. If it stays at the Idle speed too much, adjust it downwards by increments of 5000.
    7) ENJOY!


    What you need to do (on Stock ROM)[Hit or miss for some]

    1) Make sure you are rooted and have Busybox installed.
    2) Download a kernel manager app. There are loads of these in the play store, but I personally recommend this one.
    3) Pop the following values in at the 'governor tunables' section, making sure you have the interactive governor selected.
    • above_hispeed_delay 20000 400000:60000 998400:30000
    • boostpulse_duration 80000
    • go_hispeed_load 90
    • hispeed_freq 1363200
    • max_freg_hysteresis 60000
    • min_sample_time 60000
    • target_loads98 400000:68 533333:50 800000:25 998400:82 1094400:86 1152000:10 1209600:90 [These are not sticking for some, though we are looking for help as you read]
    • timer_rate 40000
    • timer_slack 80000
    • align_windows 1
    4) TURN OFF TOUCH BOOST
    5) (OPTIONAL) apply the other tweaks listed here
    6) Make sure it's working correctly. Check if everything keeps running smoothly. If it doesn't, optimize your device more, or increase the min_sample_time by increments of 5000. If your CPU is going over the Idle speed often, adjust the timer_rate upwards by increments of 10000. If it stays at the Idle speed too much, adjust it downwards by increments of 10000.
    7) ENJOY!


    Conclusion
    I have had lots of fun with observing and calculating the optimal speeds and settings. I hope these tweaks will help someone and if they do, please let everyone know by leaving a post in this thread. Good luck!

    Thanks to:
    @soniCron for making his amazing guide
    @squid2 for making the kernel that inspired me to make this guide
    @abhijeetc9762 for making the rooting guide
    @==vj== for making the other tweaks-guide
    @Tel864, @FalKoopa, @..::Matr!x::.. , @JackTheRipper1891, @hekomat, @mihaum and more for testing

    Tested working on
    Squid kernel
    • crDroid 6.0.1
    • DominionOS 6.0.1
    X-Infinity kernel
    • crDroid 6.0.1
    • DominionOS 6.0.1
    Stock kernel
    • crDroid 6.0.1
    • Resurrection Remix 6.0.1
    • DominionOS 6.0.1
    Optimus kernel
    • crDroid 6.0.1
    2
    Op finds discussions to be offensive. Hence deleted.
    2
    Haha yes probably :). Oh well, it was more of an experiment anyways and the timer_rate at 40000 instead of 35000 will not make a lot -if any- on most systems anyways, sooo...


    Great to see that your settings are sticking. No, the stock kernel does indeed not have the touchboost feature.


    Sweet. As I mentioned above, the 5000 difference in the timer_rate will most likely not make a big difference. It is curious that it does not work on both a custom ROM and Kernel though. I have not encountered any issues on crDroid.

    OK, I have a partial answer for the timer_rate setting. It will only take 10000 value increments. It will accept 30000 fine. Sooo, I'm wondering what would be best, 30000 or 40000.
    I've also discovered that go_hispeed_load will only take multiples of 10. I can use 90 or 100, but not 99.
    1
    Great to see they seem to be working for you! Could you please let me know which ROM and/or Kernel you're using? I could use that information to make a 'working' or 'tested' list.
    I'm using the stock 6.0 ROM with Squid's Kernel, revision 14b. If it also helps, I'm on the 1GB version of XT1540.
    1
    @TVD1903,
    thanks for the reply. I will test them later today and will give you some feedback ;)