[Kernel] Vindicator [5.1.1] [G920/G925] [COJ2] [R5]

Search This thread

Xileforce

Senior Member
Feb 27, 2012
3,057
3,125
Vindicator Kernel

Supports F/I/S/K/L/T/W8 variants of 920 AND 925 devices

Intro:

This kernel was built to appeal to users who want something thats trimmed down as much as possible, yet still adds nice features that arent considered bloat. I spent a lot of time optimizing it and plan on spending several more hours just on optimizations. This kernel is also built with significant amounts of upstream code merged in, making it what many would deem a hybrid kernel. All credit goes to the real hard workers coming up with original ideas like Franco, Imoseyon, Ktoonsez, g.lewarne, etc. 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, upstreaming source, 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 phone blows up, its not my fault. If your phone somehow gains perpetual battery life, I'll take full responsibility.​

Features:
-COGA Source Based
-Universal Kernel! (Thanks to G.lewarne and Ktoonsez patchset!)
-VControl Kernel Control Script(Loosely Based On lkconfig by imoseyon)
-Compiled With Graphite, Loop Nest Optimizations, Ofast And Others.
-Various Other Build Optimizations
-WLAN_RX & WLAN_CTRL Wakelocks Reduced
-GPU OC/UC
-Interactive ScreenOff Max Frequency
-Improved LMK
-Dynamic ReadAhead
-Dynamic Fsync
-LEDFade
-VMA Caching
-Calibrated Power Coefficients
-Smoothened GPU Throttling Curve
-Lz4 Compression
-Interactive Governor Patches/Mods
-Timer/RCU System Upstreamed
-SensorHub Wakelock Toggle To Remove
-A53 UnderClockable To 200Mhz Oc To 1600Mhz
-A57 UnderClockable To 200Mhz Oc To 2500Mhz
-Slub Allocator Updated To Linux 3.18
-Synapse Support
-Memory Management Updates
-Arm Efficient Unaligned Access Enabled
-Reduced Scheduler Wakeups
-Nvidia Power Efficiency Patches
-Encrypted Performance Improvements
-Deep Sleep Fix
-Disabled IO Stats For Faster IO
-Memory Leak Patches
-Sleep/Suspend Patches
-3X Faster Integer Square Root Operations
-HRTimer Optimizations
-Avoid load Average Moire
-Scheduler Optimizations
-Power Aware Scheduling
-Sound Control
-Memcopy and String Optimizations
-Use Compile Time Constants For Jiffies Conversions When Possible(Reduces CPU Overhead)
-Workqueue Updated To Linux 3.18
-Optional Power Efficient Workqueues (Expanded to more modules than normal as well)
-Moto QuickWakeup Driver
-Frandom (Efficient Random Number Generator)
-Cruft Free
-Slimmed Down
-Tons Of Debugging and Tracers Removed
-Many Misc. Optimizations
-Optimized CFQ Scheduler For SSDs
-Tons Of IO Fixes/Performance Boosts
-ROW IO Schedule(Default)
-Voltage Control For Numerous Things
-Entropy Optimizations/Tweaks
-Many Parts Pulled From Upstream
-Init.D Support
-Installs SU
-Installs Busybox
-Potentially Something I Forgot...


Downloads:

[AFH] Kernel: https://www.androidfilehost.com/?w=files&flid=35336

If Coming From Arter Kernel:
Reflash TWRP recovery if using philz and flash this zip http://www.mediafire.com/?um57p83b3cb56x4 before flashing kernel.


Credits:

Imoseyon
Ktoonsez
AndreiLux
Arter97
G.lewarne
Samsung
Flar2
anarkia
hybridmax
Franco
Faux123
Linaro
Code Aurora Foundation
Cl3Kener
Friedrich420
Google
Motorola
If I Missed You Lemme Know!

XDA:DevDB Information
VindicatorS6-Unified Kernel, Kernel for the Samsung Galaxy S6

Contributors
Xileforce
Source Code: https://github.com/XileForce/Vindicator-S6-Unified

Kernel Special Features:

Version Information
Status: Stable

Created 2015-07-13
Last Updated 2015-12-7
 
Last edited:

Xileforce

Senior Member
Feb 27, 2012
3,057
3,125
Changelog:
R1:
-Initial Release

R2:
-Updated From Linux 3.10.61 To 3.10.83
-Updated Memory Management Tweaks
-Update Interactive Tunings
-Fix App Installing
-Fix Random Reboots
-Removed Overclocking For Now(Caused reboots)
-Removed Fsync Toggle(Caused app installs to fail)
-Added Asynchronous Fsync(Faster Fsync)
-Fixed Frandom Permissions
-Additional Entropy Optimizations
-Added Interactive Patches
-Trimmed More Stuff
-Interactive No Longer Scales Up The Frequency Below 5% Load(Better Battery)

R3:
-Lag Free Interactive Tweaks (Glewarne)
-Interactive Screen Off Max Frequency = (InteractiveX)
-InputBooster Removed(Touchboost)
-BOG8 Source Update
-Memory Management Update
-Better Frequency Selecting By Interactive
-Numerous Interactive Code Optimizations/Patches
-Added A Toggle To Remove SensorHub Wakelock In VControl
-Remove Task Packing
-Trimmed More Things/Debugging
-Removed Forced Full screen Updates
-Some Power Efficient Related Tweaks
-Additional Optimizations
-Many Misc Things.
-Cifs support

R4:
-COGA Based
-Compiled With Linaro 5.2 TC
-Compiled With Ofast vs Os
-Fully Tickless Kernel(faster more power efficient)
-Updated Memory Tweaks
-Added CPU OC Again!
-Fixed Big Cpu Settings Not Sticking
-More Interactive Tweaks
-Reverted Enforced Mode
-Async Fsync Replaced With Dynamic Fsync
-Power Aware Scheduling Option
-Updated To Linux 3.10.87
-Added DT2W
-Misc Patches
-Added Synapse Support
-Updated Nvidia Power Efficiency Patches
-Various Upstream Timer/RCU Updates
-Add LED Fade Patch
-Add Audio Control
-Add Various Voltage Controls
-Optimize ART
-Update VControl Options
-CFQ Optimizations
-GPU Throttling Smoothing
-Task Packing Toggle Fixed
-Task Packing Threshold Adjusted
-Added PowerSuspend Driver
-Updated Unification Patches
-Disabled Gentle Fair Sleepers(Ui Smoothness)
-Numerous Interactive Patches
-Removed InteractiveX
-Re-Added TouchBoost
-Enable Efficient Unaligned Access

R4.1:
-Reverted Back To Dynamic Ticks Kernel
-Enabled Fast No Hz(Power Efficiency)
-Enabled RCU Priority Boosting(Performance Increase)

R5:
-Honestly Almost Everything Changed But Here's Some From Memory
-Interactive screen off limited to 1ghz
-Hotplug optimizations
-Interactive Patches
-LMK Upstreamed
-GPU OC/UC
-Ramdisk and synapse updated
-DT2W Removed
-LED Fade added
-Fixed Lockscreen Crashes
-GPU Tweaks
-Strict Aliasing Optimizations
-Significant amount of power efficiency patches
-Sound Control Removed
-More garbage removed
-Optimized a few libs for A57
-Updated To COJ2
-Lots more
 
Last edited:

Xileforce

Senior Member
Feb 27, 2012
3,057
3,125
FAQ's

1. What Is VControl And How Do I Use It?:
VControl is a kernel tweaking "app" built into the ramdisk. It is accessed via terminal emulator. To use it simply download terminal emulator, Type "su" without quotes and hit enter. Grant terminal emulator super user permission and then type "VControl" without quotes. Please note that it is case sensitive. This will bring up a text menu and you navigate by simply entering the option number you want and hitting enter. It is currently a WIP. More will be added to VControl over time.

2. You Broke My Phone! 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 with root support and navigate to proc/last_kmsg.

3. What Kernel Tweaking App Should I Use?:
To Tweak the kernel, currently the only apps that work well are Kernel adiutor and Kernel toolkit as well as synapse. You can also use VControl for a limited number of things. Synapse is now built into the kernel so simply install the app.

4. What Do Power Efficient Workqueues Do?:
Typically when a task is created, it is bound to the cpu it was created on. This is great for performance due to maintaining cache locality. However its not the best for battery life. Power efficient workqueues attempts to schedule tasks on already awake cpus. A quick note about awake and sleeping cpus. A sleeping cpu doesnt mean the cpu is turned off or not hotplugged, nor does this mean it has to be deep sleeping. A core can be online and still be sleeping which means it uses very little power. This is why we are able to run with all 8 cores on all the time. Most of the time the majority of the cpus are sleeping. With power efficient workqueues, jobs will attempt to schedule on awake cpus which means we dont have to wake up the cpus that are sleeping already. This means we lose cache locality so we suffer a small (very small) performance hit but we potentially save noticeable amounts of battery. Enable for battery, disable if you plan on benchmarking or just want the extra power. They are off by default.

5. 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

6. What does Small CPU Task Packing Mean?:
Task packing Is a process done by the scheduler. What it tries to do is pack all tasks onto as few cores as possible. In this case, it only packs tasks for the low power(small) cores as we want to maintain maximum performance and spread the load out on the bigger cores. The advantage of packing tasks is that if we envision a scenario where there is a 40% load and that gets spread out across the 4 small CPUs at 10% load each all 4 small CPUs are awake and running at a low frequency. With task packing all 40% would be shoved onto 1 core and the other 3 would sleep. This provides energy savings. However there becomes a point where the frequency required to process the extra tasks becomes high enough that it would use less power to run two cores at half the speed rather than 1 core at a very high speed. In this scenario the scheduler will automatically let tasks spill over onto adjacent CPUs in order to maximize power efficiency. One down side to this is a small performance hit due to having to pull the other cores out of a sleep state in the event of needing immediate power. However I would guess most people couldn't notice a difference.

7. What is power aware scheduling?:
Power aware scheduling is a method of scheduling where we make the scheduler aware of the actual efficiency of the cores. As you know, the small cores are more efficient than the big cores. The existing method for scheduling work uses a more basic (if the load is above this point, then move it to the big cores) type of decision making. With power aware scheduling, the scheduler will schedule tasks based on its knowledge of the cores power efficiency. Typically this reduces performance, though it's likely not noticeable except for in some games. If you want more battery, enable this. If you want more performance or have lag in games disable.

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

Xileforce

Senior Member
Feb 27, 2012
3,057
3,125
Great, downloading for test, my device is i variant but should works fine, any recommend settings?
I personally use VControl to set my min freq to 200 for both, then I oc to 1600 on Apollo and 2200 on atlas. I then also disable fsync. That's it :p hope you like it! Let me know if you have any issues!
 
  • Like
Reactions: pad11

interestingkid

Senior Member
Mar 23, 2015
231
42
great job with another kernel!
I enabled CPU task packing, but when I check the current settings, it says "/sbin/VControl(239): cat: /sys/kernel/hmp/packing_enable: No such file or directory"
 
  • Like
Reactions: Xileforce

Xileforce

Senior Member
Feb 27, 2012
3,057
3,125
great job with another kernel!
I enabled CPU task packing, but when I check the current settings, it says "/sbin/VControl(239): cat: /sys/kernel/hmp/packing_enable: No such file or directory"

Thanks! Yea I had task packing enabled in a previous test but removed it prior to release. I decided to leave it in VControl in case I re add it. So just ignore it for now :p I'll probably remove it in r2

Sent from my SM-G920T using XDA Free mobile app
 

interestingkid

Senior Member
Mar 23, 2015
231
42
Thanks! Yea I had task packing enabled in a previous test but removed it prior to release. I decided to leave it in VControl in case I re add it. So just ignore it for now :p I'll probably remove it in r2

Sent from my SM-G920T using XDA Free mobile app

ok, that's fine, because this is running well for now!

---------- Post added at 09:49 AM ---------- Previous post was at 09:48 AM ----------

ok so another problem though with google account or play services, don't know which
when i tried to install an app from the play store, i get an error -504
 

Xileforce

Senior Member
Feb 27, 2012
3,057
3,125
ok, that's fine, because this is running well for now!

---------- Post added at 09:49 AM ---------- Previous post was at 09:48 AM ----------

ok so another problem though with google account or play services, don't know which
when i tried to install an app from the play store, i get an error -504

Weird! I had that earlier too! I cleared my play services cache, and the play store cache and rebooted and it went away so I didn't think anything of it... :/ great...well at least I've got something to do tomorrow....

Sent from my SM-G920T using XDA Free mobile app
 

Xileforce

Senior Member
Feb 27, 2012
3,057
3,125
Boots fine in i variant from Brazil, but dont show much option in kernel auditor. I cant change i/o for fiops too its normal?

Kernel adiutor doesn't work for IO Scheduler. I recommend trying an app called Kernel toolkit. I'll probably add IO schedulers to VControl in the next update. Also there aren't tons of options on it atm. Mostly because its tweaked to run well on interactive governor, however I'll likely add conservative and ondemand in r2 as well.

Sent from my SM-G920T using XDA Free mobile app
 
  • Like
Reactions: matheus_sc

cobra11111

Senior Member
May 11, 2011
1,073
390
This kernel is very fast and good deep sleep 94% all perfect on my G925F

Gesendet von meinem SM-G925F mit Tapatalk
 
  • Like
Reactions: Xileforce

cobra11111

Senior Member
May 11, 2011
1,073
390
Can to future implement smartassv2 or KT governor?

Gesendet von meinem SM-G925F mit Tapatalk
 

Xileforce

Senior Member
Feb 27, 2012
3,057
3,125
Can to future implement smartassv2 or KT governor?

Gesendet von meinem SM-G925F mit Tapatalk

The problem with kts governor is it would require merging a lot of other stuff that I don't need in order to make it work :/ however smartass is standalone. Is there other kernels for s6 that have it? If so it would be an easy addition most likely

Sent from my SM-G920T using XDA Free mobile app
 

Darktitor

Senior Member
May 31, 2012
1,577
908
The problem with kts governor is it would require merging a lot of other stuff that I don't need in order to make it work :/ however smartass is standalone. Is there other kernels for s6 that have it? If so it would be an easy addition most likely

Sent from my SM-G920T using XDA Free mobile app

+1 for smartassV2 governor and maybe zzmove as an option ;)
No others kernel got those for S6
 
  • Like
Reactions: Xileforce

Top Liked Posts

  • There are no posts matching your filters.
  • 75
    Vindicator Kernel

    Supports F/I/S/K/L/T/W8 variants of 920 AND 925 devices

    Intro:

    This kernel was built to appeal to users who want something thats trimmed down as much as possible, yet still adds nice features that arent considered bloat. I spent a lot of time optimizing it and plan on spending several more hours just on optimizations. This kernel is also built with significant amounts of upstream code merged in, making it what many would deem a hybrid kernel. All credit goes to the real hard workers coming up with original ideas like Franco, Imoseyon, Ktoonsez, g.lewarne, etc. 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, upstreaming source, 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 phone blows up, its not my fault. If your phone somehow gains perpetual battery life, I'll take full responsibility.​

    Features:
    -COGA Source Based
    -Universal Kernel! (Thanks to G.lewarne and Ktoonsez patchset!)
    -VControl Kernel Control Script(Loosely Based On lkconfig by imoseyon)
    -Compiled With Graphite, Loop Nest Optimizations, Ofast And Others.
    -Various Other Build Optimizations
    -WLAN_RX & WLAN_CTRL Wakelocks Reduced
    -GPU OC/UC
    -Interactive ScreenOff Max Frequency
    -Improved LMK
    -Dynamic ReadAhead
    -Dynamic Fsync
    -LEDFade
    -VMA Caching
    -Calibrated Power Coefficients
    -Smoothened GPU Throttling Curve
    -Lz4 Compression
    -Interactive Governor Patches/Mods
    -Timer/RCU System Upstreamed
    -SensorHub Wakelock Toggle To Remove
    -A53 UnderClockable To 200Mhz Oc To 1600Mhz
    -A57 UnderClockable To 200Mhz Oc To 2500Mhz
    -Slub Allocator Updated To Linux 3.18
    -Synapse Support
    -Memory Management Updates
    -Arm Efficient Unaligned Access Enabled
    -Reduced Scheduler Wakeups
    -Nvidia Power Efficiency Patches
    -Encrypted Performance Improvements
    -Deep Sleep Fix
    -Disabled IO Stats For Faster IO
    -Memory Leak Patches
    -Sleep/Suspend Patches
    -3X Faster Integer Square Root Operations
    -HRTimer Optimizations
    -Avoid load Average Moire
    -Scheduler Optimizations
    -Power Aware Scheduling
    -Sound Control
    -Memcopy and String Optimizations
    -Use Compile Time Constants For Jiffies Conversions When Possible(Reduces CPU Overhead)
    -Workqueue Updated To Linux 3.18
    -Optional Power Efficient Workqueues (Expanded to more modules than normal as well)
    -Moto QuickWakeup Driver
    -Frandom (Efficient Random Number Generator)
    -Cruft Free
    -Slimmed Down
    -Tons Of Debugging and Tracers Removed
    -Many Misc. Optimizations
    -Optimized CFQ Scheduler For SSDs
    -Tons Of IO Fixes/Performance Boosts
    -ROW IO Schedule(Default)
    -Voltage Control For Numerous Things
    -Entropy Optimizations/Tweaks
    -Many Parts Pulled From Upstream
    -Init.D Support
    -Installs SU
    -Installs Busybox
    -Potentially Something I Forgot...


    Downloads:

    [AFH] Kernel: https://www.androidfilehost.com/?w=files&flid=35336

    If Coming From Arter Kernel:
    Reflash TWRP recovery if using philz and flash this zip http://www.mediafire.com/?um57p83b3cb56x4 before flashing kernel.


    Credits:

    Imoseyon
    Ktoonsez
    AndreiLux
    Arter97
    G.lewarne
    Samsung
    Flar2
    anarkia
    hybridmax
    Franco
    Faux123
    Linaro
    Code Aurora Foundation
    Cl3Kener
    Friedrich420
    Google
    Motorola
    If I Missed You Lemme Know!

    XDA:DevDB Information
    VindicatorS6-Unified Kernel, Kernel for the Samsung Galaxy S6

    Contributors
    Xileforce
    Source Code: https://github.com/XileForce/Vindicator-S6-Unified

    Kernel Special Features:

    Version Information
    Status: Stable

    Created 2015-07-13
    Last Updated 2015-12-7
    38
    Changelog:
    R1:
    -Initial Release

    R2:
    -Updated From Linux 3.10.61 To 3.10.83
    -Updated Memory Management Tweaks
    -Update Interactive Tunings
    -Fix App Installing
    -Fix Random Reboots
    -Removed Overclocking For Now(Caused reboots)
    -Removed Fsync Toggle(Caused app installs to fail)
    -Added Asynchronous Fsync(Faster Fsync)
    -Fixed Frandom Permissions
    -Additional Entropy Optimizations
    -Added Interactive Patches
    -Trimmed More Stuff
    -Interactive No Longer Scales Up The Frequency Below 5% Load(Better Battery)

    R3:
    -Lag Free Interactive Tweaks (Glewarne)
    -Interactive Screen Off Max Frequency = (InteractiveX)
    -InputBooster Removed(Touchboost)
    -BOG8 Source Update
    -Memory Management Update
    -Better Frequency Selecting By Interactive
    -Numerous Interactive Code Optimizations/Patches
    -Added A Toggle To Remove SensorHub Wakelock In VControl
    -Remove Task Packing
    -Trimmed More Things/Debugging
    -Removed Forced Full screen Updates
    -Some Power Efficient Related Tweaks
    -Additional Optimizations
    -Many Misc Things.
    -Cifs support

    R4:
    -COGA Based
    -Compiled With Linaro 5.2 TC
    -Compiled With Ofast vs Os
    -Fully Tickless Kernel(faster more power efficient)
    -Updated Memory Tweaks
    -Added CPU OC Again!
    -Fixed Big Cpu Settings Not Sticking
    -More Interactive Tweaks
    -Reverted Enforced Mode
    -Async Fsync Replaced With Dynamic Fsync
    -Power Aware Scheduling Option
    -Updated To Linux 3.10.87
    -Added DT2W
    -Misc Patches
    -Added Synapse Support
    -Updated Nvidia Power Efficiency Patches
    -Various Upstream Timer/RCU Updates
    -Add LED Fade Patch
    -Add Audio Control
    -Add Various Voltage Controls
    -Optimize ART
    -Update VControl Options
    -CFQ Optimizations
    -GPU Throttling Smoothing
    -Task Packing Toggle Fixed
    -Task Packing Threshold Adjusted
    -Added PowerSuspend Driver
    -Updated Unification Patches
    -Disabled Gentle Fair Sleepers(Ui Smoothness)
    -Numerous Interactive Patches
    -Removed InteractiveX
    -Re-Added TouchBoost
    -Enable Efficient Unaligned Access

    R4.1:
    -Reverted Back To Dynamic Ticks Kernel
    -Enabled Fast No Hz(Power Efficiency)
    -Enabled RCU Priority Boosting(Performance Increase)

    R5:
    -Honestly Almost Everything Changed But Here's Some From Memory
    -Interactive screen off limited to 1ghz
    -Hotplug optimizations
    -Interactive Patches
    -LMK Upstreamed
    -GPU OC/UC
    -Ramdisk and synapse updated
    -DT2W Removed
    -LED Fade added
    -Fixed Lockscreen Crashes
    -GPU Tweaks
    -Strict Aliasing Optimizations
    -Significant amount of power efficiency patches
    -Sound Control Removed
    -More garbage removed
    -Optimized a few libs for A57
    -Updated To COJ2
    -Lots more
    25
    FAQ's

    1. What Is VControl And How Do I Use It?:
    VControl is a kernel tweaking "app" built into the ramdisk. It is accessed via terminal emulator. To use it simply download terminal emulator, Type "su" without quotes and hit enter. Grant terminal emulator super user permission and then type "VControl" without quotes. Please note that it is case sensitive. This will bring up a text menu and you navigate by simply entering the option number you want and hitting enter. It is currently a WIP. More will be added to VControl over time.

    2. You Broke My Phone! 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 with root support and navigate to proc/last_kmsg.

    3. What Kernel Tweaking App Should I Use?:
    To Tweak the kernel, currently the only apps that work well are Kernel adiutor and Kernel toolkit as well as synapse. You can also use VControl for a limited number of things. Synapse is now built into the kernel so simply install the app.

    4. What Do Power Efficient Workqueues Do?:
    Typically when a task is created, it is bound to the cpu it was created on. This is great for performance due to maintaining cache locality. However its not the best for battery life. Power efficient workqueues attempts to schedule tasks on already awake cpus. A quick note about awake and sleeping cpus. A sleeping cpu doesnt mean the cpu is turned off or not hotplugged, nor does this mean it has to be deep sleeping. A core can be online and still be sleeping which means it uses very little power. This is why we are able to run with all 8 cores on all the time. Most of the time the majority of the cpus are sleeping. With power efficient workqueues, jobs will attempt to schedule on awake cpus which means we dont have to wake up the cpus that are sleeping already. This means we lose cache locality so we suffer a small (very small) performance hit but we potentially save noticeable amounts of battery. Enable for battery, disable if you plan on benchmarking or just want the extra power. They are off by default.

    5. 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

    6. What does Small CPU Task Packing Mean?:
    Task packing Is a process done by the scheduler. What it tries to do is pack all tasks onto as few cores as possible. In this case, it only packs tasks for the low power(small) cores as we want to maintain maximum performance and spread the load out on the bigger cores. The advantage of packing tasks is that if we envision a scenario where there is a 40% load and that gets spread out across the 4 small CPUs at 10% load each all 4 small CPUs are awake and running at a low frequency. With task packing all 40% would be shoved onto 1 core and the other 3 would sleep. This provides energy savings. However there becomes a point where the frequency required to process the extra tasks becomes high enough that it would use less power to run two cores at half the speed rather than 1 core at a very high speed. In this scenario the scheduler will automatically let tasks spill over onto adjacent CPUs in order to maximize power efficiency. One down side to this is a small performance hit due to having to pull the other cores out of a sleep state in the event of needing immediate power. However I would guess most people couldn't notice a difference.

    7. What is power aware scheduling?:
    Power aware scheduling is a method of scheduling where we make the scheduler aware of the actual efficiency of the cores. As you know, the small cores are more efficient than the big cores. The existing method for scheduling work uses a more basic (if the load is above this point, then move it to the big cores) type of decision making. With power aware scheduling, the scheduler will schedule tasks based on its knowledge of the cores power efficiency. Typically this reduces performance, though it's likely not noticeable except for in some games. If you want more battery, enable this. If you want more performance or have lag in games disable.

    More will be added as they come up and I think of them.
    22
    Alright guys....R5 is finally here. You can download it from the link in OP now. For those of you running the latest test build, its not a huge change. I fixed a few things and added gpu controls to synapse like you asked ;)

    Enjoy. It only took 100+ builds.
    15
    Here ya guys go!

    https://drive.google.com/file/d/0B6n0VW96A9MobHNlOGdINzBvdjg/view?usp=docslist_api

    All sorts of changes and stuff. Some things to note. It's bogb based now, updated to latest Linux 3.10.86, and has dt2w(disabled by default) lots more as well but too much to list. Also I've decided to turn enforcing mode on interactive off by default now. That's what made everything uber smooth but it made the way it handled cores kinda weird. U can, however, enable it manually using an app like Kernel adiutor in the interactive settings :)

    Sent from my SM-G920T using XDA Free mobile app