[KERNEL] Mpokang Kernel v10 [3 variations] [773MB RAM] [+50% RAM performance] [14/10]

638 posts
Thanks Meter: 1,669
By mpokwsths, Senior Member on 28th August 2013, 09:41 AM
Thread Closed Email Thread
Mpokang kernel

This kernel focuses on MAX USABLE RAM. As we know, the GNex has 1GB of RAM. A big part of it (300+ MB) is reserved for various things.
Is it really needed? No, it looks like that actual usable RAM can be much much more.

Feature List:

Many features, just as many as every other kernel. The differentiating points of this kernel are:
1) First kernel with the pioneering RAM reclaiming: from 693 --> 773 MB RAM.
2) Most available RAM: Still has the most RAM available.
3) Flexibility: Choose any of the 3 variations that suits you
4) Sophisticated ZRAM mechanism: zsmalloc from Linux kernel 3.11, enhanced zram mem operations
5) First and only kernel at the moment with huge 50%+ memory performance boost

As of v10, three (3) variations of Mpokang kernel for everyone to choose according to his needs.
Performance is the same, only the available RAM changes:

SuperRAM: 773 MB RAM -- Some rare video apps (or the gay CM video camera) may not work properly.
CM "gay" : 762 MB RAM -- All video apps work OK but still 720p, suitable for CM based roms.
1080p version: 751 MB RAM -- 1080p fully working, compatible with everything, even Android 4.2.2. Does not contain ramdisk. Clean rom installation required.

To sum up: For Android 4.3 all variations are applicable. For Android 4.2.2 ONLY the 1080p variation applies.

Valuable Notes

Note 1: Many redundant and practically useless stuff is removed. Badass sounding governors and schedulers, which don't actually offer anything were removed.

Note 2: Interactive gov from kernel 3.4, hyper gov and SIOPlus, deadline and row are the best out there. Maybe FIOPS on the future.

Note 3: In general .. more useless stuff removed equals more RAM. This does not apply to the SuperRAM variation, where many many features can be added as modules without reducing the available memory.

Kernel source: https://github.com/mpokwsths/mpokang_kernel


Moderation - Deleted Links.

Q: When using SuperRAM version I have trouble running apps like Video editor, video calling in some apps.
A: Some rare apps don't like this extreme RAM reclaiming. Use another variation.

Q: My screen colors seem a bit changed. Even if I change them like I used to in TricksterMod...
A: It's because of Purple Tint Fix. Many users experience that ugly tint, and this kernel cures it. Slightly change your color settings in Trickster. If, whatever you do, the colors look bad, report it here and I will see what I can do.

Q: I want the full 1GB of RAM. Is this possible?
A: No, full 1GB is unachievable (with TI's ION code). But if someone is willing to drop all the media support (camera, video, media playback) close to 900MB is achievable.
The Following 228 Users Say Thank You to mpokwsths For This Useful Post: [ View ] Gift mpokwsths Ad-Free
28th August 2013, 09:41 AM |#2  
mpokwsths's Avatar
OP Senior Member
Flag Chania
Thanks Meter: 1,669
Donate to Me

Ver. 1:
- Now using ramdisk (Osmosis modified). Now you can flash the kernel unconditionally (no more screwing from other ramdisks) and my preferred settings are kept.
- Introduction of Cleancache from kernel 3.7
- Introduction of Zsmalloc, Zcache and Frontswap from kernel version 3.8

Ver. 2:
- Reclaimed 4 MB of RAM (now it should be at 771 MB) from the frame buffer. TI has been very generous spending GNex's RAM all over the place.
- Pushed some commits from ASPK, mainly memory hotplugging related
- Went back to Anykernel format. No ramdisk since there were some complains of problems with some roms.
- Fixed vfs_cache_pressure (script not needed)
- Some memory reservation and ram leaks fixing (900KB RAM more).
- Should have a bit better battery consumption since I altered the dirty ratios.

Ver. 3:
- Modified the installation script. Now it copies the hacked Power HAL to the system so that altered gov settings do not reset after screen off (No need to check "Frequency Lock" in Trickster now).
- Removed a bunch of useless stuff. The kernel itself shrunk significantly. Boot time should be faster than ever.
- Reclaimed another 600K
- Changed interactive governor default settings. Only above_highspeed_delay needs to change to 20000 now.

Ver 4:
- Disabled all kernel debugging (should be a bit faster)
- Reclaimed another 512KB (compared to 4.1)
- Added some battery preservation routines (should consume a little less battery when watching videos)
- Some scheduler tinking

Ver. 5:
- Updated Linux kernel 3.0.88 --> 3.0.94
- Enabled ZRAM from kernel 3.7 (thanks Boype & Faux)
- Disabled Cleancache & Zcache
- Some more battery preservation additions
- Enabled full Hard Float kernel building.

Ver. 6
- ARM patches for slightly improved performance
- pushed a commit for ZRAM that will provide somewhat better memory management
- some other changes for the next version (ZRAM working together with Zcache & Frontswap)

Ver. 7
- Using Linaro Toolchain 2013.09
- Updated Linux 3.0.94 --> 3.0.96
- Improved mem operations of zram
- Backported zsmalloc from latest kernel 3.11 (zsmalloc = zram memory allocator)
- Some kernel scheduler and timer fixes
- Changes in VFS cache pressure and swappiness values to find the sweet spot

Ver. 8
- Several mutex code commits (multithreading optimization)
------ ARM: 7467/1: mutex: use generic xchg-based implementation for ARMv6+
------ mutex: place lock in contended state after fastpath_lock failure
------ ARM: mutex: use generic atomic_dec-based implementation for ARMv6+
------ mutex: dynamically disable mutex spinning at high load
- Added VUSIM voltage regulation. This is a screen regulator, so undervolting it should save some power (I have it at 1500mV without problems)
- ARM: mm: lazy cache flushing on non-mapped pages
- A couple of cache related optimizations for Cortex-A9
- Set default temperature limit @ 75C. Should be absolutely safe.
- voltage.h: Set VDDMIN to 810 - Smartreflex calibrated MPU min voltage now is 810mV
- i2c: use usleep_range to wait instead of msleep (imoseyon reported potential performance benefits)
- ARM: 7178/1: fault.c: Port OOM changes into do_page_fault
- readahead: fault retry breaks mmap file read random detection
- Some scheduler improvements?

Ver. 9
- Updated Linux 3.0.96 --> 3.0.98
- New ramdisk for the kernel. Now it can be flashed unconditionally anytime.
- Enabled loadable module support.
- Compiled many modules as external modules. Reclaimed 400KB of RAM.
- Reverted the 300Hz kernel timer. The load calculation was all over the place
- Reverted some UV commits (especially IVA) that seemed to produce freezes and SODs. Hopefully they are fixed.
- Some CPU cache code and kernel scheduler improvements.
- Added the io_is_busy interface to Interactive governor
- Now, apps that seeked 1080p won't crash anynore. 1080p support is removed in the media_profiles.xml
- Altered some default settings: color scheme slightly colder, interactive above_highspeed_delay=20000, io_is_busy=1
The Following 94 Users Say Thank You to mpokwsths For This Useful Post: [ View ] Gift mpokwsths Ad-Free
28th August 2013, 09:46 AM |#3  
okanb3's Avatar
Senior Member
Thanks Meter: 123
Yay, new kernel! Gonna test it when you pushed a build up
28th August 2013, 09:47 AM |#4  
Lancez's Avatar
Senior Member
Flag SoCal
Thanks Meter: 632
Looking forward to it

Sent from my Galaxy Nexus using Tapatalk 2
28th August 2013, 09:49 AM |#5  
mpokwsths's Avatar
OP Senior Member
Flag Chania
Thanks Meter: 1,669
Donate to Me
Going to need some testers. Are you interested? All the people interested for testing, sign up here.
The Following 14 Users Say Thank You to mpokwsths For This Useful Post: [ View ] Gift mpokwsths Ad-Free
28th August 2013, 09:50 AM |#6  
Thanks Meter: 0
I'm ready if you can enable module for PGM. Can't live without it
28th August 2013, 10:30 AM |#7  
Lancez's Avatar
Senior Member
Flag SoCal
Thanks Meter: 632
Originally Posted by ronnie_1712

I'm ready if you can enable module for PGM. Can't live without it


Sent from my Galaxy Nexus using Tapatalk 2
The Following User Says Thank You to Lancez For This Useful Post: [ View ] Gift Lancez Ad-Free
28th August 2013, 10:36 AM |#8  
Thanks Meter: 18
A kernel who can be really different ! It deserve to be tested. I'm interested
28th August 2013, 11:00 AM |#9  
doomed151's Avatar
Senior Member
Thanks Meter: 2,210
I shall test this kernel.
Also, it would be nice if you could list down stuff that you changed/added compared to stock kernel.
28th August 2013, 11:41 AM |#10  
nudou350's Avatar
Senior Member
Thanks Meter: 99
Looks awesome! I could be a tester!

Sent from my Galaxy Nexus using xda premium
28th August 2013, 12:20 PM |#11  
Pasquale91fg's Avatar
Senior Member
Flag Foggia
Thanks Meter: 60
Tester !!
Thread Closed Subscribe to Thread

Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes