[CM10] (5Feb13) NC Performance (and) Placebos - Nook Color General

After getting a little annoyed at the runty, poorly mapped-out, scratchy thicket of real and imagined performance tweaks, I decided to embark on a semi-long term project to determine what's real and what's "zomg mega-booster performance pills".
First project was to evaluate existing performance options on stock CM10 for actual gains using experimental design. (tl;dr: for those geeky enough to want to know, it was a main effects only d-optimal design with 32 design points for the 16 parameters listed, including several lack-of-fit and pure-error replicates. I could go on, but do you really want me to?). I ended up with a list of 16 parameters all together, from the Developer Options and Performance settings, based on their showing up in various performance tweaks discussions.
The main challenge was finding a way to measure actual performance instead of perception. I settled on several benchmarking tools: Antutu, Quadrant, SQL Benchmark, and Chainfire's benchmarking app. One of the parameters being tested ("don't keep activities") actually breaks Antutu at the graphics testing step, so I'm not reporting anything from Antutu.
All told, out of the 16 parameters tested, only 9 showed any kind of effect whatsoever, and combining best settings for all 9 simultaneously, total performance only boosted by ~20%, of which fully half was due to switching max speed from 1000 to 1100. this means the other 8 settings combined for a total boost of ~10%, meaning individually they're peanuts. The remaining 7 settings that showed no effect are only so much fluff and unlikely to do a thing for you performance-wise.
Results are summarized below for your reading/teeth-gnashing pleasure:
Max Speed (1000 versus 1100): Very clear, notable difference between the two settings on all benchmarks. This is the expected result, about 10% improvement in all benchmarks on average. Recommendation: set max speed at 1100.
Governor (convservative vs interactive vs ondemand): This only had any impact on Quadrant benchmark, no other benchmarks appeared to care. In Quadrant, conservative was the worst overall, while interactive provided an ~ 5% boost and ondemand gave ~6% boost. Recommendation: use ondemand.
Scheduler (BFQ, CFQ, noop, deadline): I don't know what schedulers do or the differences between these settings, but the only place they had any effect at all was in the SQL benchmark. There were clear differences here though: BFQ was by far the worst. CFQ and deadline were about the same with a 17% increase in SQL activity performance. noop was the best with ~ 20% increase in SQL activity performance. Recommendation: use noop. [update: some have reported stability issues with noop. If thus us the case for you, CFQ would be the next best choice]
Zram (disabled, 18% default, 26%): Zram effects only showed up in Chainfire's benchmark app, specifically for Java activities. Default 18% setting performed worst but disabled setting wasn't significantly different. 26% setting gave a 4% boost, but again, only for the java-specific benchmark. Recommmendation: use 26% setting.
16-bit transparency (off or on): Turning on the 16-bit transparency setting gave a smallish 3% boost to Chainfire's java benchmark. It did not have a measureable effect anywhere else, and I did not visually see any differences anywhere during testing. Recommendation: turn on 16-bit transparency.
Kernel same-page merge (off or on): This had a *negative* effect when turned on, resulting in a 1% performance hit on Chainfire's native benchmark. It did not have any measurable effect anywhere else. Recommendation: Keep off.
Don't keep activities (off or on): This was very problematic: it provided a distinct improvement in quadrant score (+8%) when turned on, but behaved poorly with other apps (Antutu being one). Since it didn't seem to help anywhere else outside of Quadrant and didnt' play well with others, recommendation is to keep off:
The following list are the settings that had no measureable impact anywhere. Any attempt to claim they have "zomg" status should be summarily whipped with placebo pills, or else they should let me know the exact details in which they supposedly work and I can test.
Placebo hall of shame:
Surface improvement (since it had no effect anywhere, why not just set it on banding/blur and have the best pictures?)
Background process limit
Disable HW overlays
Force GPU setting
Any of the animation scale settings (although they look snappier at lower settings, so it at least *feels* faster)
minimum speed (seriously? people think this has an effect? keep at 300 for best battery life)
Allow purging of assets
Hope you like this, y'all! Let me know if there's any other mad-scientist experiments you'd like to see.

Nicely done. How many times did you run each test? Or perhaps the results were very consistent.
FYI; regarding the governor, scheduler and the like, you may want to have a look at this thread;
http://forum.xda-developers.com/showthread.php?t=1369817
I think gives your tests / results some perspective as well.

Re: [CM10] NC Performance (and) Placebos
NCKevo said:
Nicely done. How many times did you run each test? Or perhaps the results were very consistent.
FYI; regarding the governor, scheduler and the like, you may want to have a look at this thread;
http://forum.xda-developers.com/showthread.php?t=1369817
I think gives your tests / results some perspective as well.
Click to expand...
Click to collapse
Thanks for the link. Very informative.
How familiar are you with factorial designs? All parameters were tested simultaneously in such a way that their individual effects can be partitioned out mathematically. That's what allows me to test all those settings with just 32 runs and still get solid estimates of their effects, and more importantly, the amount of variation around them (a requirement for distinguishing real effects from noise).
I suggest googling "factorial design of experiments" if you're interested.

skwalas said:
Let me know if there's any other mad-scientist experiments you'd like to see.
Click to expand...
Click to collapse
Here are some others you could try gauging:
Seeder
http://forum.xda-developers.com/showthread.php?t=1987032
V6 Supercharger
http://forum.xda-developers.com/showthread.php?t=1191747
Lagfix
http://forum.xda-developers.com/showthread.php?t=2104326
OOM/Sysctl tweaks
http://forum.xda-developers.com/showthread.php?p=34123854#post34123854
http://forum.xda-developers.com/showthread.php?p=34448792#post34448792

Re: [CM10] NC Performance (and) Placebos
Good suggestions. Before trying these third party tweaks would be good to know a few things from actual users:
Has anyone tried any combinations of these tweaks simultaneously? If yes, did they all play well together? If no, details please!
Some of these appear to have device specific settings, can anyone share settings being used on the NC?
I intend to sandbox these, as i have little desire to use then in real life just yet. Can anyone confirm that if i restore my current setup, the restore process will clean out whatever settings these tweaks out in place?
Speaking for all scientists, thank you kindly!

skwalas said:
Good suggestions. Before trying these third party tweaks would be good to know a few things from actual users:
Has anyone tried any combinations of these tweaks simultaneously? If yes, did they all play well together? If no, details please!
Some of these appear to have device specific settings, can anyone share settings being used on the NC?
I intend to sandbox these, as i have little desire to use then in real life just yet. Can anyone confirm that if i restore my current setup, the restore process will clean out whatever settings these tweaks out in place?
Speaking for all scientists, thank you kindly!
Click to expand...
Click to collapse
Have only used V6, from my experiences, restoring a Nandroid or flashing a new nightly will clean out everything it changes other than the files you store on the SDcard. This post details how I set it up http://forum.xda-developers.com/showpost.php?p=34991382&postcount=1234
I never really noticed a huge performance boost from V6, it did reduce the lag that was in the Beta's and early nightlies, mostly seemed to keep memory available and avoid the lag issued in the early builds. Have not used for the last few weeks since performance has improved on the newer builds.

Re: [CM10] NC Performance (and) Placebos
I set all recommendations. I get back to you in a couple of days. I am running 20130120 nightly
Sent from my NookColor using Tapatalk HD

Thank you!
Thank you for your measured and logical approach and recommendations! It is appreciated. I have experimented a little with the third party tweaks and haven't found any that fascinating, honestly.
When I install CM10.1, I also flash a script I made to customize to my preference and delete stuff I don't use like language modules, ringtones, quicksearch, boot animation, etc to free up some RAM. Between that and killing memory hungry apps when I'm done, my old Nook is still holding on reasonably well.

Re: [CM10] NC Performance (and) Placebos
Skwalas:
Got to tell you, your suggestions on settings are paying off. My nook is smooooooth. Is working ok there is sometime that lag liittle bit, but my p3113 also doing the same. I will stay with this 0120 nightly for a while with your settings on perfomance. .
I will report later how i am doing
Sent from my NookColor using Tapatalk HD

Re: [CM10] NC Performance (and) Placebos
performance is ok....
Sent from my NookColor using xda app-developers app

Re: [CM10] NC Performance (and) Placebos
Sometimes mook freezes and I have to leave it until it settles. The rest of the time works good
Sent from my GT-P3113 using Tapatalk HD

Re: [CM10] NC Performance (and) Placebos
Ok. Today my nook wakeup crazy. Rebooted, but it stays changing from settings , battery and some icos. It llok like it retains some touches i did to the screen and created like a loop. I have to rebooted again. Then i change the io scheduler to cfq.
Sent from my NookColor using Tapatalk HD

Re: [CM10] NC Performance (and) Placebos
Lakland said:
Ok. Today my nook wakeup crazy. Rebooted, but it stays changing from settings , battery and some icos. It llok like it retains some touches i did to the screen and created like a loop. I have to rebooted again. Then i change the io scheduler to cfq.
Sent from my NookColor using Tapatalk HD
Click to expand...
Click to collapse
Would be hard to know what is settings specific and what is hardware or OS specific. I've had no issues with the settings as described, so let us know if you are able to resolve your issues.

Re: [CM10] NC Performance (and) Placebos
skwalas said:
Would be hard to know what is settings specific and what is hardware or OS specific. I've had no issues with the settings as described, so let us know if you are able to resolve your issues.
Click to expand...
Click to collapse
I know and I am using your settings as a baseline, rigght now I change de io scheduler to cfq. Is working fine. Keep you posed and thanks!
Sent from my GT-P3113 using Tapatalk HD

Lakland said:
I know and I am using your settings as a baseline, rigght now I change de io scheduler to cfq. Is working fine. Keep you posed and thanks!
Sent from my GT-P3113 using Tapatalk HD
Click to expand...
Click to collapse
I have had erratic behavior from schedulers also, especially BFQ, NOOP is not bad, but have had better luck with CFQ.

skwalas said:
Zram (disabled, 18% default, 26%): Zram effects only showed up in Chainfire's benchmark app, specifically for Java activities. Default 18% setting performed worst but disabled setting wasn't significantly different. 26% setting gave a 4% boost, but again, only for the java-specific benchmark. Recommmendation: use 26% setting.
Click to expand...
Click to collapse
I'm surprised that zram enabled IMPROVED things. So between disabled, 18%, and 26% (no idea what default really is without digging in the code), 26% was the best option?
Interesting. I thought zram would improve multitasking (maintaining background activities) at the expense of potential slowdowns (compressed swap to ramdisk).

khaytsus said:
I'm surprised that zram enabled IMPROVED things. So between disabled, 18%, and 26% (no idea what default really is without digging in the code), 26% was the best option?
Interesting. I thought zram would improve multitasking (maintaining background activities) at the expense of potential slowdowns (compressed swap to ramdisk).
Click to expand...
Click to collapse
It might have that effect, but wasn't apparent in the benchmarks i used. It could be that a different benchmark is needed to detect it, or it could be the negative effects are too small to be measurable compared to the normal "noise" of operation.
Any ideas how we could measure this more explicitly, if there is any interest?

skwalas said:
It might have that effect, but wasn't apparent in the benchmarks i used. It could be that a different benchmark is needed to detect it, or it could be the negative effects are too small to be measurable compared to the normal "noise" of operation.
Any ideas how we could measure this more explicitly, if there is any interest?
Click to expand...
Click to collapse
Good question, I'd think it'd require some way to switch activities around and somehow measure their switch rates, but the environment would be quite difficult to keep consistent.
BTW thanks for the scientific work on this stuff, MUCH better than "OMG THIS TURNED MY TABLET INTO A UNICORN" posts we see a lot on tech forums.

skwalas said:
Any ideas how we could measure this more explicitly, if there is any interest?
Click to expand...
Click to collapse
Since it would help most when memory is low (like it ever isn't), running two memory hogs simultaneously should show an effect if there is one. A custom memory-hog app built under two different names, perhaps?
I have a shell script that creates a swapfile and enables its use that would also be well tested this way, since zram creates an in-memory swapfile. I was never able to see any tangible results except for the output of "free", so I don't use it anymore, and haven't tried it under CM10.1.
Sent from my NookColor using xda premium

Related

[Q] Linux scheduler optimization works miracles

Way above my skill-set. But when you near 45, I think you tend to get that way.
Seriously, if this could be used on our SGS, can it make for a smoother scrolling experience?
I'll try to merge this patch to the currently used kernel source and see what happens.
Had the low latency patch applied and running for a while since.
Need some changes to get it in Android kernel, but nothing drastic, and judging by the code in tty_io.c, groups are created as per tty, would not work on Android, needs manual grouping, and have not seen any improvements though.
Not worth the trouble.
IMHO, scheduler isn't really the issue here, unless you're running a few CPU intensive programs in background, to which isn't the Android's way of doing things, you would be sharing the CPU intensive foreground app resource with background app, that has neg effect, things get slower instead.
"Low latency, the more responsive UI gets." statement maybe true but UI's 'responsiveness' has more than just a low-latency kernel to it.

Speed up your Nook Color running ICS+

Hello all, today I will be showing you how to speed up your Nook Color a bit... these methods should work for CM9/CM10/CM10.1/Paranoid Android/etc., but I personally found these out while running PA ICS. The apps you may need to make your phone faster are Ram Manager (Free OR Pro) and No Frills CPU Control (In the case that your ROM doesn't have overclocking in settings). Basically, using these "tweaks" (minus overclock, as whenever I flash a ROM the first thing I do is overclock it), I went from a painfully slow (as in, I was ready to go back to Gingerbread) device to a somewhat faster device. I've seen huge differences in launching games and apps especially, and opening to app drawer seems to be smoother also.
CPU Overclock
Either using No Frills CPU Control or the built-in overclock, set your max CPU speed to the highest on the list (not exceeding 1200, but it shouldn't show anything above that anyhow). Change your governor to either Ondemand or Performance (I personally use Ondemand and have no problems with it). Most of you are probably already overclocked though, so please don't look at me like I'm stupid.
Swap Space
Open up RAM Manager and there should be an option to change your swap space at the bottom. I changed mine to about 48 and am content with that, although I must add it may make your SD card's life shorter. This will increase your RAM, thus allowing you to have more apps open at once.
Force GPU rendering
Open Developer Options in your settings app and check "Force GPU Rendering"... I'm guessing this is one of the biggest factors to my tablet becoming smoother, as from research it helps lower end devices achieve a better framerate, although it may decrease your battery life. Also, I cannot guarantee every app will run great with this. I tested a game (Dynamite Jack) with this setting enabled and it wasn't too shabby at all! But yes, I can definitely see a difference in the overall speed of my Nook Color.
Please tell me how these work for you
I tried these settings, but unfortunately didn't perceive any performance improvement.
Good call on RAM manager. Hadn't seen that before, its going on my NC and RAZR now
Can anyone tell me a good reason for that RAM Manager app to have the permissions it does? Location, Identity, and full network access?
Does NOT work. All this app " no frills CPU" does is provide a GUI front end for the settings already found for our nook color using CM 10+ in its "performace" settings. Also this app does not provide over clocking above our set 1100 MHz. You will need a custom over clocking kernel for the encore for this. Check over on the CM 10 kernel thread n the development section.

Overclocking

Hi guys!
I'm on eXistenZ 3.0, and everything's perfect, but i wanted to know how can i use the 'overclocking' settings? Do you know an optimal frequency?
Or what exactly can i do with that?
I'm just curious
spicx212 said:
Hi guys!
I'm on eXistenZ 3.0, and everything's perfect, but i wanted to know how can i use the 'overclocking' settings? Do you know an optimal frequency?
Or what exactly can i do with that?
I'm just curious
Click to expand...
Click to collapse
Interesting that you should ask. Coming from windows/intel chips, where overclocking is going beyond the highest value set at the PC bios to speed up the computer (thus generating more heat), I come to understand that "overclocking" in the android world is either to increase the lowest setting or decrease the highest setting for optimal performance (basically to save battery or reduce heat). In android, there is no way to increase the set highest value that I can see...
Of course, I stand to be corrected by long time android users here (I just came into android in Feb this year)
spicx212 said:
Hi guys!
I'm on eXistenZ 3.0, and everything's perfect, but i wanted to know how can i use the 'overclocking' settings? Do you know an optimal frequency?
Or what exactly can i do with that?
I'm just curious
Click to expand...
Click to collapse
Do you want to Overclock the SoC itself or tweak the other options such as the Low Memory Killer, SD Card Read Ahead, etc?
Since I'm running the stock kernel (my bootloader is relocked), I cannot overclock the SoC
I usually use:
Governor: ondemand
I/O Scheduler: deadline
But
Governor: interactive
I/O Scheduler: deadline
Would sometimes deliver higher benchmark scores
With regards to the Low Memory Killer, I'm satisfied with the stock settings but try to experiment with the other presets as you please.
As with the SD Card Read Ahead, I've selected 2048kb as it is said to be the optimal value. You can try to use benchmarks to determine what works best with your sd card.
---------- Post added at 06:40 PM ---------- Previous post was at 06:33 PM ----------
spicx212 said:
Hi guys!
I'm on eXistenZ 3.0, and everything's perfect, but i wanted to know how can i use the 'overclocking' settings? Do you know an optimal frequency?
Or what exactly can i do with that?
I'm just curious
Click to expand...
Click to collapse
Also, if you really want to overclock your SoC; you can choose to unlock your bootloader and flash DoomLord's DoomKernel. :3
Remember to backup your TA Partition first before doing this step as unlocking your bootloader WILL cause you to lose DRM Keys (bye bye Bravia Engine 2 and Download Music Info). You can search for BackupTA 9.10.
DoomKernel allows you to overclock up to 1.8GHz, provides you with a plethora of Governors, Schedulers, and other performance enhancements. e.g. Samsung exFAT Driver, etc.
TechKiel said:
...
DoomKernel allows you to overclock up to 1.8GHz, provides you with a plethora of Governors, Schedulers, and other performance enhancements. e.g. Samsung exFAT Driver, etc.
Click to expand...
Click to collapse
I see - there is a real 'overclocking' after all...
Thanks.
Everything is a bit new to me, new android user too. (i'm on locked bootloader)
Yeah i saw that i can maximize the current minimal settings, and minimize the maximum settings. I tried to increase a bit the minimum settings and did a benchmark, and i saw a difference already (i did 384 MHZ --> 584MHZ). But i dont want my phone to overheat or to decrease battery life.
The other options, i must admit i dont understand a thing, so what do you suggest to improve battery life for example, (or optimal settings if there are)?
spicx212 said:
Everything is a bit new to me, new android user too. (i'm on locked bootloader)
Yeah i saw that i can maximize the current minimal settings, and minimize the maximum settings. I tried to increase a bit the minimum settings and did a benchmark, and i saw a difference already (i did 384 MHZ --> 584MHZ). But i dont want my phone to overheat or to decrease battery life.
The other options, i must admit i dont understand a thing, so what do you suggest to improve battery life for example, (or optimal settings if there are)?
Click to expand...
Click to collapse
I would suggest:
Min: 384
Max: 1512
Governor: ondemand
Scheduler: noop
SD Card Read Ahead: 2048kb
As for the other settings, it's better to leave them untouched.
For additional battery saving,
Install "Greenify" to hibernate power hungry bg apps such as facebook.
Also, turn off location services and auto-sync if you don't utilize them.
You can also go further by using "BetterBatteryStats" to monitor which apps are sucking your battery.
TechKiel said:
I would suggest:
Min: 384
Max: 1512
Governor: ondemand
Scheduler: noop
SD Card Read Ahead: 2048kb
As for the other settings, it's better to leave them untouched.
For additional battery saving,
Install "Greenify" to hibernate power hungry bg apps such as facebook.
Also, turn off location services and auto-sync if you don't utilize them.
You can also go further by using "BetterBatteryStats" to monitor which apps are sucking your battery.
Click to expand...
Click to collapse
THanks a lot dude, i'm gonna try it!
btw if i set max to 1512 Mhz, my performance (while gaming for example) will decrease right?
spicx212 said:
THanks a lot dude, i'm gonna try it!
btw if i set max to 1512 Mhz, my performance (while gaming for example) will decrease right?
Click to expand...
Click to collapse
Yes. But it shouldn't be that much.
Using noop as your I/O Scheduler results to faster SD Card Reads while reducing CPU Cycles, reducing battery drain. Reduced CPU Cycles would seem to affect performance though.
D:
No problem. Just click thanks.
am using "rom tool box" on my XSP (rooted, .201, stock rom, c5303)... when setting up CPU speed, after reboot, settings are back to standard?!
any idea why'S that, or is it normal?
regentonne said:
am using "rom tool box" on my XSP (rooted, .201, stock rom, c5303)... when setting up CPU speed, after reboot, settings are back to standard?!
any idea why'S that, or is it normal?
Click to expand...
Click to collapse
Check out for other apps or init.d scripts that may have configured Processor settings during boot time.
TechKiel said:
Check out for other apps or init.d scripts that may have configured Processor settings during boot time.
Click to expand...
Click to collapse
sry, but, how to do that Oo

12 Hours of Screen On

AFTER DOING EVERY SINGLE ONE OF THESE INCLUDING THE OPTIONAL ONES YOU'LL GET 12 HOURS OF SCREEN ON TIME
IF YOU EXCLUDE OPTIONAL ONES YOU'LL GET MINIMUM 7+ HOURS OF SCREEN ON TIME
First,obviously, you need a rooted OP3 or OP3T
If your device isn't rooted check this out.
There is several steps to achieve this results,
TAKE A BACKUP
This is the most important. In case you mess something up or this guide doesn't quite work for you, you can always go back to your old setup.
Pick a ROM that works best for you in terms of battery life (I am using this ROM)
Pick a kernel that works well with your requirements and the ROM (I am using Boeffla Kernel)
So the key to achieve the best amount of screen on time is underclocking your CPU and GPU. An average user shouldn't have any problems underclocking but some users that play games or care about benchmarks shouldn't underclock. There is optimal values that I found while messing around in the config app.
After flashing ROMs and kernels don't boot yet! We have more to flash!
Download AKT profiles and flash!
After you've done these you can boot up your OP3/OP3T
Now we have several things to do on the device:
First thing's first, let's tweak the frequencies! The optimal values are around 844 MHz for the little and 1324 MHz for the big CPU and minimum frequencies should be at lowest possible. For the GPU the best value seems to be 401 MHz and again minimum frequency is lowest possible.
Next! Let's set our ROM's battery profile to performance! Wait hold up there wasn't I talking about longer screen on time how is performance profile is going to help? Here is the answer: Since we have already underclocked our CPU and GPU setting this profile to performance will allow things to be used up a little more. And it will make you feel good
Now remember when we flashed AKT Profiles? Now we'll set that to performance.. Oh wait what? Performance again? YES! But we'll pick the most smooth one. Set it to Fusion Performance!
(Optional) Now we have things to do with apps. Download Greenify to hibernate things when you aren't using them. Select apps according to your preferences and hibernate.
(Optional) Now we'll play with some wakelocks. Download a wakelock detector app and monitor the wakelocks. After some amount of time you'll see some useless apps waking your device every now and then. Go to your ROMs wakelock disabled and disable those wakelocks! Show them who is the owner of the phone! (For example you can block The File Manager HD's wakelock since it has no job when screen is off and MX Player's wakelock because again what can a video player app do when you aren't watching anything.)
After this point if you see more lag increase the CPU and GPU frequencies or reduce them if you see no lag and if you want more battery!
This method might not turn out the same for everyone! You might disable some wakelocks that are important for the device and mess up things so be CAREFUL and when hibernating note that all the hibernated apps will stop pushing notifications! So don't hibernate WhatsApp, Messenger etc.
There is a screenshot below as a proof.
I know I've done nothing but writing this but still if you want to donate here it is LOL
*UPDATE*: Blocking the useless wakelocks allow OP3 to survive 24 hours (if you aren't using it at all) only 3G on (no wifi, no GPS ONLY 3G)
what io scheduler and readahead values you use ?
tadessi said:
what io scheduler and readahead values you use ?
Click to expand...
Click to collapse
cfq and 1024 the defaults that came with Boeffla

[GUIDE] ROOT - Extreme battery life with 8-10h SOT & Opt for MIUI - Custom ROMs

Hi everyone, this is a guide based on my personal tests, which I have the pleasure to share with the whole community, for experienced users and not. Regardless of whether you prefer to use a MIUI stock or a custom ROMs, these are a series of tricks, Tweaks, passages, let's call them what we want, to get the maximum in terms of battery life, without sacrificing performance. First of all, we talk mainly to have the better experience for MIUI and PRINCIPALLY for ROOTED users, and custom ROMs too. No rooted users cannot expect miracles because there are modifications that mainly affect the entire operating system. I also hoped to find the Holy Grail, but unfortunately it still hasn't happened.
Anyway,: If you want to use a MIUI (preferably GLOBAL, I will explain later why this is the case); the first thing I recommend in addition to a backup (just in case), it's a pretty safe Debloat using the complete Saki tool:
https://saki-eu.github.io/XiaomiADBFastbootTools/
After giving our device a nice cleanup from Bloatware (obviously you choose which ones to remove or not, personally I removed almost all of them leaving only Gallery, Phone and Messages without any problem), the best part comes, and that is to apply all the settings for a better user experience in every aspect. The MIUI is obviously not optimized as a custom ROM, so we should do it ourselves. Personally I am a root user, so first of all I flashed Evira Kernel and Magisk (with which I am wonderfully) and put modules that I personally recommend: LKT (or others similar modules), Syconfig Patcher (they are the ones that interest us), but of course the appearance rooting is optional.
But back to optimization; for each application that we will install, we will have to configure its type of activity in the background based on how much you want the app to act in the background. For example, the "MIUI Calculator" app, which I almost never use, will have set "limit app functions", otherwise applications that we will use more often will suffice "MIUI optimization", such as "Youtube", and what more important, for apps for which notification is essential (such as Whatsapp or Gmail), remove the limitations.
But it's not over. Write in the settings menu "change system settings", then a list will open with all the apps we have installed. Clicking on one of them, a menu will open, where clicking on "battery and performance", we will choose whether to put the limitations in the background or not, same speech as before, limit everything that is not necessary, inverse speech obviously goes for app important to us (gmail whats etc), which we will leave free to act in the background.
Still in the "battery and performance" menu, click on "battery optimization" and optimize everything you can, except as usual, the apps you don't want to be limited as in the previous two steps.
Now we can activate the "Battery saving" mode, which will obviously work on the whole system, except for all the apps that we have NOT optimized before. They will absolutely not be touched. (A nice break of *** optimize the MIUI , Doh!)
Remember that at the beginning of the guide I told you "better to focus on the global rather than the ROM developer?" well, using a third-party tool like Kernel auditor (personally I use EX Kernel Manager with which I am wonderfully), in the dashboard the developer rom had higher CPU peaks than the Global.Il that involved higher consumption. And it is a tool like this "Ex Kernel Manager etc" that we will now configure.
Step 1 Configure the Governor.
The mode and the speed with which the processor passes from the maximum frequency to the minimum one is regulated by the so-called * "Governor"
There are more than 100 different types of Governor for kernel, more or less different; but not all Governors are present in the Kernels. In case you are using Evira Kernel, my advice is to set the CPU to the "Alucardsched" Governor which offers an excellent compromise between performance and battery life.
EDIT: Recently tested zzmove gov with Evira Kernel: little performance is lost compared to alucardsched, but the battery benefits. Personally i have chosen profile 3 (ybatex).
Step 2 I / O scheduler
It is precisely a program in the form of an algorithm which, given a set of requests for access to a resource, establishes a temporal order for the execution of such requests, privileging those that respect certain parameters, so as to optimize the access to this resource and thus allow the completion of the desired service / instruction or process. In this case, I recommend setting it to noop or Zen, for an approach closer to the battery.
In the GPU section, if you don't use particularly heavy games, (personally I play every now and then in clash royale and I don't have any kind of lag at all) you can also set up your own governor here, setting one like Powersave, but in any case this is completely subjective .
Once everything is set up, all that remains is to talk about the last aspect,
the Doze.
Originally introduced with Android Marshmallow, it allows applications and various activities in the background to "sleep" when the device is screen off. Of course over time it has been increasingly perfect, which is why: In a Stock MIUI you can afford to download Naptime, Servicely or Greenify if you want (personally I use Nap & Serv) to enhance Doze or hibernation as in the case of Greenify (excluding as always the apps we want to be in the whitelist).
IMPORTANT: different words must be made for Custom ROMs, which being already optimized, and having a definitely more effective Doze than the basic stock, DO NOT NEED third-party apps like Naptime or Greenify. In this case, even setting everything as the guide, notifications will not arrive when the screen is off, except when you unlock the device.
so as far as custom ROMs are concerned, you just need to limit the apps as in the guide, leave in the background those you don't want to be touched, and always remove the optimization for these "important" apps, I always repeat "whatsapp gmail etc". In this way you will be able to activate energy saving quietly, the apps you prefer will not be touched, and you already have a Doze optimized like the rest of the system. The only thing that applies to Custom ROMs, is always to set the Governors as described above.
That's all at last :fingers-crossed:.
Attached here are my screenshots, with 8 hours of SOT, DIVIDED IN THREE DAYS, so sometimes the phone was idle as during the night or at work. With these configurations, in a single day, or in a day and a half, you will easily arrive even at 10 hours of SOT and maybe even beyond. I hope you fell asleep while reading, but I wanted to make a guide (even if long), to explain to those who may not be very practical, some things that can always be useful. A simple "thanks" is always welcome!
Greetings .:good:
Two more things: for more battery saving, u can disable automatic sync in settings menu (so sync when u want), and probably after some rebooting, it is possible that the governors will reset itself to the default one. So I suggest you check it out.
Really thanks for your concern about battery life stuff, and yup indeed on custom ROMs sometimes we can get up to 10hrs SoT without any mod or even a custom kernel (my experience)!
I'm looking forward to see how long the battery will last when we get Android Q update from MI..
AbboodSY said:
Really thanks for your concern about battery life stuff, and yup indeed on custom ROMs sometimes we can get up to 10hrs SoT without any mod or even a custom kernel (my experience)!
I'm looking forward to see how long the battery will last when we get Android Q update from MI..
Click to expand...
Click to collapse
Thank you very much! If I am not mistaken, beyond the various new functions, the "Extreme battery savings" will return. With an adequate optimization, as above (also to be as clear as possible with any type of user), we hope to see many beautiful new performances :fingers-crossed::fingers-crossed:
LionHeart90 said:
If I am not mistaken, beyond the various new functions, the "Extreme battery savings" will return. With an adequate optimization, as above (also to be as clear as possible with any type of user), we hope to see many beautiful new performances :fingers-crossed::fingers-crossed:
Click to expand...
Click to collapse
I hope that MIUI 11 will bring some new battery saving techniques as well!
Thanks for the guide, with it you cleared some doubts that I had, I just have a question, for battery/performace Anxiety can be better than Zen? For what I read the past days is an optimized version of Maple wich gives good balance between battery and performance.
:good:
Eddywarez said:
Thanks for the guide, with it you cleared some doubts that I had, I just have a question, for battery/performace Anxiety can be better than Zen? For what I read the past days is an optimized version of Maple wich gives good balance between battery and performance.
:good:
Click to expand...
Click to collapse
Thanks bro; Zen and Anxiety are so similar as they are also different. Each I/O scheduler we choose can be the most indicated according to what we do with our device. Let me clarify: Anxiety is better in term of battery saving comparing with Maple, "It prioritizes reads over writes but tends to starve writes more".
Zen is based on noop and deadline, very stable and have a great balance, for this reason i choose it. But as mentioned there are no schedulers better than others. But better according to our needs. My advice is to try them both, and see how you are in your daily use of the device :fingers-crossed::fingers-crossed:
LionHeart90 said:
Thanks bro; Zen and Anxiety are so similar as they are also different. Each I/O scheduler we choose can be the most indicated according to what we do with our device. Let me clarify: Anxiety is better in term of battery saving comparing with Maple, "It prioritizes reads over writes but tends to starve writes more".
Zen is based on noop and deadline, very stable and have a great balance, for this reason i choose it. But as mentioned there are no schedulers better than others. But better according to our needs. My advice is to try them both, and see how you are in your daily use of the device :fingers-crossed::fingers-crossed:
Click to expand...
Click to collapse
Thanks for your answer and your work.
:good:
Battery life is not the only thing I look for. Stock rom batter life is good enough after debloat in many crapps using saki. Stability, functionalities, security.. overall stock rom is the way to go for me at the moment. Did you mention restricting permission on apps?
Welp, after playing Free Fire for 1:20:00 and PUBG for 4:00:00, a little Browsing, my battery usage was of 76%, I don't use LKT because last time I try it my wifi started working weird, only use Snaptime. Evira 2.2.
:good:
I would like to know what do you think about zzmove governor that was added in Evira 2.3. Thanks.
I tried to use your settings but at reboot all configuration change to interactive or schedutil for CPU, msm-adreno-tz for GPU e anxiety for Scheduler I/O. I guess there are some conflicts with LTK.... I don't kwow how you have 8 hours of screen on your device...
Eddywarez said:
Welp, after playing Free Fire for 1:20:00 and PUBG for 4:00:00, a little Browsing, my battery usage was of 76%, I don't use LKT because last time I try it my wifi started working weird, only use Snaptime. Evira 2.2.
:good:
I would like to know what do you think about zzmove governor that was added in Evira 2.3. Thanks.
Click to expand...
Click to collapse
Sure bro, i just flashed it few minutes ago. After a complete recharge cycle, ill tell u my opinion :highfive:
empedocle86 said:
I tried to use your settings but at reboot all configuration change to interactive or schedutil for CPU, msm-adreno-tz for GPU e anxiety for Scheduler I/O. I guess there are some conflicts with LTK.... I don't kwow how you have 8 hours of screen on your device...
Click to expand...
Click to collapse
Mate, if u read with more attention, i wrote about it in my second post..
Just reconfig Governor already. It could be happen, is normal
Im going to test darknesssched with zen without sysconfig patcher (Had mobile data connection issues), alucardsched give me a little lag in PUBG, when I use darknesssched that dont happen, zzmoove dont convince me, it is based in conservative and hasnt been updated since 2015, for what I know cpu governors schedutil based are more "smart".
:good:
Nice guide, bro :fingers-crossed:
@LionHeart90 thanks for your useful guide!
just a curiosity, you dont use miui? from your screenshot you have a aosp rom?
iaio72 said:
@LionHeart90 thanks for your useful guide!
just a curiosity, you dont use miui? from your screenshot you have a aosp rom?
Click to expand...
Click to collapse
Yes man, i use the MIUI 10.3.3.0 If u see, the 2 screenshots about battery life have been taken from it :cyclops:
MIUI 10.3.3.0 instead of latest 10.3.5.0?
iaio72 said:
MIUI 10.3.3.0 instead of latest 10.3.5.0?
Click to expand...
Click to collapse
Yep
Hm, i am locked...and have no kernels installed. And I'm not planing to do it.
Did restrictions and debloat and this is what I get.
Since I am on 10.3.5. my battery is weaker..
On 10.2.7 I had 2 sims with lousy signal, and I was having about 7,8 h of sot and same use.
Now before this tweaks I was hardly getting 5h in 24h
Yesterday I had weaker use then ussual but still, this isn't very good..but I think it is better.
I dont like this 10.3.5.
Spoiler
Sent from my Redmi Note 7 using Tapatalk

Categories

Resources