I have posted this in development, but thought General may be a better place for me peeps to see...YMMV!!!
SO...I wanted to give some performance enhancments that i have implemented on my NC. These have come from settings I have tweaked on my Epic 4G, that have seemed to GREATLY improve the smoothness and increased my wifi speeds. The first set of tweaks come courtesy of marcusant. His thread can be found here In the Epic 4G forums http://forum.xda-developers.com/show....php?t=1346680 This is to be copied into the sysctl.conf file located in /system/etc/. If its not there just create it.
net.ipv4.tcp_ecn=0
net.ipv4.route.flush = 1
net.ipv4.tcp_rfc1337 = 1
net.ipv4.ip_no_pmtu_disc = 0
net.ipv4.tcp_sack = 1
net.ipv4.tcp_fack = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_rmem = 4096 39000 187000
net.ipv4.tcp_wmem = 4096 39000 187000
net.ipv4.tcp_mem = 187000 187000 187000
net.ipv4.tcp_no_metrics_save = 1
net.ipv4.tcp_moderate_rcvbuf = 1
The first 4 tests in the attachment were prior to this tweak on CM9.
The next set of tweaks is courtesy of this thread http://forum.xda-developers.com/show...42047&page=439.
In Rom Toolbox (Note: to make changes using ROM Toolbox, you will need to purchase the pro version) I also changed some other settings as follows:
Under Kernel Tweaks, sysctl Conf:
Min Free: 4096
Dirty Ratio: 90
Background Ratio: 70
VFS Cache: 1
Oom Kill is checked
Under build.prop tweaks:
LCD: 240 (this is not used for the NC)
Ring Delay: 0 (this is not used for the NC)
VM Heap: 32m
Scan Interval: 300
Max Events: 150 (this is not used for the NC)
Under Auto Memory Manager:
Foreground: 6 MB
Visible: 8 MB
Secondary: 16 MB
Hidden: 30MB
Content: 40 MB
Empty: 50 MB
SD Boost value is at 4096 kb
And the changes to build.prop that I got from Biggoron:
Change:
davlik.vm.heapsize=92m (should originally be 32m)
Add: (these do not exist and must be manually added)
davlik.vm.heapstartsize=5m
davlik.vm.heapgrowthlimit=32m (thanks Bigoron)
I take NO credit for these tweaks, and no responsibility if it melts your NC! But I have found these tweaks to bring a HUGE improvement to my NC.
Also, my performance settings for CM9 are:
Governor: InteractiveX
CPU Steps: 300, 600, 825, 1100, 1300
All at stock voltages.
Good luck and let me know any results or changes that may work better!
This is very intriguing. Quick questions:
Is there any way to do this without the ROM Toolbox?
Also, are these related or overlapping (even conflicting) with the changes in the V6 Supercharger script?
FWIW, I think most of this could likely be compiled into a script that would apply the changes all at once, right?
mr72 said:
This is very intriguing. Quick questions:
Is there any way to do this without the ROM Toolbox?
Also, are these related or overlapping (even conflicting) with the changes in the V6 Supercharger script?
FWIW, I think most of this could likely be compiled into a script that would apply the changes all at once, right?
Click to expand...
Click to collapse
I haven't looked, but honestly, these are probably all housed in build.prop. I already had ROM Toolbox, so I just went with it. I know tnpapadakos complied the tweaks into the latest CM9 nightly here
The Auto Memory Manager portion is exactly what V6 changes for the OOM limits. So there may be some conflicts there. I dont believe the rest would conflict. I am definitely no dev, but have poked around in enough of the files to almost act like I know what I am doing!
adamdelozier said:
This is to be copied into the sysctl.conf file located in /system/etc/. If its not there just create it.
net.ipv4.tcp_ecn=0
net.ipv4.route.flush = 1
net.ipv4.tcp_rfc1337 = 1
net.ipv4.ip_no_pmtu_disc = 0
net.ipv4.tcp_sack = 1
net.ipv4.tcp_fack = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_rmem = 4096 39000 187000
net.ipv4.tcp_wmem = 4096 39000 187000
net.ipv4.tcp_mem = 187000 187000 187000
net.ipv4.tcp_no_metrics_save = 1
net.ipv4.tcp_moderate_rcvbuf = 1
Click to expand...
Click to collapse
That can easily be done with a script. Maybe I will try my hand at it and see how it works.
FWIW, I plan to research some of this and determine precisely what it is doing besides the default. I did a lot of this kind of work with a linux networking appliance that I developed for at my last job.
In Rom Toolbox (Note: to make changes using ROM Toolbox, you will need to purchase the pro version) I also changed some other settings as follows:
Under Kernel Tweaks, sysctl Conf:
Min Free: 4096
Dirty Ratio: 90
Background Ratio: 70
VFS Cache: 1
Oom Kill is checked
Click to expand...
Click to collapse
These are also in sysctl.conf. You could just add these lines, in addition to the ones you listed above:
vm.min_free_kbytes = 4096
vm.dirty_ratio = 90
vm.dirty_background_ratio = 70
vm.vfs_cache_pressure = 1
vm.oom_kill_allocating_task = 1
Under build.prop tweaks:
LCD: 240 (this is not used for the NC)
Ring Delay: 0 (this is not used for the NC)
VM Heap: 32m
Scan Interval: 300
Max Events: 150 (this is not used for the NC)
Click to expand...
Click to collapse
These can be done by editing build.prop manually.
you want:
dalvik.vm.heapsize=32m
wifi.supplicant_scan_interval=300
(you say the others are not used)
Under Auto Memory Manager:
Foreground: 6 MB
Visible: 8 MB
Secondary: 16 MB
Hidden: 30MB
Content: 40 MB
Empty: 50 MB
SD Boost value is at 4096 kb
Click to expand...
Click to collapse
These, I am guessing, are similar or in the similar vein as the V6Supercharger script.
And the changes to build.prop that I got from Biggoron:
Change:
davlik.vm.heapsize=92m (should originally be 32m)
Add: (these do not exist and must be manually added)
davlik.vm.heapstartsize=5m
davlik.vm.heapgrowthlimit=32m (thanks Bigoron)
Click to expand...
Click to collapse
Note the heapsize 92m is an overwrite of your other suggested setting from above.
Also, my performance settings for CM9 are:
Governor: InteractiveX
CPU Steps: 300, 600, 825, 1100, 1300
All at stock voltages.
Click to expand...
Click to collapse
In my guide, I shared my settings which are similar, but I don't go past 1200. Tweaking the voltages down will probably improve your battery life.
I am going to try the tweaks for build.prop and sysctl.conf.
mr72 said:
That can easily be done with a script. Maybe I will try my hand at it and see how it works.
FWIW, I plan to research some of this and determine precisely what it is doing besides the default. I did a lot of this kind of work with a linux networking appliance that I developed for at my last job.
These are also in sysctl.conf. You could just add these lines, in addition to the ones you listed above:
vm.min_free_kbytes = 4096
vm.dirty_ratio = 90
vm.dirty_background_ratio = 70
vm.vfs_cache_pressure = 1
vm.oom_kill_allocating_task = 1
These can be done by editing build.prop manually.
you want:
dalvik.vm.heapsize=32m
wifi.supplicant_scan_interval=300
(you say the others are not used)
These, I am guessing, are similar or in the similar vein as the V6Supercharger script.
Note the heapsize 92m is an overwrite of your other suggested setting from above.
In my guide, I shared my settings which are similar, but I don't go past 1200. Tweaking the voltages down will probably improve your battery life.
I am going to try the tweaks for build.prop and sysctl.conf.
Click to expand...
Click to collapse
thanks for the detail. I am the type to try and ask questions later. Tats how I learn best! Any improvements you can make give us all a better experience.
Sent from my NookColor using xda premium
Interesting thread.
There is also a sysctl config app in the market that allows tweaking of the values.
For those that like to play with fire
from Terminal
su
sysctl -a > /sdcard/sysconfig.txt
will create a dump of all the known current values that the kernel is using.
Well, most of the sysctl.conf and build.prop stuff is included in the ROM, and furthermore will likely be overwritten when you update the ROM, I would think.
And while I really like the V6Spercharger script, I think combining just the things it does for Nook Color, along with some of these things that make sense, all into one script, would really help. I might try my hand at this and see how it goes. This is all routine stuff for shell scripts.
mr72 said:
Well, most of the sysctl.conf and build.prop stuff is included in the ROM, and furthermore will likely be overwritten when you update the ROM, I would think.
And while I really like the V6Spercharger script, I think combining just the things it does for Nook Color, along with some of these things that make sense, all into one script, would really help. I might try my hand at this and see how it goes. This is all routine stuff for shell scripts.
Click to expand...
Click to collapse
If you can do it great! In the mean time, however conflicting the info may be, I will stick with it, because it sure is working damn good on both my devices!
Sent from my SPH-D700 using xda premium
adamdelozier said:
If you can do it great! In the mean time, however conflicting the info may be, I will stick with it, because it sure is working damn good on both my devices!
Click to expand...
Click to collapse
I am not disputing that it works!
I looked into the V6 Supercharger script, and it appears to be trying to be all things to all people, which makes it perhaps overkill for the NC. I might try and make a stripped version of it. My shell scripting is not exactly stellar.
I tell you what, this would all be a breeze to do in ruby. Do we have ruby working well on Android yet? I can't remember. If it was ruby, I could have the whole thing done in no time.
mr72 said:
I am not disputing that it works!
I looked into the V6 Supercharger script, and it appears to be trying to be all things to all people, which makes it perhaps overkill for the NC. I might try and make a stripped version of it. My shell scripting is not exactly stellar.
I tell you what, this would all be a breeze to do in ruby. Do we have ruby working well on Android yet? I can't remember. If it was ruby, I could have the whole thing done in no time.
Click to expand...
Click to collapse
Lol! I guess I wish I knew what ruby is?! I really want to learn programming and scripting on android. I just don't have enough time in the day with a 7 year old, 3 month old, and a pita job...not too mention the wife!! Haha. I would be more than happy to help test anything you can come up with. I may even try something myself if I can squeeze it in!
Sent from my SPH-D700 using xda premium
i can't attest to the ui smoothness yet but the wifi changes are insane... in my room my computer maxes out my broadband speed over wifi(30mbps) and i was getting around 15 on my nook(nothing to complain about) and 3mbps maximum on my galaxy nexus which apparently has a very low power wifi chip. i am now getting around 25 on my nook and 12 on my gnex. this is exactly what i've needed. i know you didnt find the tweaks but tremendous thanks for passing this on to us
ohshaith55 said:
i can't attest to the ui smoothness yet but the wifi changes are insane... in my room my computer maxes out my broadband speed over wifi(30mbps) and i was getting around 15 on my nook(nothing to complain about) and 3mbps maximum on my galaxy nexus which apparently has a very low power wifi chip. i am now getting around 25 on my nook and 12 on my gnex. this is exactly what i've needed. i know you didnt find the tweaks but tremendous thanks for passing this on to us
Click to expand...
Click to collapse
glad it worked for ya. Don't forget to hit that thanks button ;-)
Sent from my SPH-D700 using xda premium
If you are willing to put the packages into your davlik cache you can get Ruby through the Botbrew package manager. I know nothing about nothing, but it works for imagemagick and gcc.if you need dependencies to run, there is a growing list of available packages through opkg.
Inportb has done some cool stuff...
This is great, I am going to try this as soon as I can. Wifi always seems a little wonky for me.
Along with the previous sentiments - it would be great to package this up in a script or app or something. I don't know if it would be possible to bundle it into the CM9 builds, but that would be even better.
I am working on a script to do the build.prop and sysctl.conf changes. I'll leave the memory manager stuff to the V6 Supercharger.
Fwiw I have had a number of hard crashes, nook dies while asleep even for just one minute, since making these changes. I didn't notice any speed improvements. So I plan to study this some more for my own use. I think the network settings are a good idea but I'm not sure the vm tweaks are worth it.
Here's what I'm trying now, hopefully deals with the crashes:
build.prop:
wifi.supplicant_scan_interval=300
davlik.vm.heapsize=92m
davlik.vm.heapstartsize=5m
davlik.vm.heapgrowthlimit=32m
sysctl.conf:
# Changes added for network tweaking
net.ipv4.tcp_ecn=0
net.ipv4.route.flush = 1
net.ipv4.tcp_rfc1337 = 1
net.ipv4.ip_no_pmtu_disc = 0
net.ipv4.tcp_sack = 1
net.ipv4.tcp_fack = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_rmem = 4096 39000 187000
net.ipv4.tcp_wmem = 4096 39000 187000
net.ipv4.tcp_mem = 187000 187000 187000
net.ipv4.tcp_no_metrics_save = 1
net.ipv4.tcp_moderate_rcvbuf = 1
# Changes added for virtual memory tweaking
vm.min_free_kbytes = 4096
vm.dirty_ratio = 90
vm.dirty_background_ratio = 55
vm.vfs_cache_pressure = 20
vm.oom_kill_allocating_task = 1
and run the V6 Supercharger for the minfree settings (option 9)
mr72 said:
Here's what I'm trying now, hopefully deals with the crashes:
build.prop:
wifi.supplicant_scan_interval=300
davlik.vm.heapsize=92m
davlik.vm.heapstartsize=5m
davlik.vm.heapgrowthlimit=32m
sysctl.conf:
# Changes added for network tweaking
net.ipv4.tcp_ecn=0
net.ipv4.route.flush = 1
net.ipv4.tcp_rfc1337 = 1
net.ipv4.ip_no_pmtu_disc = 0
net.ipv4.tcp_sack = 1
net.ipv4.tcp_fack = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_rmem = 4096 39000 187000
net.ipv4.tcp_wmem = 4096 39000 187000
net.ipv4.tcp_mem = 187000 187000 187000
net.ipv4.tcp_no_metrics_save = 1
net.ipv4.tcp_moderate_rcvbuf = 1
# Changes added for virtual memory tweaking
vm.min_free_kbytes = 4096
vm.dirty_ratio = 90
vm.dirty_background_ratio = 55
vm.vfs_cache_pressure = 20
vm.oom_kill_allocating_task = 1
and run the V6 Supercharger for the minfree settings (option 9)
Click to expand...
Click to collapse
Hey...just as an fyi...this is the link to the epic cm9 blog http://epiccm.blogspot.com/p/cm9-status.html
they show on the latest alpha release some of the VM.dalvik tweaks are now being built into the cm9 releases for the epic. I have not looked yet to see if these are specific to the epic or coming from upstream.
Sent from my SPH-D700 using xda premium
adamdelozier said:
Hey...just as an fyi...this is the link to the epic cm9 blog http://epiccm.blogspot.com/p/cm9-status.html
they show on the latest alpha release some of the VM.dalvik tweaks are now being built into the cm9 releases for the epic. I have not looked yet to see if these are specific to the epic or coming from upstream.
Sent from my SPH-D700 using xda premium
Click to expand...
Click to collapse
That's very interesting. I would think those settings in particular are likely device-specific, but it is good to know that some of these are making it into the CM repo. Probably will also happen for the NC.
However, I can verify that these settings were neither default nor automatically set by the CM7.20 build I am running, and I suspect they are not set for CM7.10 either. So for the NC on CM7, these are likely different.
Whether they are a good idea or not, I don't know.
I put some tweaks into sysctl.conf but they don't appear to be applied on boot. Specifically,
net.ipv4.tcp_wmem = 4096 16384 131072
net.ipv4.tcp_rmem = 4096 87380 524288
Anyone else verify if sysctl.conf is being used on boot? CM7.2 here. I see the init.d script but I don't know how to figure out if those are enabled on Android. Running sysctl -p as superuser definitely works.
Related
Tried searching but didn't see anything already posted....
Cyanogen posted on twitter:
powertop for android binary: http://bit.ly/VfOUN .. it needs a kernel with timer debugging enabled (this is in the CM kernels)
Its a tar file that you download. I tried deploying the files but I get an error:
Error opening terminal: unknown
Here is how I deployed the files......
Code:
# pwd
pwd
/system/etc/terminfo
# ls -l l
ls -l l
-rw-r--r-- 1 0 0 1672 Jul 3 00:47 linux
# ls -l u
ls -l u
lrwxrwxrwx 1 0 0 10 Jul 3 00:49 unknown -> ../l/linux
# ls -l /system/bin/powertop
ls -l /system/bin/powertop
-rwxrwxrwx 1 0 0 286648 Jul 3 00:42 /system/bin/powertop
#
I get the same problem.
My guess is cyan is going to include it with 3.6.1 so we can just wait for that to be released.
ive tried various things too. cyanogen, must use some voodoo to get it to work. chmod 777 the 3 files changing PATH, TERM and terminfo, no avail
From cyan on twitter:
if you can't get powertop to work, try "export TERMINFO=/system/etc/terminfo" first
Tried it, still no luck though.
Screen shot of the problem
GOT IT!
Code:
# su
su
# export TERMINFO=/etc/terminfo
export TERMINFO=/etc/terminfo
# export TERM=linux
export TERM=linux
# powertop
Attached some screenshots...
It suggested "increase the VM dirty writeback time to 15 seconds"...
I think that was part of the sysctl.conf tweak thread. I haven't redone those tweaks since I wiped and put cyan's new ROM on my phone. Interesting.
I wish my dos prompt would work with ANSI control codes so I could run it through ADB...
BTW, the tweaks it suggests are for X86, not Android. Most can be ignored, especially the ones about kernel options.
I included it with 3.6.1 too.
So what exactly does this do?
Breen said:
So what exactly does this do?
Click to expand...
Click to collapse
How did you find this website if you've never used a search engine before?
I didn't find anything specific to android.
Just like a "check what consumes most power"-app.
lmfwtw said:
Does accepting powertop suggestions reduce the speed of the phone?
It is currently suggesting
Increase the VM dirty writeback time from 5.000 to 15 seconds with
echo 1500 > /proc/sys/vm/...
Another one it suggest is
Enable the CONFIG_NO_HZ
Enable CONFIG_USB_SUSPEND
Enable CONFIG_HPET_TIMER
in kernel conf option
Click to expand...
Click to collapse
ubernicholi said:
only VM dirty writeback works
the others are for x86 architecture, which the g1 is not. ignore the recommendations of this app.
Click to expand...
Click to collapse
A few questions:
I've been running my phone with Open Overclocker at min 528 Mhz / max 528 Mhz. Would it save battery life to put the minimum lower? (I've found that the lowest you can go is "001 / 528" (leading zeros are necessary).)
How do you implement the VM dirty writeback? lmfwtw says "echo 1500 > /proc/sys/vm/...". But what is the "..."?
What is gp_timer? It always seems to be the #1 cause of wakeups by FAR. Next is futest_wait, and sometimes m2m_i2c. Can they be shutdown/decreased?
Is there anything else we can write to the kernel to save power? I found this, http://ubuntuforums.org/showthread.php?t=729644 but I have no idea if any of that is applicable / will brick my phone.
I didn't find anything specific to android.
Just like a "check what consumes most power"-app.
Click to expand...
Click to collapse
Yeah thats what I found too.
Dont pay any attention to that dude, he likes to play pretend moderator at times and ***** at people for useless posts when in fact his posts are just as useless and adding to the garbage that clutter up threads.
I found this: "Powertop is a Linux command line tool that monitors your laptop (or desktop) and offers suggestions on how to make your hardware consume less power."
I have some other questions as well, but I'll wait. Does anyone know the ones in my last post?
I've been running my phone with Open Overclocker at min 528 Mhz / max 528 Mhz. Would it save battery life to put the minimum lower? (I've found that the lowest you can go is "001 / 528" (leading zeros are necessary).)
Click to expand...
Click to collapse
Found in another thread...
Do NOT use 128/528. It hurts battery life and the processor. The jump between 528 and the idle frequency is big enough to require extra circuits to be switched on. That does two things... slows down the gain of the processor speed and hurts battery life more than simply running permanently on 528.
Click to expand...
Click to collapse
I assume going 001 / 528 would be even worse. Hope that helped.
Senorkabob said:
Found in another thread...
I assume going 001 / 528 would be even worse. Hope that helped.
Click to expand...
Click to collapse
Thanks. Actually, last night after I put it on 001/528, I started having freezes almost immediately. For example, each time the screen rotated when I took the keyboard out, it froze. And when enabling an Alarm, the toast message caused a freeze. And they were 100% full freezes, ie had to take the battery out. After about 5 full freezes, I decided to go back to 528/528 and everything went back to normal. I guess I'll stay on 528/528 hah
So I'm new to phone hacking, but an experienced software developer with a pretty strong Linux background... Anyway, I was rooting around the filesystem and found /sys/devices/system/cpu/cpu0/cpufreq/
I checked the values in scaling_max_freq and scaling_min_freq and they were both set to 528000. After doing some forum searching I see that some people mention using setCPU to let their CPU throttle down to 245 MHz when the screen is off, but when I tried to do echo 245000 > scaling_min_freq it doesn't ever change from 528000
I'm using Fresh 1.1, do I need to install a different kernel if I want my CPU to scale, and why can't I edit this file manually? I assumed that all setCPU was doing was editing /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor and scaling_max_freq and scaling_min_freq
ASULutzy said:
So I'm new to phone hacking, but an experienced software developer with a pretty strong Linux background... Anyway, I was rooting around the filesystem and found /sys/devices/system/cpu/cpu0/cpufreq/
I checked the values in scaling_max_freq and scaling_min_freq and they were both set to 528000. After doing some forum searching I see that some people mention using setCPU to let their CPU throttle down to 245 MHz when the screen is off, but when I tried to do echo 245000 > scaling_min_freq it doesn't ever change from 528000
I'm using Fresh 1.1, do I need to install a different kernel if I want my CPU to scale, and why can't I edit this file manually? I assumed that all setCPU was doing was editing /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor and scaling_max_freq and scaling_min_freq
Click to expand...
Click to collapse
I dont know alot about linux or the kernel stuff but I do know that those of us that have been using SetCPU to adjust freqency have been installing a seperate kernel. Its Gumbo Kernel. Ill get you a link.
Gumbo Kernel
http://forum.xda-developers.com/showpost.php?p=5502421
Looks like there's a script in there that fiddles with the memory freer and sets the scaling_governor to performance instead of ondemand or msm7k.
Changes /sys/module/lowmemorykiller/parameters/minfree 1536,2048,4096,5120,5632,6144
to 1536,3072,4096,21000,23000,25000 that's interesting.
edit: I'm not sure how useful that really is. Memory that isn't storing anything isn't doing anything, and so while it might make you feel better to say "Look! I have 90 mb free!" that really isn't as great as you'd think. If you run low on memory (ie the active process is needing more), then it's already going to kill and free up empty apps and content providers with no clients attached, so not really sure how useful that particular part really is.
edit2: So returning to my original question. If I want to change how low my CPU will scale down to, I need to install a new kernel?
ASULutzy said:
Looks like there's a script in there that fiddles with the memory freer and sets the scaling_governor to performance instead of ondemand or msm7k.
Changes /sys/module/lowmemorykiller/parameters/minfree 1536,2048,4096,5120,5632,6144
to 1536,3072,4096,21000,23000,25000 that's interesting.
edit: I'm not sure how useful that really is. Memory that isn't storing anything isn't doing anything, and so while it might make you feel better to say "Look! I have 90 mb free!" that really isn't as great as you'd think. If you run low on memory (ie the active process is needing more), then it's already going to kill and free up empty apps and content providers with no clients attached, so not really sure how useful that particular part really is.
edit2: So returning to my original question. If I want to change how low my CPU will scale down to, I need to install a new kernel?
Click to expand...
Click to collapse
Yes. Try the gumbo kernel. try scaling it to 160 just for fun. You'll see how slow it is, and it will prove that the cpu scaling works. try it at 528 also.
{
"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"
}
Before we get to the mod, I want to get a little personal. I make these mods so that your Android experience will be enhanced. If you find something wrong with the mod then provide constructive criticism. Don't just sit there behind your computer and degrade the effects based on what you see in the code, especially if you are even unwilling to try the mod in the first place. That irritates the hell out of me and unfortunately, I can't help you with your issues...so do yourself and others a favor and either use the mod and provide constructive criticism such as results (positive or negative) or ways to improve it or don't use it at all. That being said, these tweaks work in conjunction with each other, they are not each meant to increase your battery life.
This is my mod for achieving good-great battery life. This is the mod I use in Anthem™ which has given me 50+ hours on a single charge. The increase in battery life may not be "tenfold" for you, but it does increase, which is still better than not increasing. Contact me before including it in your own ROM (that you plan on publicly releasing). I will allow you to use it, just ask first. Please give credit or thanks or both
First: Here is a flashable .zip of the mod that may or may not work with your ROM. I'd still advise doing it manually.
Sysctl.conf - Updated May 3, 2012Requirements:
HTC Incredible (preferably)
Kernel with zram swap (for swappiness)
Kernel with init.d support
Currently working on:
HTC Incredible - Anthem, Clutch, AOKP, ICSenseless
HTC Amaze 4G
Step 1
Open up your ROM.zip (or whatever it's called) in 7zip (Windows) or Betterzip (OSX) and locate
sysctl.conf in /system/etc
If it's not in this directory, create it.
Step 2
In your sysctl.conf file, paste the following code and save it.
Code:
#sysctl.conf file
fs.nr_open=1053696;
fs.inotify.max_queued_events=32000;
fs.inotify.max_user_instances=256;
fs.inotify.max_user_watches=10240;
fs.lease-break-time=10;
fs.file-max=165164;
kernel.threads-max=525810;
kernel.random.write_wakeup_threshold=256;
kernel.random.read_wakeup_threshold=128;
kernel.sched_compat_yield=1;
kernel.panic=5;
kernel.panic_on_oops=1;
kernel.msgmni=2048;
kernel.msgmax=64000;
kernel.shmmni=4096;
kernel.shmall=2097152;
kernel.shmmax=268435456;
kernel.sem=500 512000 64 2048;
kernel.sched_features=24189;
kernel.hung_task_timeout_secs=30;
kernel.sched_latency_ns=18000000;
kernel.sched_min_granularity_ns=1500000;
kernel.sched_wakeup_granularity_ns=3000000;
kernel.sched_shares_ratelimit=256000;
kernel.sched_child_runs_first=0;
fs.lease-break-time=10;
fs.file-max=65536;
vm.dirty_ratio=90;
vm.dirty_background_ratio=80;
vm.oom_kill_allocating_task=1;
vm.overcommit_memory=1;
vm.page-cluster=3;
vm.drop_caches=3;
vm.min_free_kbytes=4096;
vm.panic_on_oom=0;
vm.dirty_expire_centisecs=1000;
vm.dirty_writeback_centisecs=2000;
vm.oom_kill_allocating_task=0;
vm.vfs_cache_pressure=10;
vm.min_free_order_shift=4;
vm.laptop_mode=0;
vm.block_dump=0;
If the above code does not work for you, try this one. It has the semi-colons removed. Thanks Tiny
Code:
#sysctl.conf file
fs.nr_open=1053696
fs.inotify.max_queued_events=32000
fs.inotify.max_user_instances=256
fs.inotify.max_user_watches=10240
fs.lease-break-time=10
fs.file-max=165164
kernel.threads-max=525810
kernel.random.write_wakeup_threshold=256
kernel.random.read_wakeup_threshold=128
kernel.sched_compat_yield=1
kernel.panic=5
kernel.panic_on_oops=1
kernel.msgmni=2048
kernel.msgmax=64000
kernel.shmmni=4096
kernel.shmall=2097152
kernel.shmmax=268435456
kernel.sem=500 512000 64 2048
kernel.sched_features=24189
kernel.hung_task_timeout_secs=30
kernel.sched_latency_ns=18000000
kernel.sched_min_granularity_ns=1500000
kernel.sched_wakeup_granularity_ns=3000000
kernel.sched_shares_ratelimit=256000
kernel.sched_child_runs_first=0
fs.lease-break-time=10
fs.file-max=65536
vm.dirty_ratio=90
vm.dirty_background_ratio=80
vm.oom_kill_allocating_task=1
vm.overcommit_memory=1
vm.page-cluster=3
vm.drop_caches=3
vm.min_free_kbytes=4096
vm.panic_on_oom=0
vm.dirty_expire_centisecs=1000
vm.dirty_writeback_centisecs=2000
vm.oom_kill_allocating_task=0
vm.vfs_cache_pressure=10
vm.min_free_order_shift=4
vm.laptop_mode=0
vm.block_dump=0
Step 3
Now we need to enable it. So, navigate to /system/etc/init.d and create a file with the following code:
Code:
#!/system/bin/sh
# grep sysctl /etc/init.d/*
# Load /sys/etc/sysctl.conf
sysctl -p
sysctl -p is what initializes the code.
Just FYI: You don't actually need these lines:
Code:
# grep sysctl /etc/init.d/*
Code:
# Load /sys/etc/sysctl.conf
So this would have just sufficed.
Code:
#!/system/bin/sh
sysctl -p
If the above code does not work for any reason, try this:
Code:
#!/system/bin/sh
sysctl -p /system/etc/
Name your file something like this 10sysctl
Save your file.
NOTE: Your ROM must support init.d. You can do this by using dsixda's android kitchen
Step 4
Save your ROM and install it via recovery
OR
you could just push the files into your current ROM and try them out.
Credits to imoseyon for portions of the info
Ok, so what exactly is sysctl.conf?
The sysctl.conf is a configuration file for "sysctl" which is an interface for dynamically changing kernel parameters in the Linux OS. The configuration file contains the following elements, vm.min_free_kbytes, vm.dirty_ratio, vm.dirty_backgroud_ratio, vm.vfs_cache_pressure, vm.oom_kill_allocating_task. There are many other elements within the file, but we will be primarily focusing on these specifically (the vm prefix stands for virtual memory). The sysctl.conf file should be located in /etc (/system/etc) by default. To enable it you need your ROM to execute "sysctl -p" somewhere during the boot process (or shortly afterward). We will also be discussing how to enable it if it is not already done so. You can also run sysctl -p manually to enable it any time after the OS is started.
Now, let’s get down to what sysctl.conf does and how it works.
min free kbytes (vm.min_free_kbytes)
This is used to force the Linux VM to keep a minimum number of kilobytes free. The VM uses this number to compute a pages_min value for each lowmem zone in the system. Each lowmem zone gets a number of reserved free pages based proportionally on its size. Default is 2048kb.
dirty ratio (vm.dirty_ratio) and dirty background ratio (vm.dirty_background_ratio)
This controls how often the kernel writes data to "disk" (in our case the internal microSD system card, not the removable microSD card). When your apps write data to disk, Linux actually doesn't write the data out to the disk right away, it actually writes the stuff to system memory and the kernel handles when and how the data is actually going to be flushed to the disk. These values represent a percentage, the higher the percentage, the longer it waits to flush, the lower the percentage, the more often flushes will occur. Now remember, we are dealing with solid state storage, not the traditional disk platter and spindle. So we are actually able to delay flushes a little longer with solid state versus a traditional hard drive disk.
VFS Cache Pressure (vm.vfs_cache_pressure)
Now here is where it gets interesting! File system cache (dentry/inode) is really more important than the block cache above in dirty ratio and dirty background ratio, so we really want the kernel to use up much more of the RAM for file system cache, this will increas the performance of the system without sacrificing performance at the application level. The default value is 100, as a percentage, and what you want to do is lower the value to tell the kernel to favor the file system cache and not drop them aggressively.
oom allocating task (vm.oom_kill_allocating_task)(enable or disable, generally in Linux this value is either a "1" or a "0," representing as on or off.)
This enables or disables killing the OOM-triggering task in out-of-memory (oom) situations. If this is set to zero, or disabled, the OOM killer will scan through the entire task list and select a task based on heuristics to kill. This normally selects a rogue memory-hogging task that frees up a large amount of memory when killed. If this is set to non-zero, or enabled, the OOM killer simply kills the task that triggered the out-of-memory condition. This avoids the expensive task list scan, which can take mass amounts of time and "hang" or freeze the system.
block_dump (vm.block_dump)
This enables block I/O debugging when set to a nonzero value. If you want to find out which process caused the disk to spin up (see /proc/sys/vm/laptop_mode), you can gather information by setting the flag.
When this flag is set, Linux reports all disk read and write operations that take place, and all block dirtyings done to files. This makes it possible to debug why a disk needs to spin up, and to increase battery life even more. The output of block_dump is written to the kernel output, and it can be retrieved using "dmesg". When you use block_dump and your kernel logging level also includes kernel debugging messages, you probably want to turn off klogd, otherwise the output of block_dump will be logged, causing disk activity that is not normally there.
overcommit_memory (vm.overcommit_memory)
This controls overcommit of system memory, possibly allowing processes to allocate (but not use) more memory than is actually available.
0 - Heuristic overcommit handling. Obvious overcommits of address space are refused. Used for a typical system. It ensures a seriously wild allocation fails while allowing overcommit to reduce swap usage. root is allowed to allocate slighly more memory in this mode. This is the default.
1 - Always overcommit. Appropriate for some scientific applications.
2 - Don't overcommit. The total address space commit for the system is not permitted to exceed swap plus a configurable percentage (default is 50) of physical RAM. Depending on the percentage you use, in most situations this means a process will not be killed while attempting to use already-allocated memory but will receive errors on memory allocation as appropriate.
page-cluster (vm.page-cluster)
This controls the number of pages which are written to swap in a single attempt. The swap I/O size.
It is a logarithmic value - setting it to zero means "1 page", setting it to 1 means "2 pages", setting it to 2 means "4 pages", etc.
The default value is three (eight pages at a time). There may be some small benefits in tuning this to a different value if your workload is swap-intensive.
panic_on_oom (vm.panic_on_oom)
This enables or disables panic on out-of-memory feature. If this is set to 1, the kernel panics when out-of-memory happens. If this is set to 0, the kernel will kill some rogue process, by calling oom_kill().
Usually, oom_killer can kill rogue processes and system will survive. If you want to panic the system rather than killing rogue processes, set this to 1.
The default value is 0.
Panic is a system error that is detected by the kernel.
dirty_expire_centisecs (vm.dirty_expire_centisecs)
How old "dirty" data should be before the kernel considers it old enough to be written to disk. It is expressed in 100ths of a second.
dirty_writeback_centisecs (vm.dirty_writeback_centisecs)
This is the interval of when the writeback daemons periodically wake up and write "old" data out to disk. It is expressed in 100ths of a second.
I would be stoked if someone made a flashable zip for me to try
Sent from my ADR6300 using XDA
Could you please explain how this will increase battery life? And if it can be used in other phones?
Sent from my ADR6425LVW using XDA
Does this work on x10 mini with miniCM by NAa ?
I have sysctrl.conf file and when open it with rootexplorer its empty .
Can I add this lines from phone ? Copy/paste them into the files whith rootex ?
Pls answer me and thk U .
Sent from my E10i using xda premium
how do we know if our rom has init.d support?
do we have to ask the rom creator or is there a way to check
Is this already included in your Clutch Rom as well?
Sent from my HTC Droid Incredible using XDA
OMG_VTEC said:
how do we know if our rom has init.d support?
do we have to ask the rom creator or is there a way to check
Click to expand...
Click to collapse
You should have a line in /init.rc with busybox run-parts. To check the easiest way may be from the terminal:
Code:
grep busybox /init.rc
and look for a line like this:
Code:
service sysinit /system/bin/logwrapper /system/xbin/busybox run-parts /system/etc/init.d
graymonkey44 said:
Could you please explain how this will increase battery life? And if it can be used in other phones?
Sent from my ADR6425LVW using XDA
Click to expand...
Click to collapse
Trust me it works, I had over 20+ hours at a semi heavy use.
Sent from my ADR6300 using Tapatalk 2
withbloodskies said:
Trust me it works, I had over 20+ hours at a semi heavy use.
Click to expand...
Click to collapse
Was there any system performance degradation and/or instability?
Would someone knowledgeable be willing to give an overview description as to what the proposed changes effect?
Would also like to know if this could be done from phone.
PureMotive said:
Okay guys, I just thought I'd give you my mod for achieving good-great battery life. This is the mod I use in Anthem™ which has given me 50+ hours on a single charge. Feel free to include it in your own ROM or whatever. Giving credit would be nice
Step 1
Open up your ROM.zip (or whatever it's called) in 7zip (Windows) or Betterzip (OSX) and locate
sysctl.conf in /system/etc
If it's not in this directory, create it.
Step 2
In your sysctl.conf file, post the following code and save it.
Code:
#sysctl.conf file
fs.nr_open=1053696;
fs.inotify.max_queued_events=32000;
fs.inotify.max_user_instances=256;
fs.inotify.max_user_watches=10240;
fs.lease-break-time=10;
fs.file-max=165164;
kernel.threads-max=525810;
kernel.random.write_wakeup_threshold=256;
kernel.random.read_wakeup_threshold=128;
kernel.panic=5;
kernel.sched_compat_yield=1;
kernel.panic=0;
kernel.panic_on_oops=1;
kernel.msgmni=2048;
kernel.msgmax=64000;
kernel.shmmni=4096;
kernel.shmall=2097152;
kernel.shmmax=268435456;
kernel.sem='500 512000 64 2048';
kernel.sched_features=24189;
kernel.hung_task_timeout_secs=30;
kernel.sched_latency_ns=18000000;
kernel.sched_min_granularity_ns=1500000;
kernel.sched_wakeup_granularity_ns=3000000;
kernel.sched_shares_ratelimit=256000;
kernel.sched_child_runs_first=0;
fs.lease-break-time=10;
fs.file-max=65536;
net.core.wmem_max=524288;
net.core.rmem_max=524288;
net.core.rmem_default=262144;
net.core.wmem_default=262144;
net.core.optmem_max=20480;
net.unix.max_dgram_qlen=50;
net.ipv4.tcp_keepalive_time=900;
net.ipv4.tcp_keepalive_probes=5;
net.ipv4.tcp_keepalive_intvl=156;
net.ipv4.tcp_timestamps=0;
net.ipv4.tcp_sack=1;
net.ipv4.tcp_fack=1;
net.ipv4.tcp_window_scaling=1;
net.ipv4.tcp_tw_recycle=1;
net.ipv4.tcp_tw_reuse=1;
net.ipv4.tcp_congestion_control=cubic;
net.ipv4.tcp_syncookies=1;
net.ipv4.conf.all.rp_filter=1;
net.ipv4.conf.default.rp_filter=1;
net.ipv4.tcp_synack_retries=2;
net.ipv4.tcp_syn_retries=2;
net.ipv4.tcp_max_syn_backlog=1024;
net.ipv4.tcp_max_tw_buckets=16384;
net.ipv4.icmp_echo_ignore_all=1;
net.ipv4.icmp_ignore_bogus_error_responses=1;
net.ipv4.tcp_no_metrics_save=1;
net.ipv4.tcp_fin_timeout=15;
net.ipv4.tcp_keepalive_intvl=30;
net.ipv4.tcp_keepalive_probes=5;
net.ipv4.tcp_keepalive_time=1800;
net.ipv4.ip_forward=0;
net.ipv4.conf.default.accept_source_route=0 ;
net.ipv4.conf.all.accept_source_route=0;
net.ipv4.conf.all.accept_redirects=0;
net.ipv4.conf.default.accept_redirects=0;
net.ipv4.conf.all.secure_redirects=0;
net.ipv4.conf.default.secure_redirects=0;
net.ipv4.udp_rmem_min=6144;
net.ipv4.udp_wmem_min=6144;
net.ipv4.tcp_rfc1337=1;
net.ipv4.ip_no_pmtu_disc=0;
net.ipv4.tcp_ecn=0;
net.ipv4.route.flush=1;
net.ipv4.tcp_rmem='6144 87380 524288';
net.ipv4.tcp_wmem='6144 87380 524288';
net.ipv6.conf.default.use_tempaddr=2;
net.ipv6.conf.all.use_tempaddr=2;
net.ipv6.conf.all.temp_prefered_lft=3600;
net.ipv6.conf.default.temp_prefered_lft=3600;
vm.dirty_ratio=90;
vm.dirty_background_ratio=80;
vm.oom_kill_allocating_task=1;
vm.overcommit_memory=1;
vm.page-cluster=3;
vm.drop_caches=3;
vm.min_free_kbytes=4096;
vm.panic_on_oom=0;
vm.dirty_expire_centisecs=1000;
vm.dirty_writeback_centisecs=2000;
vm.oom_kill_allocating_task=0;
vm.vfs_cache_pressure=10;
vm.min_free_order_shift=4;
vm.laptop_mode=0;
vm.block_dump=0;
Step 3
Now we need to enable it. So, navigate to /system/etc/init.d and create a file with the following code:
Code:
#!/system/bin/sh
# grep sysctl /etc/init.d/*
/etc/init.d/02vm:# Load /sys/etc/sysctl.conf
/etc/init.d/02vm:sysctl -p
sysctl -p is what initializes the code.
Name your file something like this 10sysctl
Save your file.
NOTE: Your ROM must support init.d. You can do this by using dsixda's android kitchen
Step 4
Save your ROM and install it via recovery
OR
you could just push the files into your current ROM and try them out.
Click to expand...
Click to collapse
Would this work on my HTC Inspire 4g?
Sent from my HTC Inpsire 4G using XDA
Would this work on my HTC Inspire 4G?
Sent from my Desire HD using XDA
I will try this method, as do the necessary tests will comment if it works or not, Greetings!
Does this code change things like how often you're phone checks the cell tower? Have you experienced any missed calls if this is the case? 50+ hours of battery life sounds like it'd be worth the risk, just curious as to what this script is actually doing.
Sent from my ADR6300 using XDA
ferotakis said:
Does this work on x10 mini with miniCM by NAa ?
I have sysctrl.conf file and when open it with rootexplorer its empty .
Can I add this lines from phone ? Copy/paste them into the files whith rootex ?
Pls answer me and thk U .
Sent from my E10i using xda premium
Click to expand...
Click to collapse
Yeah you should be able to paste it with rootex and get it working.
david.degraw54 said:
Would this work on my HTC Inspire 4G?
Sent from my Desire HD using XDA
Click to expand...
Click to collapse
Yes it should. It works with mine lol
jprow507 said:
Is this already included in your Clutch Rom as well?
Sent from my HTC Droid Incredible using XDA
Click to expand...
Click to collapse
Yep
ChuckFarley said:
Does this code change things like how often you're phone checks the cell tower? Have you experienced any missed calls if this is the case? 50+ hours of battery life sounds like it'd be worth the risk, just curious as to what this script is actually doing.
Sent from my ADR6300 using XDA
Click to expand...
Click to collapse
Nope, no missed calls. Everything works fine after using this script. Basically, if you use this, you're just getting the same or similar battery life and performance experience of Anthem on different ROMs.
Can someone please explain what this exactly does to improve battery life?
Sent from my ADR6425LVW using XDA
graymonkey44 said:
Can someone please explain what this exactly does to improve battery life?
Sent from my ADR6425LVW using XDA
Click to expand...
Click to collapse
Yes please answer this.
And can someone make this into a flashable .zip?
PureMotive said:
Nope, no missed calls. Everything works fine after using this script. Basically, if you use this, you're just getting the same or similar battery life and performance experience of Anthem on different ROMs.
Click to expand...
Click to collapse
Wow, sounds too good to be true. I'm all in!
Sent from my ADR6300 using XDA
I'll update the OP later with an explanation.
Quick question about adding the code to the sysctl.conf file: Do you completely replace the existing code with your suggested code, or append yours to the existing?
I think lagfix app doesn't do anything nor do via terminal command. I saw some people say Trim work on their devices but i am not sure about that especially what i understand from screenshots, Here they are;
Lagfix says trim was performed as soon as i run it.
Terminal shows 0 (zero) bytes trimmed.
As i learned from lagfix xda's page trimming should take minutes and (for example) ''239723590 bytes trimmed'' should written on screen.
"Kowalski M1-noRH" - trim does not work with that kernel, it only works with the alphas of 127
and it only trims something if there needs something to be trimed, if it says 0 bytes, then this is not the case
i shared my settings in screenshot and update my signature. i am using 3.1.10 exp 127 Alpha 15
BS86 said:
"Kowalski M1-noRH" - trim does not work with that kernel, it only works with the alphas of 127
and it only trims something if there needs something to be trimed, if it says 0 bytes, then this is not the case
Click to expand...
Click to collapse
I can see the amount of bytes trimmed. I've configured periodically morning to TRIM and then I see how much bytes is trimmed.
When I start the application manually show me the same as yours SS.
Ok, I will try automated Trim this night and share ss tomorrow.
Sent from my LG-P990 using XDA Premium 4 mobile app
Or Trim maybe works depending on how much apps you have installed.
If you have huge amount of data and cache from those apps then Lagfix can actually make some changes/differences....that's my theory...
Sent from my LG-P990 using xda app-developers app
okay trim works :good: automatic trim at 6 am. i found these result in notification bar.
200 mb system trimmed
5 mb cache trimmed
50 mb data trimmed. and my phone didnt turn to a brick
And do you see/feel any speed improvement?
hello guys and girls,
I am quite sure everyone knows and feels that our pixels are already super smooth. However few of us are never completely satisfied and are looking for ways to make the device even more smoother.
Some of you might be aware, that the sched governor, which is bound to eas, isn´t as customizable as the old interactive governor. This is the main reason we don´t have any scripts or tweaks touching the governor.
So I did some digging and finally found a tunable that allows the cpu to be even more aggressive. This will result (at least for me) in a tremendous effect on overall smoothness. Battery life will take only a slight or a grave hit, depending on the boost you choose. @Alcolawl you are free to do benchmarks
The schedtune.boost (s) reside in the directories /dev/stune, dev/stunde/foreground and dev/stune/background
You can apply values from 0 to 100.
When setting it to 100 your device will run constantly with all cores maxed out.
I found values from 2 to 10 to have the most efficient effect.
I am currently using a boost value of 8. Battery life is still awesome. But oh my god how smooth the device runs now.
Remember: you can also set the values higher yourself
For your convenience I made scripts that you can either put in system/etc/init.d or system/su.d. I am planning to refine and maybe add more tweaks to our pixels. So stay tuned and lets all work together. The script does not look like much, but try it before you judge.
Download links will be in the second post.
Instructions:
1. Download the desired file. sched2 means a boost value of 2 will be applied. sched6 means a boost value of 6 will be applied. I think you get the concept.
2. Extract the script from the download
3. Copy the script to either system/etc/init.d or system/su.d
4. set permissions to 0755 (rwxr-xr-x) via terminal or your preferred root explorer.
5. reboot and wait a minute (there is a sleep timer)
6. profit
7. to check if the script got applied correctly do in terminal on your phone
su
cat dev/stune/schedtune.boost
Attention:
su.d only works when you have working root via supersu from chainfire.
Credits:
google for integrating eas to our pixels
@Alcolawl for letting me use his scripts on the HTC 10 and inspiring me greatly in the process. If he did not exist I probably wouldn´t have looked into finding this
Even if androidfilehost says Google Pixel XL, the script will work just fine on the regular Pixel.
The all-in-one package has all scripts with boost values including 2,4,6,8 and 10.
Download:
https://www.androidfilehost.com/?w=files&flid=140794
09.01.2017
v1:
- decreased the default boost value for top app from 50 to 25
- foreground-app has a boost of 15
- schedtune.boost for all other activities (that are not getting categorized) is set to 10
v2:
- decreased the default boost value for top app from 50 to 25
- foreground-app has a boost of 12
- schedtune.boost for all other activities (that are not getting categorized) is set to 8
I did this when it was posted in the XL forum and it works exactly as described and so very easy to install. I dont think my Pixel has run any faster and with what seems like no battery hit at all even when running the 10 script!
Thanks for this! Everything does seem smoother. Installed the 10 one because of what Archangel said.
Nice, I'll try it out too, and report after a bit of messing around.
For the record: the default boost value is 0
Apparently a 10% boost is already the default on Pixel, at least for the top-app? https://www.linuxplumbersconf.org/2...ations/3693/original/LPC- EAS for Android.pdf
Boosting the foreground thread in addition to top-app may make sense (which this script seems to do), but I think background is best left alone.
I am having a problem when checking to see if this worked, (this directory isn't found) although I've gone in and* checked haha. With the file "schedtune.boost" could we also manually change that value?
Edit: I've change the permissions correctly and have tried it in both places with no luck. :/.
Edit2: placed the file in both locations and changed the filename to include ". rc" and it seems to be working now.
Gonna try out 8
Finally got it work. But it didn't work when I placed it in system/etc/init. Only worked when I put it in Su/su.d
Simer03 said:
Gonna try out 8
Finally got it work. But it didn't work when I placed it in system/etc/init. Only worked when I put it in Su/su.d
Click to expand...
Click to collapse
system/etc/init.d not just init
Freak07 said:
system/etc/init.d not just init
Click to expand...
Click to collapse
I'm not sure why but mine wouldn't work from init.d either. Neither of the two folders mentioned existed on my phone. So, I made an init.d folder, put the file in there and rebooted. In the end, it didn't work. So, I created the su.d folder where it was supposed to be and tried from there. That worked. Go figure.
Can anybody do the same commands for the regular pixel? I only have the XL
[email protected]:/ # cat dev/cpuset/cpus
0-3
[email protected]:/ # cat dev/cpuset/top-app/cpus
0-3
[email protected]:/ # cat dev/cpuset/foreground/cpus
0-2
[email protected]:/ # cat dev/cpuset/background/cpus
0
[email protected]:/ # cat dev/cpuset/system-background/cpus
0-2
[email protected]:/ # cat dev/cpuset/camera-daemon/cpus
0-3
[email protected]:/ #
Freak07 said:
Can anybody do the same commands for the regular pixel? I only have the XL
[email protected]:/ # cat dev/cpuset/cpus
0-3
[email protected]:/ # cat dev/cpuset/top-app/cpus
0-3
[email protected]:/ # cat dev/cpuset/foreground/cpus
0-2
[email protected]:/ # cat dev/cpuset/background/cpus
0
[email protected]:/ # cat dev/cpuset/system-background/cpus
0-2
[email protected]:/ # cat dev/cpuset/camera-daemon/cpus
0-3
[email protected]:/ #
Click to expand...
Click to collapse
I got the exam same values as you on the Pixel. Although I am running Franco kernel if that makes a difference.
ChugJugThug said:
I got the exam same values as you on the Pixel. Although I am running Franco kernel if that makes a difference.
Click to expand...
Click to collapse
Thank you. I was just curious I wonder why google decided to change this. Possibly they had enough reserves battery wise to bump performance a bit.
Freak07 said:
system/etc/init.d not just init
Click to expand...
Click to collapse
Didnt have init.d. only su.d
Yeah I think most on this phone will have that folder only,,,if you put it in su.d and change permission it will work.
Simer03 said:
Didnt have init.d. only su.d
Click to expand...
Click to collapse
Those who are using the 10, still looking good on battery? I'm on 8 currently and so far so good
OTTOREIKU said:
Those who are using the 10, still looking good on battery? I'm on 8 currently and so far so good
Click to expand...
Click to collapse
I've been using 10 since the day this was posted. Can't say I've noticed much change in the battery (if any). Battery life has been good.
robocuff said:
I've been using 10 since the day this was posted. Can't say I've noticed much change in the battery (if any). Battery life has been good.
Click to expand...
Click to collapse
Glad to hear! I'll be loading up 10 shortly. Ty!
Is anyone noticing any appreciable changes in performance using this script at 8 or 10? I've been running it on 8 and can't really see any noticeable changes in performance or battery. i'm just curious what other people are experiencing. (and yes, i checked cat on terminal and I am running on 8)
I am running 20 and only notice a slight decrease in battery but the performance boost is really noticeable. 10 is the best for a mixture of performance increase and battery.
ChugJugThug said:
Is anyone noticing any appreciable changes in performance using this script at 8 or 10? I've been running it on 8 and can't really see any noticeable changes in performance or battery. i'm just curious what other people are experiencing. (and yes, i checked cat on terminal and I am running on 8)
Click to expand...
Click to collapse