[Galaxy Ace II Android Development] ace2nutzer:
The higher the OPP state, the higher LCD Freq u can use stable.

25/50/100 in this kernel.

Chrono Kernel may use different values.

And Stock kernel was only 50/100.

The Lower OPP state of 25% was added by a few developers that also worked on this Project.

No, Conservative gov is only for the CPU.

GPU uses its own stuff.

cd /sys/kernel/mali

there's everything for the GPU .. min/max Freq, thresholds and voltages.

About other GPU things, u can find in:

there's also the pre-allocated ram tunable .. which u can change ... the value should be in bytes. (but is actually 0 to save ram)

and in:

u can find sysfs interface "memory_usage" also in Bytes ...

There's also a folder "userspace_settings" with a lot of tunables .. basically u can edit every interface if it's "rw" otherwise it's read-only "r-".

The whole CPU/GPU Stuff is already optimized to the best at least IMHO. The only tunables we never changed are those in that folder "userspace_settings" ... But i don't think that it can improve something. Anyway feel free to test and report if u find some missing optimization.

Yeah, it can use even more :D .. the kernel is like the BIOS ... (not really .. but ..) because BIOS stuff are here in kernel source code .. so we can edit ... compile and flash to the phone ... that's it!

Check the original source code file for the mali GPU:

https://github.com/ace2nutzer/Samsu...driver/src/devicedrv/mali/arch-ux500/config.h

(that's of course not the only one ... but just one of them... at least it has what we are discussing.)

and that's the edited one by me:

https://github.com/ace2nutzer/Samsu...driver/src/devicedrv/mali/arch-ux500/config.h

in original one check line #91

.size = 2047 * MEGABYTE,

/* 2GB */

And in the edited file we use the variable: OS_MEM_SIZE which is declared in line #28 with 512 MB :)

Of course bigger GPU RAM is better for games .. but we don't have extra RAM for GPU, we need to use the OS MEMORY (the 768 MB RAM)

The intention was to make the phone working better ... because OS RAM is still more important than GPU RAM. It serves nothing to have enough GPU RAM but too low OS RAM ... the system will work very bad.

3D Benchmarks never runs completely smooth, even on fastest gaming computers ... that's normal .. because it demands the whole system performance.

Yeah :)

zRam was used in older A2N Kernels ... (check the changelog maybe) and was replaced with the more efficient tech KSM (kernel-samepage-merging).

zRam uses too much CPU, and this caused higher battery draining.

Anyway, zRam is more appropriate vor non-battery powered systems with low ram but good CPU performance.

Swapping to the sdcard isn't a good idea .. because it's slow and will kill the sdcard ... because of the write cycles.

KSM only need max 5% load on low CPU freq 400 MHz. while with zRam it's up to 100% while it's compressing/decompressing.

INFO:

KSM only works on systems where u're executing a lot of virtual machines...

(here on android every app runs in its own java virtual machine ... so every app uses almost ther same sort of data in RAM .. that's why it can be "merged" to just one ... that's why it can save up to 180 MB RAM !

I suggest to use KSM instead, if there's no KSM support in kernel, u could ask the developer if he's still willing to release an update.

No, i started to optimize this kernel with Android 4.4.x ... and later released also for Android 4.1.2 .. because only small changes was required.

This kernel source is based on stock 4.1.2 ROM. But GB Kernel has a different base.... so if we want to create A2N kernel for older GB ROM's .. then we've to backport 1187 commits: (so that's impossible for me :D)

https://github.com/ace2nutzer/Samsung_codina_Kernel

No Problem, it's archieved now and useful for any other users. :)