[Nexus S Android Development] atl4ntis:
Hello, here are some benchmark i made to test if some features being used in kernel development are usefull, useless, bull**** or make things worse.

HOW I DID THE TESTS

DEVICE= i9023.

ENVIRONMENT= fixed 25° Celsius.

OS= ANDROID 4.4.1 JRO03E Factory Image by Google.

SOFTWARE USED= 0xBenchmark 1.1.5 - AnTuTu Benchmark 2.9 - Screen Timeout Toggle.

OTHER TOOLS= A/C Charger / Standard Chronometer.

KERNEL= Kernels are built from source using the standard herring defconfig.

Additional notes:

The system is booted up once, every tutorial is closed, 0xbenchmark, Antutu and Screen Timeout Toggle are installed, airplane mode is toggled, system is rebooted in recovery, battery stats are deleted, cache and dalvik are cleared, system is nand backupped.

Every test starts after 30 min of phone off to let him cool, restoring the nand backup and waiting 5 min after system is booted up. Phone is connected to A/C charger.

Kernel are swapped after the nand restore.

Tests are done 5 times and then the average is calculated && till results are almost the same every run.

TEST N. 1

".. i use teh latest toolchain, mah kernel is imba ima pro !!111!1one!!eleven"

Google toolchain 4.4.3 vs Google toolchain 4.6

This test is inspired by an Ezekeel work that demonstrate how every different toolchain from the google base 4.4.3 used to compile our NS kernel resulted in 0 increased performance. Same goes for "optimized" compiler flags. You can see some bench here.

What i'm going to do is to test latest google prebuilt toolchain and see if it differs from above test.

- 0xBenchmark reds results are better.

Toolchain 4.4.3	Toolchain 4.6
Linpack	[COLOR="Red"]18,81[/COLOR]	18,31
C	[COLOR="Red"]21,65[/COLOR]	21,15
FFT	[COLOR="Red"]13,92[/COLOR]	13,59
JSOr	[COLOR="Red"]39,79[/COLOR]	39,14
MCi	[COLOR="Red"]7,20[/COLOR]	6,60
Smm	[COLOR="Red"]17,80[/COLOR]	17,45
dLUmf	[COLOR="Red"]29,61[/COLOR]	29,17

- AnTuTu reds results are better.

Toolchain 4.4.3	Toolchain 4.6
RAM	[COLOR="Red"]260[/COLOR]	257
CPU Integer	416	416
CPU Float-Point	[COLOR="Red"]106[/COLOR]	105
GFX 2D	[COLOR="Red"]278[/COLOR]	277
GFX 3D	[COLOR="Red"]1115[/COLOR]	1111

TL;DR

USING LATEST GOOGLE TOOLCHAIN DOES IMPROVE KERNEL PERFORMANCE? NO

TEST N.2

"..undervolting teh lcd display MUST save battery!!"

LCD @ 3.0 V vs LCD undervolted to 2.4V

Same environment as before. Since % battery are not always accurate i made 3 tests:

2.1: let phone fully discharge, charge it up for 30 min. Boot it up, put max brightness and count how much time passes till it poweroff by himself.

2.2: let phone fully charge, boot it up, put max brightness and count how much time passes till it loose 10 points %.

2.3: let phone fully charge, boot it up, put max brightness and count how much time passes till it goes from 60% to 50%.

RESULTS

After days of tests, can pretty sure say that at the cost of 20% undervolt (from 3.0 to 2.4)

there isn't any noticeable

battery saving. What i came up with is something like 5%, that means something like 10 more screen time with standard use, even less, and considering this small margin, can also be unrelated at all to the undervolt.

Remember these tests were made on a slcd panel not amoled.

Did i say these tests were made on an i9023?

Tests made on slcd i9023.

TL;DR

THERE IS ANY NOTICEABLE BATTERY SAVING UNDERVOLTING THE LCD?NO

TEST 3

".. ye ye but removing lot of crap makes mah kernel faster!"

Stock Kernel vs Config tweaked (debug and crap removed) Kernel

Removed all possible debuggers, governors, tv tuners radio and all unused crap.

Let's see if it's really better.

- 0xBenchmark reds results are better.

Stock Kernel	Cleaned Kernel
Linpack	[COLOR="Red"]18,81[/COLOR]	18,72
C	[COLOR="Red"]21,65[/COLOR]	21,54
FFT	[COLOR="Red"]13,92[/COLOR]	13,65
JSOr	39,79	[COLOR="Red"]39,85[/COLOR]
MCi	[COLOR="Red"]7,20[/COLOR]	6,77
Smm	17,80	[COLOR="Red"]17,82[/COLOR]
dLUmf	[COLOR="Red"]29,61[/COLOR]	29,54

- AnTuTu reds results are better.

Stock Kernel	Cleaned Kernel
RAM	260	[COLOR="Red"]261[/COLOR]
CPU Integer	416	416
CPU Float-Point	[COLOR="Red"]106[/COLOR]	104
GFX 2D	278	278
GFX 3D	1115	[COLOR="Red"]1116[/COLOR]

TL;DR

REMOVING CRAP FROM KERNEL LIKE UNUSED DRIVERS, USELESS GOVERNORS, ALL DEBUGS, DO INCREASE KERNEL PERFORMANCE? NO

TEST 4

".. ye ye u fools seeking big numberz! Merging kernel with latest linux mainline makes teh battery drop fastah"

Kernel merged with linux 3.0.39 / 3.0.40 / 3.0.41

Same standard condition, let phone full drain with all 4 kernels in idle / airplane mode and standard usage.

RESULTS

After comparing 4 different kernel the battery stats were all the same, no weird wakelocks no battery drains. Also with standard usage, with data always on and few wifi and standard usage managed to reach 36 hours on same charge.