[Kernel][CAF/AOSP][Stable 1.1] Vindicator[UberTC6.0/Ofast/Strict-Alias/Graphite][5.1]

USA-RedDragon

Senior Member
Mar 22, 2013
569
1,641
0
Moore, OK


"I Don't Always Run Custom Kernels. But When I Do, I Run Vindicator"
-Worlds Most Interesting Man



Pushbullet Tag: vindicator-n7

You can also follow me on G+ if you would like:
[email protected]

Intro:
This is a kernel I developed alongside @Xileforce for Nexus 7 2013, this IS an offical Vindicator Kernel and follows the same ideals and guidelines as the Vindicator Kernel for Nexus 6. I hope you like it and I won't be offended if you hate it. All ideas are welcome and I'll try to help as best I can. If you wish to use this kernel in a rom , feel free! Although I would love it if you let me know just for my own curiosity.

Goal:

Keep kernel as lean as possible while adding certain, desirable features and optimizing for maximum performance and battery life. The default settings should be optimal for a balance of battery and performance without a need to tweak.


Disclaimer:

If your tablet blows up, its not my fault. If your tablet somehow gains perpetual battery life, I'll take full responsibility.


Features:

-Quanta Kernel Base
-Android 5.1
-Linux 3.4.107
-Updated to Android M source
-XZ Compression
-Upstreamed cpuidle
-35mhz cpu step
-Compiled With Uber Toolchain 6.0
-Compiled With Strict-Aliasing, Ofast, Graphite, And Loop Nest Optimizations
-Various Other Build Optimizations
-Kexec Hardboot/MultiRom
-UKM Built In And Modified. Just Install Synapse App.
-Hardware Floating Point Processing
-ZRam
-ZSMalloc
-Slimmed Down(Increased Size Is Due To Optimizations & UKM Not Bloat)
-Tons Of Debugging Removed
-Many Misc. Optimizations.
-MPDecision killed
-Mako Hotplug
-Adjustable Thermal
-IntelliActive/Intellidemand Governor Added
-BFQ IO Scheduler Added
-Tons Of IO Fixes/Performance Boosts
-Voltage Control
-Westwood TCP Algorithm
-Many Parts Pulled From Upstream
-Wake Gestures
-F2FS Support
-Init.D Support
-Potentially Something I Forgot...
-Battery Life Extender

Donations:
I do not require a donation, nor will I demand a donation, but any and all donations are appreciated. Especially when I release my OTA app for this kernel, it'll go towards the server cost.



Downloads:
Caf builds end in -cm
Aosp builds end in -aosp
[AFH] Kernel: https://www.androidfilehost.com/?w=files&flid=32021

Downloads also through pushbullet

Source:
http://github.com/Orbit-/Vindicator-flo-aosp

Credits: @zaclimon for an awesome Kernel Base
xileforce
Franco
Faux123
Linaro
Code Aurora Foundation
apb_axel
Google
Asus
If I Missed You Let Me Know!
 
Last edited:

USA-RedDragon

Senior Member
Mar 22, 2013
569
1,641
0
Moore, OK
FAQ

1. How Do I Enable Mako Hotplug?
To enable mako hotplug use your favorite kernel control app like faux or trickster. As of 1.8 it is the default hotplug. In trickster you have to turn off both mpdecision and intelliplug. In faux you need to simply select User Control in the Hotplug Section. The hotplug can be configured using Franko Kernel Updater App.

2. Does This Work With CM12 Theme Engine?
Yes, this works with CM12 Theme Engine and should work on all ROMs properly.

3. How Can I Force All 4 Cores Online All The Time?
First you must enable mako hotplug. Then you need to use Franco's kernel updater app or another app that allows you to tweak mako hotplug settings. In fku app select CPU manager then hotplug control. Change load threshold to 0. Additionally if you just want to make it use 4 cores more often. Lower this number below 80 as desired. This should also be possible to tweak via terminal however I've never used that method.

4. Does This Have D2W, S2W, etc?
Yes, they are include in this kernel.

5. Help! I think its making me bootloop!:
This may only apply to specific ROMs and I'm unsure of why it would change anything but users have reported this to fix the issue. If you are trying a fresh install of a ROM boot on stock kernel first, reboot, then install this kernel.

6. You Broke My Tablet! Fix It!:
It will be quite hard for me to figure out what is going on if you don't provide details and a log of what happened. To get a log use any file manager and navigate to proc/last_kmsg. I need this file for debugging.

7. What Kernel Tweaking App Should I Use?:
I now use Synapse as my goto app for kernel tweaking.

8. Why Add Zram? We Already Have plenty of Ram!
Zram was added in build 1.0 as an experiment of sorts to see how much is was actually being used. V 1.0 introduced a bunch of tweaks to the kernel that essentially make it use more ram in order to give better battery life and performance. Zram was put in place to offset this in a way.

9. What Is Strict Aliasing And Why Should I Care?:
One of the big things Linaro does with improving Android's performance is fixing violations of what's known as "the strict aliasing rule." A pointer is said to alias another pointer when they both refer to the same location of memory. This is OK and not an uncommon thing to do. The strict aliasing rule is that pointers of different types should never refer to the same location of memory (aka alias each other). Strict aliasing allows a compiler to make some assumptions when compiling and optimizing code that it otherwise couldn't. It's actually one of the biggest optimizations you can do and it is fairly hard to add which is why most people don't. Here's a nice read up on it http://cellperformance.beyond3d.com/articles/2006/06/understanding-strict-aliasing.html#benefits

10. Come on man. 35mhz is pointless bro!:
A common misconception is that if two frequencies run at the same voltage. They use equal power. In fact this couldn't be less true. The equation for power draw has four variables. Two of which are frequency and voltage. Essentially it is the frequency multiplied by the square of the voltage. Then you would take that and multiply it by a few other things such as capacitance. However that is irrelevant for our purposes as it will not effect the relative results. This means that 35mhz running at 500mv will use about 3x less power than 98mhz at 500mv. Now we say well what about compared to 300mhz? I can stably run that at around 650mv. Maybe slightly less. This equates to about 15x less power usage at 35mhz. Well now that we know that. Who cares? Its not like 35mhz will even get used. Its too low! I beg to differ. I would almost guarantee that if you are not running mpdecision 35 MHz will be within the top 3 most used frequencies. Most likely the top used below sleep. And every time it uses that over 300mhz you are saving 15x the power. Additionally 35mhz also runs at a cache frequency of 35mhz as opposed to 300mhz cache frequency and runs a lower bus speed/voltage saving additional power.

11. How Do I Use MultiRom???:
To use multi ROM first you must download the MultiRom App from the Gooogle Play Store. Open it. You should have MultiRom and recovery boxes checked. Click install, reboot etc. To install a ROM. Download a ROM you like, go to twrp, click advanced,MultiRom,add ROM. Select internal storage and the Your zip file. Flash it but don't reboot! After that go back and select "list ROMs" select the ROM u just flashed still and click flash zip and select your gapps,supersu etc. After that simple reboot and select your new ROM on boot :) use the MultiRom app to manage your ROMs.

More will be added as they come up and I think of them.
 
Last edited:

hypemanisus

Senior Member
May 16, 2012
707
166
73
Raleigh
Re: [Kernel] Vindicator [Linaro 5.1/Strict-Alias/Graphite][5.1][Beta-0.1]

If anyone wants to be a beta tester, email me at [email protected]. I'll be looking at email tomorrow.
I want to be a better tester. I have one question though. The ROM I'm running is cm based and I'm getting different colors. Can you include a caf based kernel please. An d which is the best app to change settings with cz trickster don't let me change sound control

Edit: other than that the kernel looks great man. Its good and fast I'll test battery life for you on my next charge

Sent from my Nexus 7
 
Last edited:
  • Like
Reactions: Xileforce

USA-RedDragon

Senior Member
Mar 22, 2013
569
1,641
0
Moore, OK
I want to be a better tester. I have one question though. The ROM I'm running is cm based and I'm getting different colors. Can you include a caf based kernel please. An d which is the best app to change settings with cz trickster don't let me change sound control

Edit: other than that the kernel looks great man. Its good and fast I'll test battery life for you on my next charge

Sent from my Nexus 7
Yes a caf base is coming soon
 

jbrantley130

Senior Member
Jan 27, 2013
276
170
0
Just a quick heads up... I'm getting a boot loop. Running latest OptiPop which is 5.1.1 r2 and I have data and cache partitions set to f2fs. Any help is appreciated.