[Galaxy Note 4 Android Development (Snapdragon)] Senthil360:
Ok lets cut to the chase

So I want to mention here three things which affects the battery and performance

1. Screen Brightness (affects only battery) - Well it depends on our personal usage , and we can't do much regarding that

2.Apps , services , background tasks- These topics have been discussed a million times here on XDA , disabling services , amplify , greenify and infinite other things...

My personal settings are

Greenify - Yes - (most of the data dependent user apps ,excluding system apps)

Xposed -No

Sync - Occasionally

Location - Disabled(default)

P.S - I use a greenify widget at homescreen to hibernate time to time

** I will provide the custom lmk values below

3.CPU frequencies and Voltages

Ok this is the most important thing that we are going to discuss here,

This is for INTERACTIVE and Interactive based governors.

Most of us use Interactive and interactive based governors because its the most reliable and its good balance between battery and performance , but actually it could be improved way more than how it behaves at default state...

The Problem

The most annoying feature of this governor are

1. It spends unnecessary time at higher frequencies draining too much battery

2. At times it stays at lower freqencies when we need that sudden burst , instead we only see stutters and delayed app opening/loading

These silly behaviour is what we are going to change (Note : Tested with following kernels , NL (not official), Emotion and AEL)

A Comparison

Take a look below in these screenshots, the first one is without tweaks ,

This is below is tweaked interactive

** Tweaked interactive has more battery life and performance than default **.

So now after those screenshots you might be wondering , yeah I see a bunch of frequencies being used , What's the deal?

Here's the answer, what we are going to do , we are going to instruct the CPU to use frequencies according to the situation ,cleverly to improve battery life without sacrificing performance.

** Here CPU = Governor + Hotplug

For example consider the activity of *Loading and reading a webpage*

Default interactive behaviour :

Opening browser : 2649 Mhz

Loading : 2649 Mhz

And while u look at screen , without touching - it scales to 1574 Mhz every 2 secs for no reason

Scrolling webpage - It will start with minimum of 1574 Mhz at 2 cores and reach 2649 Mhz

Damn thats too much...

**Tweaked Interactive Behaviour :

Opening browser : 1190 to 1497 mhz

loading 729 mhz to 1728 mhz on each core (depending on load of webpage)

looking at screen : 300mhz to 499 mhz

scrolling webpage : 729 to 1190 mhz across each core ( it will increase depending on ur scrolling speed )

That was just an example for Browser , but it is optimized for every activity, right from listening music in idle to Playing a hd game :))

The Solution

"Really? But How?" you might ask , lol

** A) Well first of all, you might not have heard a dumber thing than this, Samsung had put tons of Exynos value on the snapdragon variants which we are going to deal with (Note : stock exynos values may have beem removed in custom kernels)

** B) Next , here is the golden formula

Power consumption = (Voltage^2) × (Frequency× no of cores)

**(Actually the real formula also needs to be multiplied with the Capacitance of SoC but since it is a constant it is insignificant in this formula)

Alright what that means , To put it simply More cores with LESSER frequency is MORE EFFICIENT than lesser cores with HIGHER frequency

Yeah that's right,and huge thanks to [MENTION=4804849]psyntific[/MENTION] for helping with me during all tests irrespective of Night or Day

See these calculated values,

For 2649 ghz at 2 cores

(1080^2) × (2649 × 2) = 6,179,587,200 (i)

Similarly for 1497 at 4 cores

(890^2) × (1497 × 4) = 4,743,094,800 (ii)

Dividing (ii) by (i) , we are saving 25 % at higher frequency, but as i said above this saving is much more in other cases , i.e Browsing , scrolling , app opening

C) Tweaking more cores to start scaling up from lesser frequency

This is one other important tweak , the holtplugs are tweaked in such a way that they will give priority to using more cores rather than frequency while task is increasing and shutting down much better while task decreases , infact its a combination of governor and hotplug tweaks

D) And tons of more governor and system tweaks like Boost duration, frequency sampling/polling rate (Every milliseconds makes a difference) , pardon me its impossible to mention everything here , I'll add it in the tweaks section

Oh have to mention this, :P

However, if you put any trust in Quadrant scores you could use them to prove that dancing naked for 5 minutes in your garden affects device performance.*-*Chainfire

Phew and now that you are ENLIGHTENED , let's proceed to the easier tweaking part