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

Search This thread
You're not alone mate. I'm having this problem too but mine is, everytime i reset my phone, so does the configuration i did on the VControl.

Oh, and one more thing. I'm having problems with connecting my phone to a pc(windows 8.1) because sometimes the s6 edge folder won't appear on the pc and after a little pulling and putting the usb chord back on the phone it miraculously works again. Is this a normal bug on this kernel?
Sorry for bad english

Hmm I'm not sure, but maybe your USB chord is broken ? Try with a other cable!
Or try an other USB port, reinstall Samsung drivers !

Devices Info:
S6 Edge
model: SM-G925W8 (Canadian variant)
version: 5.1.1 Stock ROM (Samsung TW)
kernel : UniKernel
 

nofam

Senior Member
Nov 22, 2010
337
87
Dunedin
Well if you guys are okay with the battery screen freezing while off its basically ready. It's been a bug since R1.

I'm going to ask a stupid question, but is there any clue in the fact that other custom kernels don't have this issue? Could you do a diff on your code vs others' on whatever part of the kernel controls cold charging?
 
  • Like
Reactions: Xileforce

Xileforce

Senior Member
Feb 27, 2012
3,057
3,125
I'm going to ask a stupid question, but is there any clue in the fact that other custom kernels don't have this issue? Could you do a diff on your code vs others' on whatever part of the kernel controls cold charging?

That's what I've been doing. Aside from the unification patch, nothing really touches the charging stuff. The odd thing is when I pushed an updated build of unikernel ppl said it had the charging bug, then I released another update and they said it was fixed but nothing that I did there fixes it here :/ anyways. It's been awhile since I posted a build. So heres one to play with. https://drive.google.com/file/d/0B6n0VW96A9MoRU15Z3N3WHdCQ3M/view?usp=docslist_api lots of changes. No touchboost on this one. I've totally overhauled the interactive governor. I disabled the Samsung mods and spent weeks tuning it. I'm still fine tuning it but it's getting closer now. It's pretty smooth IMO without touchboost. I highly recommend using task packing and power aware on. It increases smoothness. Also I added OC steps on Apollo up to 1.8ghz and the voltages I put in for them should be relatively stable for most AVS. ;) synapse allows higher voltages as well. Set frequencies with kerne l adiutor because it doesn't allow touchwiz to change them. enjoy
 

brujo55

Senior Member
Apr 11, 2013
744
168
This version is not good for dolphin emulator. The big cores up to 2300mhz for few seconds then drop to 1300mhz and stuck here.

On R5 big cores stuck a 1700mhz at leats.

Samsung Dvfs disabled do nothing
 
  • Like
Reactions: bbender716

Xileforce

Senior Member
Feb 27, 2012
3,057
3,125
Is it just me or the voltages are still bouncing back to default?Big cores are resetting their voltage back to 1125mv and the LITTLE ones- to 1175mv...

Indeed it seems they wont let you go above whatever the maximum voltage is of an existing voltage... Im going to need to look into this more.





This version is not good for dolphin emulator. The big cores up to 2300mhz for few seconds then drop to 1300mhz and stuck here.

On R5 big cores stuck a 1700mhz at leats.

Samsung Dvfs disabled do nothing
This should be a relatively easy fix. Sounds like I just need to make it ramp up a bit sooner at 1300
 

Xileforce

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

DalekExt

Senior Member
Sep 20, 2013
69
26
Hey Xileforce, are you planing to start development on MM kernel soon? For LP it is propably best-performance kernel and I'm waiting for it.
If I understood right you overclocked A53 cluster up to 1800 successfully?
 
  • Like
Reactions: Xileforce

Xileforce

Senior Member
Feb 27, 2012
3,057
3,125
Hey Xileforce, are you planing to start development on MM kernel soon? For LP it is propably best-performance kernel and I'm waiting for it.
If I understood right you overclocked A53 cluster up to 1800 successfully?

I may give mm a shot when. It's out on tmo variant :) and yes I ocd to 1800. I run that stable daily. I went up to 2ghz in testing but i ran out of voltage headroom. :(
 
  • Like
Reactions: brujo55

Xileforce

Senior Member
Feb 27, 2012
3,057
3,125
tested and work much better but any idea why the A53 cluster never reatched the 1.8ghz?

the A53 only reatched 1.5ghz and never up

tested settings in synapse and all are OK.

Yup, that's totally normal. It's setup to use the higher frequencies only when it really needs it. So you will find it likes to use 1200-1296 a lot on the little cores. But it will definitely hit 1500 and above when it needs it. Use it for several hours and check your CPU stats. You will see that it spends some time in the higher end but not excessive.
 
  • Like
Reactions: brujo55

kenpachi100

Senior Member
May 2, 2014
88
15
Cleburne
I posted this a second ago but it's not showing up ? I was wondering if anyone is having this issue. Every two to three days my phone gets super laggy and I have to wipe the cache for it to stop. Is that normal or is something up with my phone or the kernel? I have the r6 build btw
 
  • Like
Reactions: BuBbLeFIZzY

Xileforce

Senior Member
Feb 27, 2012
3,057
3,125
I posted this a second ago but it's not showing up ? I was wondering if anyone is having this issue. Every two to three days my phone gets super laggy and I have to wipe the cache for it to stop. Is that normal or is something up with my phone or the kernel? I have the r6 build btw

That used to happen to me on older builds but I haven't had a problem recently.
 

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