[krn.modules] intellidemand governor for Arc / Arc S stock Kernel (ICS) - Xperia Arc Android Development

Upon request from fellow member ascariz on the smartassV2 governor, I've compiled intellidemand module for Arc 4.0.3 stock kernel.
Since the firmware I use is the Arc S one (ICS 4.0.3) - I believe this module will also work for Arc S.
To fully configure / install the module, please check this page for a similar module I did for X10 back in the days - page.
Some things are different, but if you want to hand customize all possible parameters after phone starts up, the path to check is
Code:
/sys/devices/system/cpu/cpu0/cpufreq
Download:
Use it at your own risk!
cpufreq_intellidemand_arc_ics.zip
Enjoy!

Awesome. Not trying to be greedy but can we have BoostedAssV2 too ? xD

viulian said:
Upon request from fellow member ascariz on the smartassV2 governor, I've compiled intellidemand module for Arc 4.0.3 stock kernel.
Since the firmware I use is the Arc S one (ICS 4.0.3) - I believe this module will also work for Arc S.
To fully configure / install the module, please check this page for a similar module I did for X10 back in the days - page.
Some things are different, but if you want to hand customize all possible parameters after phone starts up, the path to check is
Code:
/sys/devices/system/cpu/cpu0/cpufreq
Download:
Use it at your own risk!
cpufreq_intellidemand_arc_ics.zip
Enjoy!
Click to expand...
Click to collapse
OMG. you really do it?! tq mate!

After a day of testing, I'm switching back to smartassV2.
With smartassV2:
a) the time in state shows me about 16-17% at 1Ghz, and the others at 122MHz. Intermediate frequences are rarely used.
b) battery was about 40% at the end of the day with my usage (4 email accounts doing sync at 15 minutes - I'm not using push, but k9 connects) - also half of the day in an area where 3G signal is weak and phone swiches back and forth.
With intellidemand:
a) the time in state is 6% for 1GHz which might look better in comparison with smartassV2.
BUT:
b) the phone is sluggish and you can feel it needs a bit of time (1 second ?) to pick up speed, UI animations are choppy.
c) it does make use of the intermediate frequencies - but battery was about 20% when I got home, identical usage as previous day with smartassV2.
In both cases, screen was always kept at 25%.
Now my conclusion is that:
a) intermediate (but high) frequencies have similar battery usage as maximum frequency.
b) spending more time in an intermediate frequency makes things slower to finish and thus, based on point a) drains battery more.
Also, the code of intellidemand is more complex (.ko size is +20Kb more) as opposed to smartassV2 - and thus I guess it also takes more time (energy) to compute the correct frequency. In itself, a complex algorithm to compute the next state takes its toll.
smartassV2 does perform better with my usage pattern - and I'm curious why this governor is claimed to be advanced I mean algorithmically it surely is, but phone is more sluggish + more battery drain (not significant, but about 20% in my basic, 1 day test).
I will focus my attention on other *ass governors

flashable intellidemand. auto load on startup. all credit to viulian.

ascariz said:
flashable intellidemand. auto load on startup. all credit to viulian.
Click to expand...
Click to collapse
Can you make a flashable smartassv2 too ?

Dark Fable said:
Can you make a flashable smartassv2 too ?
Click to expand...
Click to collapse
errr...im not a module compiler like viulian. honestly, i dunno. but to make it autoload on boot & flashable, yes, as long as i have that .ko file.

ascariz said:
errr...im not a module compiler like viulian. honestly, i dunno. but to make it autoload on boot & flashable, yes, as long as i have that .ko file.
Click to expand...
Click to collapse
The .ko was already made by viulian, here ya go.

Dark Fable said:
The .ko was already made by viulian, here ya go.
Click to expand...
Click to collapse
this is intellidemand and smartassv2 modules that you can load in 2 way.
1) for those who use stock kernel that not support init.d, use script manager to load MODULELOADER script at start up. after flash, browse at system/etc/init.d folder and you will find the script.
2) for those who use kernel with init.d supported (e.g. Cobrato kernel), do nothing. just flash it and you ready to go.

ascariz said:
this is intellidemand and smartassv2 modules that you can load in 2 way.
1) for those who use stock kernel that not support init.d, use script manager to load MODULELOADER script at start up. after flash, browse at system/etc/init.d folder and you will find the script.
2) for those who use kernel with init.d supported (e.g. Cobrato kernel), do nothing. just flash it and you ready to go.
Click to expand...
Click to collapse
Doesn't work man. :/ The new governors aren't showing up in No Frills CPU..using Cobrato's kernel.

First you must use the stock kernel from Sony's official 4.0.3 release for Arc S (even if having the Arc).
Any other kernel will not work ... (or very slim chances to work).
Second, please check using Module Loader app (but only activate the boot time loading of the module after you are sure the things work).

viulian said:
First you must use the stock kernel from Sony's official 4.0.3 release for Arc S (even if having the Arc).
Any other kernel will not work ... (or very slim chances to work).
Second, please check using Module Loader app (but only activate the boot time loading of the module after you are sure the things work).
Click to expand...
Click to collapse
I have the ARC S lol, and Cobrato's kernel is Stock 4.0.3 kernel with init.d support.
http://forum.xda-developers.com/showthread.php?t=1591279
Hmm...I thought you didnt have to use module loader for the flashable zips ? :/ Because the module loader shows 'Starting modules...' in the middle of any game (Like Temple Run) and it begins to lag horribly, this pisses my friends off. I want to show them how great a phone Arc/S is. :/

Ok, if it has the same version number then it will load the modules ok (as well as having the same binary kernel image).
I think the OS kills Module Loader to regain some memory, then starts it back when memory level gets better (kills it when game / heavy app starts, then as memory becomes available, it starts it back). But Module Loader has a bug and when started also loads the modules
Another solution is to use Script Manager ( http://www.androidsoftware.us/Applications/Script-Manager.html ) to run a script at boot (a small script that just do the insmod).
Hope it helps...

viulian said:
Ok, if it has the same version number then it will load the modules ok (as well as having the same binary kernel image).
I think the OS kills Module Loader to regain some memory, then starts it back when memory level gets better (kills it when game / heavy app starts, then as memory becomes available, it starts it back). But Module Loader has a bug and when started also loads the modules
Another solution is to use Script Manager ( http://www.androidsoftware.us/Applications/Script-Manager.html ) to run a script at boot (a small script that just do the insmod).
Hope it helps...
Click to expand...
Click to collapse
Thank you for your quick response. [: I know about script manager, can you please provide me with the script to use with it for the modules and a how to ? If not too much trouble that is.
Nvm, got it, thanks.

Dark Fable said:
Doesn't work man. :/ The new governors aren't showing up in No Frills CPU..using Cobrato's kernel.
Click to expand...
Click to collapse
err...it should work man..i used JJ hybrid rom, and the modules shows up in the rom control..maybe you should try app other than no frills..

Related

[Q] About the ~200 line Linux kernel patch that does wonders

Hello, guys!
I guess most of you know about this "magic patch" that significantly boosts Linux speed. It's going to be merged in the 2.6.38 branch and it's shipping with Ubuntu Natty too. But this kernel patch can be applied to a previous kernel as well, just rebuilding it with this 224 magical lines of code.
What I wanted to know is if it's possibile to rebuild our kernels with this patch, if it is already, or if it's possibile but won't have significant boosts on Android devices.
You may read more about this on Phoronix. On the 2nd page there are video demos for lazy ones!
This has been discussed here twice &found not to help because we dont use harddisk.
Sent from my GT-I9000 using XDA App
was it "proven" or "theorized" ?
You can look it up here in dev. Search
Sent from my GT-I9000 using XDA App
ragin said:
This has been discussed here twice &found not to help because we dont use harddisk.
Sent from my GT-I9000 using XDA App
Click to expand...
Click to collapse
Thank you, but can you please link the thread with this discussion? I can't seem to find it. Also, this patch regards CPU, not hard disks.
this patch will be officially introduced in the 2.6.38 kernel..
also, this kernel will have about 50% more speed increase, due to the 200 lines patch and another issue resolved after it .. in general the upcoming kernel will be blazingly fast !!
there is a script that tries to do the same as the patch for earlier kernels. which I use on my Ubuntu laptop, and yes major performance increase !!
I tried to apply it to my previous phone (HTC Hero), but didn't work. I also asked Cyanogen on his twitter, but didn't care to give me an answer..
finally I gave up, and decided to wait for the next Android version that will have the 2.6.38 in the future..
MaXo64 said:
this patch will be officially introduced in the 2.6.38 kernel..
also, this kernel will have about 50% more speed increase, due to the 200 lines patch and another issue resolved after it .. in general the upcoming kernel will be blazingly fast !!
there is a script that tries to do the same as the patch for earlier kernels. which I use on my Ubuntu laptop, and yes major performance increase !!
I tried to apply it to my previous phone (HTC Hero), but didn't work. I also asked Cyanogen on his twitter, but didn't care to give me an answer..
finally I gave up, and decided to wait for the next Android version that will have the 2.6.38 in the future..
Click to expand...
Click to collapse
I'm using that script too on Maverick! I don't think there should be a significant increase in responsiveness if you apply it on high-end systems, but our SGS might benefit from it (as my old dual core system).
You say it didn't work on your Hero, but were there any errors in dmesg or you didn't find any significant change in speed?
thunderteaser said:
I'm using that script too on Maverick! I don't think there should be a significant increase in responsiveness if you apply it on high-end systems, but our SGS might benefit from it (as my old dual core system).
You say it didn't work on your Hero, but were there any errors in dmesg or you didn't find any significant change in speed?
Click to expand...
Click to collapse
dmesg should no difference. the script just showed a lot of errors.
I tried the "non-Ubuntu" version as described in Webupd8, but still similar errors.
I guess Android place the kernel differently from Linux desktops.
I might be mistaken, but SO kernel uses its. And haven't really noticed any difference with or without it.
MaXo64 said:
this patch will be officially introduced in the 2.6.38 kernel..
also, this kernel will have about 50% more speed increase, due to the 200 lines patch and another issue resolved after it .. in general the upcoming kernel will be blazingly fast !!
there is a script that tries to do the same as the patch for earlier kernels. which I use on my Ubuntu laptop, and yes major performance increase !!
I tried to apply it to my previous phone (HTC Hero), but didn't work. I also asked Cyanogen on his twitter, but didn't care to give me an answer..
finally I gave up, and decided to wait for the next Android version that will have the 2.6.38 in the future..
Click to expand...
Click to collapse
please don't spread incorrect facts:
* the "automated per tty task groups" (or autogroup) patch - by using cgroups (in CFS - the cpu scheduler) and thus isolating several taks from each other, giving them dedicated slices of cpu power - allows the system to be more responsive under load if there is a kind of cpu hog (task producing much load)
* the speed increase is due to Nick Piggin's VFS changes and Andrea Arcangeli & Mel Gorman's Transparent Hugepages (THP) support (and of course lots of other changes)
dupel said:
I might be mistaken, but SO kernel uses its. And haven't really noticed any difference with or without it.
Click to expand...
Click to collapse
that's correct: - "sched patch : automated per tty task groups (system more smooth and responsive) (v3(since 4_3) and v4(since 4_4))"
so you tried SO kernel with the patch applied and once reverted ?
but - yeah, I got you: I'm myself running a heavy patched 2.6.37 kernel with transparent hugepages, CFS autogroup, etc. enabled - and it certainly can play off its advantage most noticably during heavy system load
zacharias.maladroit said:
that's correct: - "sched patch : automated per tty task groups (system more smooth and responsive) (v3(since 4_3) and v4(since 4_4))"
so you tried SO kernel with the patch applied and once reverted ?
but - yeah, I got you: I'm myself running a heavy patched 2.6.37 kernel with transparent hugepages, CFS autogroup, etc. enabled - and it certainly can play off its advantage most noticably during heavy system load
Click to expand...
Click to collapse
So, please, correct my noobiness, isn't Android using TTY shells? If it's not than I understand why this patch can't be applied, but if it is, rebuilding a kernel with just 200 lines more is no big deal and we all could benefit from it. It's not very common for Android to be under heavy load but hey, it's going to be default in 2.6.38, so why not?
There is a better patch :
blog.internetnews.com/skerner/2010/11/forget-200-lines-red-hat-speed.html
But I don't know if android uses shells.
Protocamlann said:
There is a better patch :
blog.internetnews.com/skerner/2010/11/forget-200-lines-red-hat-speed.html
But I don't know if android uses shells.
Click to expand...
Click to collapse
Yes, that's exactly the script I was talking about a few posts ago. On my system running 2.6.35, I did not rebuild the kernel with the "patch of wonders" but applied this script. But as you may have read, it acts in userspace which is slightly different in Android (as far as I know it's not using the same environment variables and I don't know about any ~/.bashrc equivalents, but again correct me if I'm wrong), that's why a kernel-oriented patch would be more suitable.
* well, actually newer revisions of that patch don't make use of ttys but of the task session
so basically it seems to create separate groups for each task (or program for simplicity's sake)
(source)
I'm also not sure if current Android kernel revisions use CFS at all ("Android versus Linux?")
laststufo has the autogroup patch included in his SO Kernel but I don't know how to measure its effect ... (whether it makes any difference)
* other options to improve interactivity would be to use Lennart Poettering's bash-approach (the script), like MaXo64 already posted: link
since Android uses Bourne Shell (sh) instead of BASH the script might need to be rewritten
* if it's stable enough on the SGS - yet another option would be to use Con Kolivas BFS
thunderteaser said:
Yes, that's exactly the script I was talking about a few posts ago. On my system running 2.6.35, I did not rebuild the kernel with the "patch of wonders" but applied this script. But as you may have read, it acts in userspace which is slightly different in Android (as far as I know it's not using the same environment variables and I don't know about any ~/.bashrc equivalents, but again correct me if I'm wrong), that's why a kernel-oriented patch would be more suitable.
Click to expand...
Click to collapse
well, you could rewrite that script that it is run as a init-script (afaik in /system/init.d/ )
besides that:
there are stripped down (smaller) versions of bash 4.1* that are known to work on CM6 and the HTC Hero
so it should be a possibility to use that script on stock roms, too
if you can install busybox & root it, there also should be the possibility to install bash
zacharias.maladroit said:
* well, actually newer revisions of that patch don't make use of ttys but of the task session
so basically it seems to create separate groups for each task (or program for simplicity's sake)
(source)
I'm also not sure if current Android kernel revisions use CFS at all ("Android versus Linux?")
laststufo has the autogroup patch included in his SO Kernel but I don't know how to measure its effect ... (whether it makes any difference)
* other options to improve interactivity would be to use Lennart Poettering's bash-approach (the script), like MaXo64 already posted: link
since Android uses Bourne Shell (sh) instead of BASH the script might need to be rewritten
* if it's stable enough on the SGS - yet another option would be to use Con Kolivas BFS
Click to expand...
Click to collapse
It seems you're very well informed, so thanks for the infos you're posting!
I'm not a coder, though, so I hope a kernel developer could pick this up and go for BFS. You said laststufo already implemented this patch in his kernel, so that's really good! We should just find a way of testing its effectiveness.
zacharias.maladroit said:
well, you could rewrite that script that it is run as a init-script (afaik in /system/init.d/ )
besides that:
there are stripped down (smaller) versions of bash 4.1* that are known to work on CM6 and the HTC Hero
so it should be a possibility to use that script on stock roms, too
if you can install busybox & root it, there also should be the possibility to install bash
Click to expand...
Click to collapse
Yes, I've also seen bash shipping with some ROMs, so it's definitely possibile, though as I said before, I'm no coder...
thunderteaser said:
It seems you're very well informed, so thanks for the infos you're posting!
I'm not a coder, though, so I hope a kernel developer could pick this up and go for BFS. You said laststufo already implemented this patch in his kernel, so that's really good! We should just find a way of testing its effectiveness.
Click to expand...
Click to collapse
I'm a kernel-dev for linux-kernels so I got to know & learned to cherish them
just stumbled over a thread in the Epic 4G forum
for reference: [Q] [REQ] Galbraith Patch worked into kernals?
zacharias.maladroit said:
I'm a kernel-dev for linux-kernels so I got to know & learned to cherish them
Click to expand...
Click to collapse
You really are? That's great! So why don't you join laststufo to try maximizing the impact of his implemented "patch of wonders"? As I try to keep up with your techical chatting it seems I really can't do more than asking you to help!
zacharias.maladroit said:
just stumbled over a thread in the Epic 4G forum
for reference: [Q] [REQ] Galbraith Patch worked into kernals?
Click to expand...
Click to collapse
Uhm, so it seems BFS isn't stable on our hardware, pretty bad.

[MOD] IncrediControl - Easy GUI undervolting!

Please read this post through thoroughly before downloading.
This app allows you to control your CPU voltages with an easy to use interface. You can increase or decrease voltages (undervolt or overvolt) for all frequencies or fine tune voltages for each individual frequency.
! HTC DEVICES, currently only single core devices are supported !
! ROOT is Required !
! Kernel that supports HAVS or SVS voltage adjustment REQUIRED !
Get it over at http://www.incredikernel.com
IncrediControl is now also available in the market:
IncrediControl
IncrediControl - Ad Free
Additionally, all donators are eligible to receive the Ad Free version. It doesn't matter how much or how little you donate or have donated. If you don't want to purchase the app from the market, you may donate using the button on this page. Please register on the site first and include your username in the comments box.
All previous donators, please register on the site if you have not done so and contact me with your username!
NOTE: The settings in the general tab are only functional in kernels that have implemented the simple sysfs interfaces for usb fast charging and audio boost. If you toggle them, its not going to break anything, but they won't work and the app may crash. If you would like your kernel dev to implement the interfaces, please direct them to these two commits:
https://github.com/Chad0989/android_kernel_common/commit/a7c21fa0391c225900f93960362535179c0cecc9
https://github.com/Chad0989/android_kernel_common/commit/41dc138bae23dc7582de72a4d9895aaa8e1f8b2d
NOTE2: It is a requirement of the HAVS adjustment that the kernel you are using has the HAVS sysfs interface implemented. If it does not, it will not work.
NOTE3: Before using, please delete any boot scripts you may have in /etc/init.d that toggle any of the settings this app controls.
Get it at http://www.incredikernel.com
Restore script - use this if you went too low and find yourself in a boot loop. Flash through recovery:
http://www.incredikernel.com/?p=229
8/1/2011:
IncrediControl v1.0!
This app allows you to control your CPU voltages with an easy to use interface. You can increase or decrease voltages (undervolt or overvolt) for all frequencies or fine tune voltages for each individual frequency.
! HTC DEVICES, currently only single core devices are supported !
! ROOT is Required !
! Kernel that supports HAVS or SVS voltage adjustment REQUIRED !
Get it over at http://www.incredikernel.com
IncrediControl is now also available in the market:
IncrediControl
IncrediControl - Ad Free
Additionally, all donators are eligible to receive the Ad Free version. It doesn't matter how much or how little you donate or have donated. If you don't want to purchase the app from the market, you may donate using the button on this page. Please register on the site first and include your username in the comments box.
All previous donators, please register on the site if you have not done so and contact me with your username!
thanks, but it cannot change the voltage in VU ROM.
zjmdp said:
thanks, but it cannot change the voltage in VU ROM.
Click to expand...
Click to collapse
What kernel are you running?
chad0989 said:
What kernel are you running?
Click to expand...
Click to collapse
Rcmix vivo 2.2 and original kernel of VU are both not supported
zjmdp said:
Rcmix vivo 2.2 and original kernel of VU are both not supported
Click to expand...
Click to collapse
I recommend requesting to the dev that he implement the sysfs interface for SVS adjustment. I believe Tiamat 1.0.4 is the only inc S kernel that currently supports it. Your kernel dev should be able to pull the commit from the tiamat site.
zjmdp said:
Rcmix vivo 2.2 and original kernel of VU are both not supported
Click to expand...
Click to collapse
RCMIX Vivo kernel for Inc S is supported. I tested it and klquicksall confirmed that RCMIX is a single core SVS kernel.
Master Darko said:
RCMIX Vivo kernel for Inc S is supported. I tested it and klquicksall confirmed that RCMIX is a single core SVS kernel.
Click to expand...
Click to collapse
I flashed RCMIX kernel on VU rom, but there is no interface to change the voltage. Only see General tab with audio boost and usb fast charge
zjmdp said:
I flashed RCMIX kernel on VU rom, but there is no interface to change the voltage. Only see General tab with audio boost and usb fast charge
Click to expand...
Click to collapse
Redownload the package. There was an issue with the one on the site, it somehow got crossed with an old version. It should be fixed on the site now.
Or you can grab it from the market.
Is it same with vipermod but with a GUI?
zjmdp said:
I flashed RCMIX kernel on VU rom, but there is no interface to change the voltage. Only see General tab with audio boost and usb fast charge
Click to expand...
Click to collapse
I probabaly did not give enough details. RCMIX kernel 2.2 with ARHD 1.1.3 works. Interface and all is there.
geeti said:
Is it same with vipermod but with a GUI?
Click to expand...
Click to collapse
Yes it is like vipermod with an easier to use interface.
Master Darko said:
Yes it is like vipermod with an easier to use interface.
Click to expand...
Click to collapse
It's cool. One quick question, I see in vipermod it relies on init.d file to have it effective after reboot. The advantage of this is if I set the voltage too low to work, I can pull the battery and reboot, and the voltage values will be as last time because it's not saved.
I saw you attached a restore zip file, so wondering if I set voltage too low to work, do I have to restore it by recovery?
geeti said:
It's cool. One quick question, I see in vipermod it relies on init.d file to have it effective after reboot. The advantage of this is if I set the voltage too low to work, I can pull the battery and reboot, and the voltage values will be as last time because it's not saved.
I saw you attached a restore zip file, so wondering if I set voltage too low to work, I have to restore it by recovery?
Click to expand...
Click to collapse
No, the only time you can have an issue is if you set the voltage too low AND check set on boot before you hit apply. This is why set on boot is always unchecked when you start the app (even if there are current boot settings, which will be shown by the text box by restore defaults). So you can adjust the voltages all you want, click apply and they will be set in the current session only. Once you decide you want to set those voltages on boot, you check the set on boot box, and click apply.
The restore script is for the rare occasion that somebody sets their voltages way too low and checks set on boot before hitting apply.
chad0989 said:
No, the only time you can have an issue is if you set the voltage too low AND check set on boot before you hit apply. This is why set on boot is always unchecked when you start the app (even if there are current boot settings, which will be shown by the text box by restore defaults). So you can adjust the voltages all you want, click apply and they will be set in the current session only. Once you decide you want to set those voltages on boot, you check the set on boot box, and click apply.
The restore script is for the rare occasion that somebody sets their voltages way too low and checks set on boot before hitting apply.
Click to expand...
Click to collapse
Thanks man.
chad0989 said:
No, the only time you can have an issue is if you set the voltage too low AND check set on boot before you hit apply. This is why set on boot is always unchecked when you start the app (even if there are current boot settings, which will be shown by the text box by restore defaults). So you can adjust the voltages all you want, click apply and they will be set in the current session only. Once you decide you want to set those voltages on boot, you check the set on boot box, and click apply.
The restore script is for the rare occasion that somebody sets their voltages way too low and checks set on boot before hitting apply.
Click to expand...
Click to collapse
Does the "set on boot" generate a boot script in init.d?
geeti said:
Does the "set on boot" generate a boot script in init.d?
Click to expand...
Click to collapse
No, currently it generates a script in /etc (called either /etc/havsvdd or /etc/svsvdd) that is run by the incredicontrol service at boot. This is part of the plan to migrate away from boot scripts and rely on database storage of the frequencies/boot settings. Database storage will make it easier for one to retain their settings when they back up/restore from titanium backup or flash a rom update (especially important with roms that have nightlies that people flash all the time, i.e. cm7) since everything will be stored in the app data instead of a system folder.
chad0989 said:
Redownload the package. There was an issue with the one on the site, it somehow got crossed with an old version. It should be fixed on the site now.
Or you can grab it from the market.
Click to expand...
Click to collapse
Thanks. It works!
Master Darko said:
I probabaly did not give enough details. RCMIX kernel 2.2 with ARHD 1.1.3 works. Interface and all is there.
Click to expand...
Click to collapse
New version does work!
IncrediControl v1.3
Major changes include:
Ad Free has now been turned into a key that removes the ads from the free version. This allows donors who have downloaded the ad free version from the site to update through the market.
HAVS voltage checking. Minimum voltages can no longer be set higher than maximum voltages.
Boot voltages are now stored in the application’s data directory. Boot settings will now persist if you update your ROM or restore the application and data from a backup.

[RAM Script] Tweaking Juwe11's RAM script for O2X, good for all ROM support init.d

======
Preface
======
The script is actually Base on Juwe11's RAM script
which you can found here... http://forum.xda-developers.com/showthread.php?t=1111145
==========
Main Content
==========
The adj value of his script is a bit too tight for Our O2X...
so the Launcher is killed quite often if many apps opened in the background.
Here's the adj value changes I made, originally, Juwe11's values are..
"0,1,2,4,6,15" and I change it to, "0,1,2,7,8,9"
the forth value is for HIDDEN_APP_MIN_ADJ, which including the Launcher (I'm using LauncherPro) belongs to this category when you open some foreground application.
the default android value for this is also 7, and I find the OOM value for Launcher is 6 usually... so Juwe11's "4" will lead to our Launcher being Killed, keep it at 7, never tried to have mine killed yet.
The last 2 vaule just make sure the last category EMPTY_APP_ADJ is kill earlier than the previous..
About the minfree vaule...
I change it to "1536,3072,4096,7680,8960,10240" which actually the same values of "Moderate preset" of autokiller
which is enough to ensure most RAM being use before killing for faster task switching...
=====
Credit
=====
!! Credit goes to Juwe11 for his mighty RAM script~ !!
Backup your RAMscript and remove it to somewhere before install this...
install via CWM, it will put the script into your /etc/inti.d/ that's it, boot and try
i just installed it,
i will let u know what are the results,
u are correct, the original script kills the launcher and apps specially XDA
will try this configuration on auto killer memory seems good m8 to set it to moderate
shpapy said:
i just installed it,
i will let u know what are the results,
u are correct, the original script kills the launcher and apps specially XDA
Click to expand...
Click to collapse
I'm not sure if other Launcher would have a different OOM value~
I have Autokiller memory optimizer which I paid before...so I can view OOM value easily..
But with this Script... I guess really no task killer needed for our 2X already.
antec123 said:
will try this configuration on auto killer memory seems good m8 to set it to moderate
Click to expand...
Click to collapse
so, just edit the minfree value according to the values inside AutoKiller if you find some other setting suits you more
but about the adj value... I guess that part is already good enough
now I find my phone already got around 60-90 free RAM at any time...
Multiple games running at the background while web browsing...
and the Browser usually got a higher OOM, which tends to kill earlier than Games..
it is reasonable.. as the WEB you can load again with the same URL..
while the game got killed, you lost the state... android is doing it's work nicely I guess.
best memory managment script i have tryed is v6supercharger http://forum.xda-developers.com/showthread.php?t=991276
I think its the best of the best.
orlox said:
best memory managment script i have tryed is v6supercharger http://forum.xda-developers.com/showthread.php?t=991276
I think its the best of the best.
Click to expand...
Click to collapse
I tried both V6 and Juwe11's before...
and I manage to be patient enough to follow step by steps...
for installing so many things... and it just put a script in init.d at the end...
And I found it do not contain adj value in it, so I come back to Juwe11's
but anyway, this is your choice...
thanks for that script
just a quick question
would this script also work on a sgs2, running oxygen aosp stock rom?
pa.pn2 said:
thanks for that script
just a quick question
would this script also work on a sgs2, running oxygen aosp stock rom?
Click to expand...
Click to collapse
same as Original Juwe11's version.
it was suppose to work on any ROM which support init.d
but the values may need some tweaking accordingly.
squide said:
I'm not sure if other Launcher would have a different OOM value~
I have Autokiller memory optimizer which I paid before...so I can view OOM value easily..
But with this Script... I guess really no task killer needed for our 2X already.
Click to expand...
Click to collapse
Sorry to let you down. But the results are the same......
Sent from my LG-P990 using XDA App
squide said:
I tried both V6 and Juwe11's before...
and I manage to be patient enough to follow step by steps...
for installing so many things... and it just put a script in init.d at the end...
And I found it do not contain adj value in it, so I come back to Juwe11's
but anyway, this is your choice...
Click to expand...
Click to collapse
adj values are in /data/SuperChargerAdj while minfree values are in /data/SuperChargerMinfree.
it's just a script in init.d at the end, you only need to follow it step by step...
squide said:
so, just edit the minfree value according to the values inside AutoKiller if you find some other setting suits you more
but about the adj value... I guess that part is already good enough
now I find my phone already got around 60-90 free RAM at any time...
Multiple games running at the background while web browsing...
and the Browser usually got a higher OOM, which tends to kill earlier than Games..
it is reasonable.. as the WEB you can load again with the same URL..
while the game got killed, you lost the state... android is doing it's work nicely I guess.
Click to expand...
Click to collapse
i set the preset to moderate and get about 126-128mb on free ram pretty impressive and the stock browser don't get close so quickly nice! i use v10e ESA and neoblaze kernel
Works on CM7?
_Vegas said:
Works on CM7?
Click to expand...
Click to collapse
it should work on all ROM supporting init.d
in case you don't like it, go to /etc/init.d to remove the script and reboot.
it wont modify your file system..
it just override some system value on boot.
if you removes the script.. your phone would back to the state before you install this.
so, just try see if u like, if not, delete it, reboot, that's it.
Works really nicely on CM7 nightly.
Sent from my Optimus 2X
Bit of a Dumb question but my phone still has the Stock rom and doesn't have the init.d Folder
if I created /system/etc/init.d and copied the script into that would this work?
waynefox said:
Bit of a Dumb question but my phone still has the Stock rom and doesn't have the init.d Folder
if I created /system/etc/init.d and copied the script into that would this work?
Click to expand...
Click to collapse
Sorry, no. You need a custom rom of some sort to get init.d support.
TrymHansen said:
Sorry, no. You need a custom rom of some sort to get init.d support.
Click to expand...
Click to collapse
You need a Custom Kernel supporting init.d to be more accurate.
and NeoBlaze is a good one to try with.
if you really need to keep your stock ROM..
First of all you still need to root your phone
Install ROM manager from market
flash the Clockworkmod via ROM manager
install NeoBlaze Kernel, then you're ready.
if warranty is your concern, take a look to the Nvflash thread..
O2X is ALMOST unbrickable, almost.
squide said:
You need a Custom Kernel supporting init.d to be more accurate.
and NeoBlaze is a good one to try with.
if you really need to keep your stock ROM..
First of all you still need to root your phone
Install ROM manager from market
flash the Clockworkmod via ROM manager
install NeoBlaze Kernel, then you're ready.
Click to expand...
Click to collapse
I'm pretty sure that won't work. You need ROM-support as well. (A Ramdisk script which starts the init.d. thing to be even more accurate.) Feel free to prove me wrong.
TrymHansen said:
I'm pretty sure that won't work. You need ROM-support as well. (A Ramdisk script which starts the init.d. thing to be even more accurate.) Feel free to prove me wrong.
Click to expand...
Click to collapse
Ramdisk is a part of the kernel, so if you bung a kernel that supports init.d on (any) rom it'll run what's in there assuming it's eXecutable.
You can do it on the stock rom even, as long as you have a init.d kernel (and create the entries in ../etc/init.d/).
Although I can't "prove" this to you at the moment...

The magic script made by Ezet

Ezet did a fantastic scripts for iodak 8 in Anykernel post.
With 95 iodak this script the kernel have a better performance and longer battery :laugh:
With 95cvt it has only better battery life but does not change the other parametters.
I have tried it with Mokee kernel and it is also working, so probably it will be useful in other kernels!
Please try it and report.
The script is easy to use:
Extract and paste it in the folder /system/etc/init.d
Be sure the permission are at least 775
Reboot and enjoy
Special thanks to Ezet :highfive:
the script have been modified and the vibration intensity has been removed as the ROM I use has this setting included
I think this is then script for cpuquite not dure if it does anything in a kernel without that
Sent from my LG-P880 using xda app-developers app
moneyvirus said:
I think this is then script for cpuquite not dure if it does anything in a kernel without that
Sent from my LG-P880 using xda app-developers app
Click to expand...
Click to collapse
Witch of the last kernels does not have cpuquite?
Anyway, edit the script and you will see there are other interesting tweaks that makes P880 run smooth and fast without devouring the battery
Tell me please! And can anyone make a zip, so you can install the script when you upgrade the firmware? I just do not know how to point to the updater-script, to set the system with the permissions of 775.
Hint to fix script permissions
negativman said:
Tell me please! And can anyone make a zip, so you can install the script when you upgrade the firmware? I just do not know how to point to the updater-script, to set the system with the permissions of 775.
Click to expand...
Click to collapse
I am using x-plore from google play
https://play.google.com/store/apps/details?id=com.lonelycatgames.Xplore&hl=en
Configure X-plore to have the maximum access to root
Move the script to init.d folder
Long tab on the script and check permissions: normally there are right :good:
if not add the missing ones.
alberteske said:
I am using x-plore from google play
https://play.google.com/store/apps/details?id=com.lonelycatgames.Xplore&hl=en
Configure X-plore to have the maximum access to root
Move the script to init.d folder
Long tab on the script and check permissions: normally there are right :good:
if not add the missing ones.
Click to expand...
Click to collapse
You did not understand me. I'm not talking about that. I update the firmware CM every day. Whenever you update the "hands" to copy this file to the system and grant permission is not very convenient. I want to install a recovery, as the kernel, modem, and so on.
negativman said:
Tell me please! And can anyone make a zip, so you can install the script when you upgrade the firmware? I just do not know how to point to the updater-script, to set the system with the permissions of 775.
Click to expand...
Click to collapse
Here is it: http://p880.skylam.eu/ezetscript.zip
The battery charges to 93% NO MORE with script
greece-for-ever said:
The battery charges to 93% NO MORE with script
Click to expand...
Click to collapse
Very extrange because the script is not tweaking the charging process
Not working for me.
I'm on CM 10.1.3. With Iodak 8.5
Took a peek in the scrpt, and looks harmless, with cpuquiet enabled and some network and IO buffer tweaks.
Though, battery drain has worsened a huge lot, getting to a -12% in two hours with data disabled and phone supposedly deep sleeping. (used to be <2% before, in the same conditions)
Performance wise I had no benefits at all, scoring a 16620 antutu score (it was 16660 before).
Uninstalled, but thanks all the same, worths trying, maybe it's just me, and the script is easy to install and remove.
Ottonet said:
Not working for me.
I'm on CM 10.1.3. With Iodak 8.5
Took a peek in the scrpt, and looks harmless, with cpuquiet enabled and some network and IO buffer tweaks.
Though, battery drain has worsened a huge lot, getting to a -12% in two hours with data disabled and phone supposedly deep sleeping. (used to be <2% before, in the same conditions)
Performance wise I had no benefits at all, scoring a 16620 antutu score (it was 16660 before).
Uninstalled, but thanks all the same, worths trying, maybe it's just me, and the script is easy to install and remove.
Click to expand...
Click to collapse
Thanks for reporting.
In my case I use latest CM4.3.1 and it has a great improvement with iodak that is the based kernel for Ezet to do the script but also with Mokee kernel that is much more battery demanding without this script.
alberteske said:
Thanks for reporting.
In my case I use latest CM4.3.1 and it has a great improvement with iodak that is the based kernel for Ezet to do the script but also with Mokee kernel that is much more battery demanding without this script.
Click to expand...
Click to collapse
I wrote my last post in a hurry and forgot to mention that after installing the script I lost RIL signal, which was not happening anymore since I upgraded to CM 10.1.3 Stable.
The only way to get signal back was to reboot the phone. The battery drain can be due to phone desperately trying to get a signal. This behaviour was quite common until Sept.23rd, when I upgraded.
As I uninstalled the script, the situation was reverted to normality.
95 cvt
I have added in the first page 95cvt that only plays with the wake locks and thus give a better battery life but does not change the other parameters also from Ezet :highfive:
Tried it on zaiben rc6+iodak v8, can't feel signifant improvement on battery, best manage to get just 2hr in single full charge, the rest mostly can achieve 1hr+ battery life only.
You guys understand there isnt anything in that script that will realistically increase battery life? Ezet would have made this script because iodak would have applied these parameters at the initrd level since anykernel replaces iodaks initrd, they have to be applied at the android level.
The first command scales the clock speed up to 750mhz on touch input, the second enables cpuquiet (which should be enabled by default, im not sure why it wouldn't be.) the third makes cpuquiet use the runnable governor (I believe balanced is more orientated to battery life, but this can be changed in trickstermod for example)
The rest of it disables ipv6, sets tcp buffer sizes and modifies some permissions, i dont think Ezet would have modified this from iodak's settings, but he can correct me if im wrong
JoinTheRealms said:
You guys understand there isnt anything in that script that will realistically increase battery life? Ezet would have made this script because iodak would have applied these parameters at the initrd level since anykernel replaces iodaks initrd, they have to be applied at the android level.
The first command scales the clock speed up to 750mhz on touch input, the second enables cpuquiet (which should be enabled by default, im not sure why it wouldn't be.) the third makes cpuquiet use the runnable governor (I believe balanced is more orientated to battery life, but this can be changed in trickstermod for example)
The rest of it disables ipv6, sets tcp buffer sizes and modifies some permissions, i dont think Ezet would have modified this from iodak's settings, but he can correct me if im wrong
Click to expand...
Click to collapse
It worked also in Mokke kernels and this why I opened the post...
It improves grately the battery life when the phone is not active and that is also important!
You can also use the other script that is not tweaking the data speed.
Can u repack it for stock roms ? Is it possible?
Sent from my LG-P880 using XDA Premium 4 mobile app
emre81tr said:
Can u repack it for stock roms ? Is it possible?
Sent from my LG-P880 using XDA Premium 4 mobile app
Click to expand...
Click to collapse
This script is for all roms
alberteske said:
It worked also in Mokke kernels and this why I opened the post...
It improves grately the battery life when the phone is not active and that is also important!
You can also use the other script that is not tweaking the data speed.
Click to expand...
Click to collapse
That's not true. This script does not improve. I have tested several weeks, without success. I am sorry.
Best regards
varadinum said:
That's not true. This script does not improve. I have tested several weeks, without success. I am sorry.
Best regards
Click to expand...
Click to collapse
As mentioned in first post, the script was made by Ezet to improve battery life with iodak kernel.
There are a few that report the benefits of this tweak.
The script save battery especially when you do not use the phone and improves the speed of data when you use it.
I unpack the tweak and try it with Mokee kernel and it also gave longer battery life..
I posted to see if it is the same with other kernels and ROMs.
The result is that it varies from one ROM and Kernel to another.
I am on CM ROM and Mokee or Iodak kernel and it worked really fine.
Nevertheless it seems that from December releases, I would say that the script does not make much difference.
Probably Cm team fixed the wakelocks issues but I was unable to see it in the changelog.

[FW 402][UB][6502/6503]YadliKernel, almost stock, slight undervolt, notification light mod

[FW 402][UB][6502/6503]YadliKernel, almost stock, slight undervolt, notification light mod
This kernel is based on Sony .402 source.
The goal is to create an almost stock kernel with recovery, battery saving modules, and eye-candies.
Attention: Users with locked boot loader should NOT flash this, even you have recovery!
The image will be written to the correct partition, but the BL will refuse to load it!
Credits goes to @DoomLord for his wonderful guide, toolchain and various tools for kernel building.
Features:
-75mv undervolt. No sysfs interface. Taking effect from powering on.
Notification light mod. Discussion thread [v2]
A new patch to correctly cap all cores. Compatible with all frequency setting apps. [v3]
TODOs:
Nothing TODO. Any suggestions?
YadliKernelV3 pre-built image download
YadliKernelV2 pre-built image download
Github repo
XDA:DevDB Information
YadliKernel, Kernel for the Sony Xperia Z2
Contributors
glocklee, twy_2000
Kernel Special Features:
Version Information
Status: Beta
Created 2014-07-08
Last Updated 2014-07-09
Hey mate, very nice to have another developer for Z2.
It is just my opinion, but isn't -75mv will create unstable system?
TheoDores said:
Hey mate, very nice to have another developer for Z2.
It is just my opinion, but isn't -75mv will create unstable system?
Click to expand...
Click to collapse
I'm testing this all the time. Seems no problem so far.
I do experience random reboots one or two times a day with -100mv for my phone.
If you find it unstable, please post it here and I'll modify the parameters.
(Well in that case I think I'd better plug the undervolt interface back in )
Thank you so much. I shall test it right away and report if I come across any issues.
Can we use this with the newest firmware?
twolfekc said:
Can we use this with the newest firmware?
Click to expand...
Click to collapse
If you are talking about .438 (is it 438 or 437? I'm not sure ), then perhaps no.
Please wait until the source code for that firmware to be released by Sony.
I have a locked bootloader, but rooted (stock. 402) and using XZDualRecovery. Can I simply flash this kernel?
glocklee said:
If you are talking about .438 (is it 438 or 437? I'm not sure ), then perhaps no.
Please wait until the source code for that firmware to be released by Sony.
Click to expand...
Click to collapse
glocklee said:
I'm testing this all the time. Seems no problem so far.
I do experience random reboots one or two times a day with -100mv for my phone.
If you find it unstable, please post it here and I'll modify the parameters.
(Well in that case I think I'd better plug the undervolt interface back in )
Click to expand...
Click to collapse
http://forum.xda-developers.com/showthread.php?t=2766797
In that thread, some user experience crashes beyond -12mv.
DooMLoRD said:
for me initially -72 mV was working but not stable... for now -60 mV is mostly stable, with a rare random reboot here or there
Click to expand...
Click to collapse
nreuge said:
I was nearly stable at -36 mV with a rare random reboot here or there. Now, it's seems I'm 100% stable at -24 mV and I saw elsewhere that another user was stable at -48 mV. No luck for me... Anyway, all that confirms that each device behaves differently.
Click to expand...
Click to collapse
Just for your consideration
I'm guessing this won't work on a locked bootloader (when has it ever?)
TheoDores said:
http://forum.xda-developers.com/showthread.php?t=2766797
In that thread, some user experience crashes beyond -12mv.
Just for your consideration
Click to expand...
Click to collapse
Thanks! I'll consider changing the initial values, or bring in the interface in the next version.
Meanwhile, a lot of people are testing this in a Chinese forum (I guess they're going for the LED mod not the unstable undervolt:cyclops. If any of them report crashes I'll update at once.
Also, in the next version I'll write a patch similar to "snake charmer" but works without FauxClock.
Thus you can cap the freqs with things like SetCPU.
I personally purchased both but FauxClock refuses to work without Google stuff.
And now I'm on a Chinese FW... Well
HussainQ said:
I'm guessing this won't work on a locked bootloader (when has it ever?)
Click to expand...
Click to collapse
Hold on, I'll make a recovery zip later.
The problem is that currently I don't know how.
I'm a noob in android development
glocklee said:
Hold on, I'll make a recovery zip later.
The problem is that currently I don't know how.
I'm a noob in android development
Click to expand...
Click to collapse
Well custom kernels aren't supposed to be able to work on locked bootloaders (changes to protected partition).
How did you change the notification light mod, maybe that doesn't require an unlocked bootloader.
HussainQ said:
Well custom kernels aren't supposed to be able to work on locked bootloaders (changes to protected partition).
How sis you change the notification light mod, maybe that doesn't require an unlocked bootloader.
Click to expand...
Click to collapse
The interpolation code is written in the kernel. Linear, n=16, nothing heavy.
I've already had people to test this kernel on locked BL. It did not go through BL/fastboot. Instead I adapted @DooMLoRD's installer that flushes the image directly to the corresponding mmcblk.
EDIT:
*facepalm* It did go into the partition... But locked BL refuses to load it! :/
Are we able to change individual settings in your kernel using FauxClock like DoomKernel or are all the settings hard-coded?
Not too keen on running my phone with -75mv as anthing over -24 would make my phone reboot like crazy
drknezz said:
Are we able to change individual settings in your kernel using FauxClock like DoomKernel or are all the settings hard-coded?
Not too keen on running my phone with -75mv as anthing over -24 would make my phone reboot like crazy
Click to expand...
Click to collapse
Currently no. But I'll include that feature in the next build.
Thanks for the suggestion.
It would be really nice if you put changelog for different of each version changing.
Thanks.
It's already there pal.
Sent from my L50w using XDA Free mobile app
Sorry, I missed it
-75mV is to much undervolting!
it works fine in 99.5% of the time. But under extrem high load, like CPU Prime Benchmark apps like Qualcomm Trepn Profiler start to crash.
Thats a sign for unstable undervolting.
.314 FW is out, do you think to update your kernel to this new version?

Categories

Resources