[Galaxy Grand Duos i9082 Android Development] neves4:
CUSTOMIZE YOUR EXPERIENCE​

This part is still under construction, so bare with me!

How to customize the governors?

Most of the governors on XDA are based on some of the basic ones. As, I'm not the creator of any of these governors, I will only show you my personal recommendations and some links for you to read more. Let's go!

Interactive-based Governors

This are the new ones, which derived from very updated code, which is said to replace ondemand on the future. I really like these governors, as they're blazing fast and battery-life is almost the same as default ondemand. They're impulse, intelliactive, blu_active and interactive:

interactive: Upstreamed to lates on Code Aurora Forums (CAF), it is a very fast governor. Scales depending on load and goes really fast from minimum to max frequency. The battery is "OK" with this one, and you can tweak it to become exactly as you like, just by following this thread instructions: [GUIDE] Advanced Interactive Governor Tweaks; Buttery smooth and insane battery life!, by [MENTION=5886947]soniCron[/MENTION].

RECOMMENDATION: I've tweaked it for best performance already, so give it a try on default.​

intelliactive: More performance focused than interactive, but achieves a great balance between battery-life and performance. You can tweak it using the same thread by soniCron that I told you in interactive.

RECOMMENDATION: The frequencies are on par with my i9082 common usage, and it fells a little better than interactive, but they're almost the same on benchmarks.​

impulse: This one is focused on battery-life and works just fine, with some lag here and there (not that it really lags, lil stutters). You can tweak it using the same thread by soniCron that I told you in interactive.

RECOMMENDATION: Again, this one is tweaked for our i9082 and can save some battery if you use it on default.​

blu_active: [MENTION=3873953]eng.stk[/MENTION] made this one, it's probably the fastes on interactive-based, but it's not very stable on my phone. You can try for yourself and see if is there any random reboots.

RECOMMENDATION: For now, you can try it, it's very snappy and smooth but not that stable. See if default works for you.​

Ondemand-based Governors

Apart from being a little outdated, they still work great and bring really impressive results under the table. The governors ramp up and ramp down in defined steps, according to demand, but if you're multi-tasking, it stays on very high frequencies. The governors are: alucard, darkness, nightmare and ondemand.

ondemand: Not much to say. It's the default governor because it's very stable and you can find much information about it on this link: CPU Governors, Hotplugging drivers and GPU governors

RECOMMENDATION: Use it by default, rock-solid stable.​

Darkness: It works fast and is a new gov. Liked it, it's good by default.

RECOMMENDATION: Use it by default, may be stable.​

Nightmare: This one originated Darkness, and is probably the same with bigger code.

RECOMMENDATION: Same recommendations as Darkness, use it by default.​

Alucard: Pretty impressive governor, made by [MENTION=4899086]alucard_24[/MENTION] and maintained by [MENTION=2376110]dorimanx[/MENTION].

RECOMMENDATION: Default is OK, it's the best under ondemand-based governors.​

Conservative-based Governors: zzmoove

Maintain the phone on lowest possible frequency whenever possible. The only governor 'round here is zzmoove and DUDE: it's great. Thanks to it, I have a Crazy-smooth experience and awesome battery-life, so I really liked the way it works.

zzmoove: Created by [MENTION=3279788]ZaneZam[/MENTION] and maintained by him and [MENTION=2033478]Yank555[/MENTION], this governor focus is to maintain frequency as low as possible. In order to do that, it limit frequencies whilst the screen is off or hearing music, in example, so it's very adaptive to your usage if you tune it right. It has 9 profiles, which are described below, on "Click to show content"

* ------------------------------------------------------------------------------------------------------------------------------------------

* - (1)'def' -> Default -> will set governor defaults -

* ------------------------------------------------------------------------------------------------------------------------------------------

* - (2)'ybat -> Yank Battery -> a very good battery/performance balanced setting -

* - DEV-NOTE: highly recommended! -

* ------------------------------------------------------------------------------------------------------------------------------------------

* - (3)'ybatext'-> Yank Battery Extreme -> like yank battery but focus on battery saving -

* ------------------------------------------------------------------------------------------------------------------------------------------

* - (4)'zzbat' -> ZaneZam Battery -> a more 'harsh' setting strictly focused on battery saving -

* - DEV-NOTE: might give some lags! -

* ------------------------------------------------------------------------------------------------------------------------------------------

* - (5)'zzbatp' -> ZaneZam Battery Plus -> NEW! reworked 'faster' battery setting -

* - DEV-NOTE: recommended too!:) -

* ------------------------------------------------------------------------------------------------------------------------------------------

* - (6)'zzopt' -> ZaneZam Optimized -> balanced setting with no focus in any direction -

* - DEV-NOTE: relict from back in the days, even though some people still like it! -

* ------------------------------------------------------------------------------------------------------------------------------------------

* - (7)'zzmod' -> ZaneZam Moderate -> NEW! setting based on 'zzopt' which has mainly (but not strictly only!) 2 cores online -

* ------------------------------------------------------------------------------------------------------------------------------------------

* - (8)'zzperf' -> ZaneZam Performance -> all you can get from zzmoove in terms of performance but still has the fast -

* - down scaling/hotplugging behaving -

* ------------------------------------------------------------------------------------------------------------------------------------------

* - (9)'zzinz' -> ZaneZam InZane -> NEW! based on performance with new insane scaling active. a new experience! -

* ------------------------------------------------------------------------------------------------------------------------------------------

* - (10)'zzgame' -> ZaneZam Gaming -> NEW! based on performance with scaling block enabled to avoid cpu overheating during gameplay -

* ------------------------------------------------------------------------------------------------------------------------------------------

* - (11)'zzrelax'-> ZaneZam Relax -> NEW! based on moderate (except hotplug settings) with relaxed sleep settings -

* ------------------------------------------------------------------------------------------------------------------------------------------

RECOMMENDATION: I selected for default "zzinZ", profile 9, because it really is what I want: lagless when using, low frequencies when not using. And I got it, so I suggest you to have a look.​

What about I/O Sched?

Well, I've never worried much about I/O sched. When pawitp put BFQ as default on CM12.1, I thought that it was really good, but really unstable as well. The two I like the most are: SIO and Deadline for general usage (multitasking). If you like to play heavy games, use ROW. You can try the others and actually read this article that talks everything about I/O Schedulers: I/O Schedulers - Android Modders Guide

Damn, need that Hotplug asap!

i9082 phones, have lots of power and sometime doesn't need all cores online. That's where come hot-plugging, some cores can be turned off with no overhead or noticeable lag.

The options are: intelli_plug and zzmoove hotplugging feature.

intelli_plug: The first option is a widely spread hotplug driver, made by [MENTION=3332811]faux123[/MENTION] and it works great for what it's doing. I recommend tweaking it for you needs and the best governor to integrate with it is intelliactive, made by faux123 as well. It'll actually waste battery instead of saving if you are a power user that loves lots of multitasking, because it'll be constantly turning CPU1 on and off. Note that while using this, make sure your tasks with Screen Off are not that big, because your phone must handle that with just 1 core, which can lead to a kernel freeze (than you have to reboot). It's recommended if you usage is very light and you want a 2 days long battery.​

zzmoove hot-plugging: The second one is a more concise approach, because you'll need only the governor to handle hot-plugging. Here you can activate the hotplug on governor's tunables (change to disable_hotplug = 0 and disable_hotplug_sleep = 0) and it works by shutting down CPU1 whenever the load is not that big. Again, if you're a power user, beware that this can actually shrink you battery time, so use hotplug if you doesn't need much complex things to be done when screen is off.​

frandom - Don't forget to use this script in your init.d folder

Create a new file named "00frandom" and in order to frandom work, you need to use this code:

#!/system/bin/sh
# Script to launch frandom at boot by Ryuinferno @ XDA

insmod /system/lib/modules/frandom.ko
chmod 644 /dev/frandom
chmod 644 /dev/erandom
mv /dev/random /dev/random.ori
mv /dev/urandom /dev/urandom.ori
ln /dev/frandom /dev/random
chmod 644 /dev/random
ln /dev/erandom /dev/urandom
chmod 644 /dev/urandom

My Recommendation​

zzmoove really got me, because it works like interactive but it tries to always lower the frequency, which is great. Apart from that, intelliactive is very fast, almost the same as interactive. So, for craziness zzmoove and for performance, intelliactive (UNDER CONSTRUCTION, JUST A QUICK PREVIEW).

### Anything else there is to customize is in Kernel Adiutor, which is a great app thanks to [MENTION=4443334]Grarak[/MENTION]