[Kernel] Vindicator [UberTC6/Strict-Alias/Ofast][5.1][GPU OC/UV] [Release-2.4] - Nexus 6 Android Development

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
"I Don't Always Run Custom Kernels. But When I Do, I Run Vindicator"
-Worlds Most Interesting Man
Pushbullet Tag: vindicator
Vindicator OTA Updater App: https://play.google.com/store/apps/details?id=com.mcswainsoftware.vindicator.ota
if there are any bugs, contact developer Jacob
You can also follow me on G+ if you would like:
[email protected]
Intro:
This is the first kernel I've ever developed. I just started developing on android a few months ago so I'm brand new to this. I don't consider myself a developer, I'm just good at figuring things out, all credit goes to the real hard workers coming up with original ideas like Franco, Imo, Flar and Faux. Initially this was built as a kernel to compile with my ROM I'm working on but I decided I would let others get a chance to use it as well. 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.
For those looking for a similar experience, but much closer to stock, I suggest giving Zen Kernel a try!​
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 phone blows up, its not my fault. If your phone somehow gains perpetual battery life, I'll take full responsibility.​
Features:​-Zen Kernel Base
-Android 5.1
-BFS Cpu Scheduler (Ported By @bbedward)
-Latest Linux 3.10.x
-Compiled With Uber ToolChain 6.0
-Compiled With Ofast, Strict-Aliasing, Graphite, A15 Tweaks, And Loop Nest Optimizations
-Various Other Build Optimizations
-Optional GPU OC To 700Mhz.
-GPU Initial Freq. Is 110Mhz Instead Of 240Mhz Saving Power.
-Additional GPU Steps
-CAF Power Saving Patches
-CPUIdle Driver Updated To Linux 4.0
-Slub Allocator Updated To Linux 3.18
-GPU UnderVolted
-Workqueue Updated To Linux 3.18
-Init Updated From Upstream
-Power Efficient Workqueues
-Low Power Ram Mode Enabled
-Kernel Same Page Merging
-ZenDecision Quad Core Driver
-Hotplug Affinity Enhancements
-Kexec Hardboot/MultiRom(See FAQ For Help)
-UKM Built In And Modified. Just Install Synapse App.
-Savocas Color/Gamma Control
-Lowered Regulator And Screen Voltages
-Lowered Screen Clock Speed
-Lowered Retention Voltages
-Moto QuickWakeup
-Faux's Simple GPU Governor
-Frandom (Efficient Random Number Generator)
-Hardware Floating Point Processing
-ZRam
-ZSMalloc
-I2C Min Freq. Reduced
-Cruft Free
-Slimmed Down(Increased Size Is Due To Optimizations & UKM Not Bloat)
-Tons Of Debugging Removed
-Many Misc. Optimizations
-35mhz Min Freq, 3.09ghz Max
-Several WakeLocks Removed, Such As Sensor_Ind and hsic.
-MPDecision Disabled By Default
-MSM HotPlug
-Mako Hotplug
-Adjustable Thermal With Lean Kernel Mods
-IntelliActive Governor Added
-FIOPS, ROW & BFQ IO Schedulers Added
-Tons Of IO Fixes/Performance Boosts
-No Force Encrypt. Changed To Encryptable.
-Crypto Optimizations For Enhanced IO Throughput When Encrypted
-Voltage Control
-Westwood TCP Algorithm
-PIE & HHF Network Schedulers(reduced latency)
-Tons Of CAF Commits
-Merged In Most Of Franco's Code
-Merged In Parts Of Faux123's Code
-Merged Significant Portions Of Lean Kernel Code
-Optimized RWSEM
-Many Parts Pulled From Upstream
-Merged In All CAF And Franco Interactive Commits Into Interactive
-Francos Conservative Governor
-CPU Boost Completely Removed(Replaced With Franco's)
-Wake Gestures
-F2FS Support
-LK Config
-Vibration Control
-Asynchronous FSync
-Init.D Support
-Potentially Something I Forgot...
Downloads:
[AFH] Kernel: https://www.androidfilehost.com/?w=files&flid=25836
Downloads also through app and pushbullet
Amazing Donors!:
JackPollard
Maybelle
Credits:
Imoseyon
bbedward
Flar2
Franco
Faux123
Linaro
Code Aurora Foundation
Cl3Kener
Engstk
Yank555
Mistertac (Best Tester Ever)
RIPng(DespairFactor)
Neobuddy89
apb_axel
Google
Motorola
If I Missed You Lemme Know!​
XDA:DevDB Information
Vindicator Kernel, Kernel for the Nexus 6
Contributors
Xileforce
Source Code: https://github.com/XileForce/Vindicator
Kernel Special Features: I'm special.
Version Information
Status: Stable
Current Stable Version: 2.3
Created 2015-02-06
Last Updated 2015-05-3

Changelog:
1.0:
-Merged Latest Lean Kernel Code
-Merged Latest Franco Code
-Franco's Thermal Management Replaces Thermald
-Zram ported from Linux 3.19 upstream Using LZ4
-VM Memory Tweaks. (Vfs cache, swappiness,etc)
-I2C min frequency reduced from 50mhz to 19.2mhz
-Retention voltages dropper further
-Removed most Tracers
-Reduced Several Regulator Voltages
-Various CAF Patches
-Disable IO Stats
-Disable More Debugging
-Disable Gentle Fair Sleeper(better performance)
-ZSMalloc ported from Linux 3.19 upstream
-ZPool Ported from Linux 3.19 upstream
-Cut DMA latency in half
-Optimize SFCK Compression
-Reduce Swappiness
-Optimize Dirty Ratios
-Disable HSIC_Host wakelock by default
-Reduce Wlan wakelocks further
-Increase Bark/Pet Time
-Possibly More I Missed.
1.1:
-Savocas New Color/Gamma Control
-Lowered All Regulator Voltages Across The Board
-Lowered Screen Voltages And Screen Clock Speed(no detrimental effects noticed yet)
-Add Under clocked and Over clocked step for L2Cache
-Add 110mhz And 430Mhz GPU Slots
-Fix Simple On Demand Governor
-Additional Build Optimizations
-Integer Square Root Optimizations(3x faster)
-Lower GPU Bus Frequency @ 700mhz(battery and stability)
-Potentially Reduce BlueSleep Wakelock(testing report back please)
-Remove IO Debug
1.2:
-Merged Latest LeanKernel
-Added Option To Disable BlueSleep Wakelock Via Terminal
-Reduced BlueSleep By Default
-Readahead Optimizations
-More Voltage Reductions
-Power Suspend Updated To 1.7
-OC SlimBus
-Revert L2 OC
-Latest Franco Merged In
-Update To Linux 3.10.69
-Fix Ramdisk Issues
-Raise InteractiveX Default Screen Off To 730Mhz
-Lowered Power Draw Further At 35mhz
1.3:
-Added Motorola Quick Wakeup
-UKM Built In. Use Synapse App
-Added Aggressive Build Optimizations
-Merged In New Lean Kernel
-Greatly Reduced GPU Power Draw
-Added Bricked Hotplug
-Added MSM Limiter
-FSync Toggle
-Optimized LZ4 A Bit
-Some CAF Patches
-Increased Available Entropy
1.4:
-Merged In Latest Franco Code
-Removed Bricked Hotplug
-Defaulted Power Aware Scheduling On(Adjust In LkConfig)
-Added Power Efficient Workqueue(Better Battery Life)
-Optimized Timer Code
-Added Westwood TCP Alg.(Best One IMO)
-Updated UKM To Latest
-Updated MSM Limiter
-Numerous CAF/Linaro Patches
-Screen Power Draw Reduced Further
-USB Fast Charge
-Various Code Optimization Patches
-Added Toggles For Arch Power And Gentle Fair Sleepers
-Network Speed Tweak
-Don't Force Sync On Suspend
1.5:
-Kexec-hardboot/multirom support(Huge thanks to team member @jamcswain for porting that!) See FAQ For Help.
-Merged Lean 1.17
-Update To Linux 3.10.71
-Optimize Low Memory Killer For ZRam
-About 50 CAF Patches For Numerous Things(Thanks Neobuddy)
-WiFi Patches
-Crypto,IO,Memory Optimizations
-Entropy Optimizations
-DT2W Fixes
-Screen,GPU Patches
1.6:
-Android 5.1 (Massive Thanks To Imoseyon for merging it in)
-Latest Lean Merged
-Latest Franco Merged
-Mako Hotplug Updates
-Intelliplug V4
-Misc Fixes
-Default Power Aware Scheduler Off Again (Change In lkconfig)
1.7:
-Merged Latest Lean
-Merged Latest Franco
-Ramdisk Fixes For Roms(All Imoseyon)
-IO Boosts
-Updated Linaro ToolChain
-Boot Time Speedup(Jamcswains idea)
-InteractiveX Tweaked(Franco's Idea)
-Numerous CAF Patches
-Mako Hotplug Updates
1.8:
-Merged Latest Lean
-Merged Latest Franco
-Switched Toolchain To Custom Compiled Linaro
-Speed Up Boot Further
-Tons Of CAF Patches
-Audio Fixes/Patches
-800Mhz GPU Step
-MSM Limter Removed
-Added Moto Predictive Touch Driver(Better Responsiveness)
-Updated FB Notifiers
-Disabled MPDecision By Default. Mako Is Default Now
-FIOPS Is Default IO Scheduler Now
-Added Moto Low Memory Killer Optimizations
-CPUfreq and Ext4 Optimizations
-More Debugging Disabled
-Various Other Optimizations And Updates
-Update To Linux 3.10.72
-Probably Stuff I Forgot
1.9:
-Merged Latest Lean Kernel
-Fix USB OTG
-Fix Wake Gestures
-Default To QuadCore Mode For Mako
-Ensure 35Mhz Is Min Freq. on Boot(Fixes Weird Issue)
-Modified UKM/Synapse To Control Wakelocks (Misc Tab)
-Merged Latest Hydra Kernel Changes/Patches
-Fix Battery Drain On BlueTooth
-Frequency Mitigation Preventer V2 (In LKConfig)
-Stability Fixes
1.9.1:
-In Call Audio Fix
1.9.2:
-Updated With Official Multirom/Kexec Hardboot Patch
2.0:
-Merged Latest Franco And Lean Code
-Linux 3.10.73
-Several Memory Leaks Fixed
-Reboot/Bootloops Fixed
-!00's Of Patches
-SELinux Permissive By Default
-Compiled With SaberMod 5.0
-Screen Frequency Reverted To Stock
-Tweaked Interactive Touchboost Parameters Further
-Replaced IntelliPlug With MSM Mpdecision
-Added Back MSM Limiter
-FB Notifiers now Enabled By Default. Toggle Added To Synapse
-Merged In Some Hydra Kernel Ramdisk Fixes
-GPU OC Reduced Back To 700Mhz
-Add Power Aware Scheduling to Synapse (CPU Settings Page)
-Fix Synapse To Display CPU Bin On Front Page
-Revert FastBoot Mods For Now (Buggy)
-KCal Fixes
-MSM_HSIC WakeLock Now Enabled By Default With Divisor Of 5 (Change In Synapse Or LKConfig)
-Mako Hotplug Load Threshold Set Back To 80
-Misc Optimizations
2.1:
-Completely Rebuilt From Scratch Upon Zen Kernel With Input From bbedward
-Some features may be missing atm and may get added back in down the line.
-BFS Cpu scheduler. IMO a significant upgrade over CFS, the standard one used by almost every kernel. Should give better battery life and performance. THIS IS ONE OF THE BIGGEST CHANGES A KERNEL CAN MAKE
-Cleaned up the source and fixed issues.
-EXT4 and F2FS updated with upstream commits.
-Per CPU VMA Caching From Upstream
-BFQ and ROW IO Schedulers
-Touchboost Adjustments For More Butter
-Fauxs Simple GPU Governor
-Lowered the default voltage on 1.497ghz 10mv by default
-Compiled With Ofast Instead of Os (Ofast Is the heighest gcc optimization level, one step above O3. Os optimizes for size, rather than speed.)
-Compressed with optimized XZ rather than LZ4 to keep size down
-Latest lean and Franco merged in.
-Adaptive Low Memory Killer enabled
-So much stuff....and I honestly have no idea on how to write a changelog for a rebase...its an entirely new kernel...
2.2:
-Compiled With UberTC 6.0 (Figured We Would See How It Compares To SM 6)
-Compiled With Graphite Optimizations
-Compiled With Loop Nest Optimizations(An Extremely Aggressive Optimization)
-Compiled With loop-unroll-and-jam(A companion optimization to loop nest also aggressive)
-Small GPU Tweaks
-Greatly increased encrypted IO Performance
-Arm Specific Optimization Patches
-Added Heavy Hitter Filter(Another Network Optimization That May Also Reduce CPU Usage)
-Added Proportional Integral Controller Enhanced(Yet another network optimization algorithm designed to reduce latency and increase efficiency when doing latency sensitive things such as streaming)
-Optimize boot/compressed for Krait
-Addition Branch Optimizations and Inter Procedural Optimizations
-Support CM12.1 Ramdisk
-Optimize ROW and Deadline
-Add Bluesleep Wakelock Toggle
-Reduce Wlan_Ctrl Wakelock
-Default Wlan_rx wakelock divisor to 5
-Default msm_hsic divisor to 6
-Fix lkconfig frequency stuff
-Default below 40% frequency changing OFF
-Cleanup frequency mitigation stuff in lkconfig.
-Add Westwood
-Use amended interruptible threads (reduces cpu load)
-Disable add random on IO
-Reset cpu dma latency to stock...idk what it does so i shouldnt touch it...
-Revert Ram OC (IDK if it even worked)
-Add smb135x wakelock toggle
-A GPU Patch
-Raise default touchboost to 500ms.
-Optimize memcpy and memmove
-Significantly Optimize Console Framebuffer
-Enable non-cacheable streaming enhancement
-Add GPU Compile Optimizations
-Disable a lot more debugging
-Boot with 2.649ghz max freq for stability
-Add OC up to 3.033ghz. Highly unstable IMO but its an option for the brave.
-Cleanup Ramdisk
-Raise voltage a bit on 2.88 for stability.
-Disable useless resource counters to save processing power and battery.
2.3:
-Update CPUIdile Driver and CPUIdle Governors almost completely to linux 4.0(Several Years Worth Of Commits)
-Updated CPUFreq Driver Nearly To Linux 4.0
-Update Suspend/Sleep Driver Mostly To Linux 4.0
-Update SLUB Allocator To Linux 3.18
-Update Block(IO Stuff) From Upstream A Bit.
-Upstream Scheduler Patches
-3.09Ghz CPU Step Added (Likely Quite Unstable) Some People Like That Stuff
-Amperage On 3.03Ghz bumped up a tad for stability.
-Linux 3.10.75
-Frandom random number generator added(Extremely Fast Random Number Generator)
-Power Efficiency Patches From Code Aurora
-Fixed Crash When Switching CPU Govs.
-BFS Updates!
-Update Ondemand to Linux 3.18
-Default OnDemand To Simms22's Preferences
-Merged Latest Franco Code
-Merged Latest Lean Code
-Merged Latest Zen Code
-Franco's Conservative governor updated
-Some Interactive updates
-Color control updates
-ARM Specific Updates
-F2FS Updates
-GPU Driver Updates
-Memory Leak Fixes
-Stability Fixes
-Updated ToolChain
2.4:
-Updated To Linux 3.10.77
-Merged Latest Lean Kernel
-Merged Latest Zen Kernel
-Update Workqueue To ~ Linux 3.18
-Enable Ram To Enter Low Power Mode
-Update mm.h And Memblock from upstream
-Default IO Scheduler To BFQ. Its Been Tested To Be Best For Interactivity
-Upstream Init A Bit
-A Few Patches To SMP
-Upstream Cgroups And Memcg Significantly
-Disable RunQueue Stats. Pointless Bloat and CPU Overhead only needed for mpdecision
-Added Power Efficient WorkQueues Patch From Upstream(This Gives better battery life at the cost of a likely unnoticeable performance hit. Enabled by default. Toggle in synapse CPU settings page)
-Hotplug Efficiency Patch(Optimizes Hotplugging To Handle The Transfer Of Processes From One Core To Another Much Better)
-ZenDecision Added
-Added A Toggle For Mako(Currently Only Works To Disable Mako. Ill Work On It Further In 2.5 Credit to bbedward for this
-GPU Tweaks To Make It Smoother
-UnderAmped(Reduce Current For Every Frequency Up To 2.7ghz. Should Save Power. Experimental)
-Added KSM Tweaked For Android(Disabled By Default, Scans Few Pages, and does so very rarely. I didn't notice a battery hit with it on. Optimizes ram use)
-Franco Kernel Updater Profile Updates
-Ramdisk Modifications(May Fix Some Rom Issues)
-Fix For Ondemand Crashing(Hopefully)
-Misc Tweaks & Patches
-Hotplug Affinity Fixes
-Various Power Saving Patches
-Optimize Copy_Page For Modern Arm Processors
-Do Jiffies Conversions At Compile Time Rather Than Runtime(Saves The Cpu Work)
-Optimize For Our L1/L2 Cache Size
-Allow Options To Be Passed To Memory Barrier Instructions
-2 Patches To Improve File System Performance
-HRTimer Optimizations
-Make Binder Mutex Realtime To Reduce Chance Of SurfaceFlinger Being Blocked
-Keep Track Of ASID Allocations And Try To Reuse Them In Certain Cases To Improve Performance
-Don't Compile CPUIdle Ladder Governor. It doesn't get used anyways.
-Allow Rescuer Thread To Do More Work
-Reduce Runqueue Lock Contention
-don't use compound_head() in virt_to_head_page() this showed around a 1.8% performance improvement in some cases
-Small MultiCore Scheduling Improvement
-Definitely Some Stuff I Forgot

FAQ's
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, those are part of LK which means 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 ofnwhy 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 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 sys/fs/pstore I then need the console one.
7. What Kernel Tweaking App Should I Use? What About For Tweaking Screen???:
I now Use synapse as my goto app for kernel tweaking since version 1.3. To control the screen I use the app made by Savoca who created the color control we use http://downloads.codefi.re/savoca/kcal
8. Why Add Zram? We Already Have 3gb 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. Wut Is A LZ4?
LZ4 is a compression algorithm used by the kernel. LZ4 is currently the fastest supported option in the Linux kernel and had to be ported from upstream. It is significantly faster than XZ compression which is what we used prior. The downside is it results in slightly larger file sizes due to a lower compression ratio. However with modern hardware this should be moot. The gains should theoretically be noticed as a general performance bump. Boots should be faster. IO should be marginally faster. Anything that's compressing or decompressing stuff, such as ZRam and encrypted devices will utilize this in a big way. Because its compressing and decompressing so much faster it can also be assumed it is saving battery via less CPU cycles.
10. 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
11. 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. The same goes for 98mhz. Hope this helps clear things up.
12. How Do I Disable BlueSleep Wakelock?
Open terminal emulator app. Type su then hit enter then type echo 0 > /sys/module/wakeup/parameters/enable_bluesleep_ws all on one line. It won't say anything but if you turn on Bluetooth and check your wakelocks you shouldn't see the wakelock there anymore. This needs to be set on each boot currently. If you experience Bluetooth connectivity issues don't disable this. To enable it again either reboot or run the same command with a 1 instead of a 0.
13. How Do I Use MultiRom???:
To use multi ROM first you must download the MultiRom App from this location http://tasemnice.eu/bordel/MultiROMMgr-v1.180.apk the play store version doesn't work with shamu yet. Then you will need to open it, go to settings and tap the version number until you are a developer. Then click override manifest URL and for manifest URL enter http://tasemnice.eu/multirom-test/manifest.json the. Go back to the main page. You should now 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.

Configuration Guide:
The following can be done using your favorite kernel tweaking app. I use synapse.
Clock Speed:
To begin I prefer to leave my max clock speed at the stock 2.649ghz. Set min CPU as low as it can go. As of current release this is 35. For the adventurous you can try 2.88ghz. Often I bump the voltage 12mVolts on 2.88 to be safe.
To find your CPU binning run this command in terminal emulator OR look at the first page in synapse near the bottom:
su (enter)
cat /proc/cpu/msm_acpu_pvs (enter)
(Put a space between cat and /proc)
note that the number may be displayed at the beginning of the next line.
It will then display a number from 0-15. 15 being the best. Don't stress over it too much if you score low, its not the end of the world. It just means you need marginally more voltage to run each frequency.
GPU:
As of Alpha 1.3 the GPU can now be over clocked to 700mhz. This is completely optional. To verify your over clock change the GPU governor to performance and see if it spikes to 700 every so often. If it does it worked! If it doesn't you may need to set the frequency to something else then back to 700 again. It remains to be seen what kind of benefits the GPU over clock will give but it is there for those who want it. The recommended GPU governor is the stock msm adreno one. If you encounter lag in games you can try changing it to performance temporarily while playing that game. Simple on demand is a more performance oriented governor.
Governor:
Most people will probably want to just leave this set to interactive. Its a really good governor that is being actively devolped by CAF, Google, and Franco. It also hooks into Francos CPU Boosting interface. Its "smarter" than OnDemand and generally considered to offer better battery life. If you want even more smoothness some consider OnDemand to provide a bit better performance, however you may get slightly worse battery life. This is because OnDemand ramps up to max frequency when there's is load put on the CPU and then slowly works its way down. Interactive scales through the frequencies on the way up and down which saves battery life but prevents it from jumping to max speed as fast if it is needed. Simms22 recommends using the OnDemand governor with "upthreshold" set to 98 and the sampling rate set to 15000. That is the default setting of the Trinity Kernel. Mistertac made the great suggestion of turning the max screen off frequency down to 600mhz if using the interactiveX governor. This will prevent any misbehaving apps from keeping CPU ramped up while screen is off and give better idle drain. The actual number you would have to type in would be 652800 for the screen off frequency. The Conservative Governor is greatly modified by franco, Its no longer a super slow governor as it once was. It also hooks into his cpu boost control interface meaning you get cpu boost when using it. Conservative prefers the lower frequencies, however so if you find yourself having lag, you may want to switch to another.
PowerSuspend:
The only working options in V1.6 of the PowerSuspend driver are lcd_panel and Userspace which can be found in the miscellaneous section of FauxClock. I suggest leaving it at the default choice of LCD_PANEL. In FauxClock if you navigate to the cpu idle/stats area you will be presented with more options. You should see a list of C-states. For example C0: wfi and C1: retention. These are essentially low power states that the cpu can enter to save power. The higher the C number the deeper the sleep. Last I heard, the optimal configuration was to enable C0, C1, and C3. Paired with lowered Retention voltages, this should give you a very low idle drain.
Hotplugging:
Next go to hot plugging section and disable MPDecision(make poor decision) and enable intelliplug or, enable Mako Hotplug(Franco's) by either selecting user control as your hotplug, or disabling both mpdecision and intelliplug. Tweaking for them is split up below.
IntelliPlug:
FauxClock allows you to further configure intelliplug. If you want more battery set it to Conservative (4) mode which will hotplug the CPU more conservatively and save you battery, essentially this means it will use less cores if it can. For most people, leaving it on Balanced (4) mode will be fine. If you want further battery savings you can set it to EcoPerformance (2) or even EcoConservative (2) which will only use a max of 2 cores. IntelliPlug is able to use a single core unlike Mako Hotplug.
Mako Hotplug:
As far as I know the only way to tweak Mako Hotplug is either through the terminal app, synapse or through Francos app. In Francos app select cpu manager, then Hotplug Control. The main one you will need is load threshold. The default is 80. The higher this number, the more load the cpu needs to be under before it will plug the 3rd and 4th cores. 80 is actually pretty good value for most people and it will use the extra 2 cores when it really needs them. If you want to force all 4 cores on for whatever reason, you can achieve this by setting the load threshold to 0. This will effectively disable hotplugging. Of course you can always find a middle ground as well.
Via Terminal:
The sysfs interface for mako hotplug is...
/sys/devices/virtual/misc/mako_hotplug_control
To adjust... Use echo commands...
Ex:
echo 0 > /sys/devices/virtual/misc/mako_hotplug_control/load_threshold
The above command would set the load threshold to 0.
Thanks Rignfool!
Voltage Control:
Next go to voltage control. I'm a Bin 5 and I can use a 48mVolt undervolt without becoming unstable. Rember! Never set voltages to apply on boot until you have tested them for a few hours first! Most people can probably get away with a 36mVolt undervolt and nearly everyone should use at least a -24mVolt UV. Also remember that if you are running an over clock you may not want to undervolt that frequency. If you find yourself running into freezes or random reboots remove the undervolt!
Thermal:
This kernel comes with the latest IntelliThermal Driver from Faux123, which is a highly configurable thermal driver, as well as Franco's Thermal Driver which is the stock option. It is recommended you use IntelliThermal over Franco's if you wish to customize the values. Change this option under the Thermal Manager section of FauxClock. The optimal settings that I have found are 70 degrees for frequency throttle, and then somewhere between 70 and 80 for core throttle temp, depending on how safe you want to be. Stock is 80 degrees. Leave all cores checked for both frequency throttling and core throttling. I also leave on GPU Thermal Control, but if you encounter periodic lag in games you may wish to disable it. I also leave Core Thermal Control on as well, though I'm not entirely sure what it does lol. Also FYI, the sliders beneath those two options are showing you the current status of them, they are not sliders you can move.....trust me...I tried for like 5 minutes before I realized and felt like a moron....
I/O Settings:
For I/O scheduler select FIOPS. FIOPS is superior to the other schedulers in nearly every way. It is a scheduler designed for flash storage which is what our phones use. My testing has shown that 1536 is the best readahead buffer. Less or more is detrimental.
ZRam:
ZRam is something designed to optimize the ram of a device. What typically happens when a device runs out of space in ram is it is forced to use something called swap. Swap is normally a partition of a hard drive or ssd depending on what is available where the ram can copy some of it's contents to free up space. The problem is even the fastest SSDs are many many times slower than ram. Android by default doesn't have swap, however it does use a low memory killer which essentially goes through and clears out apps that are in ram to free space. ZRam makes a compressed partition inside the ram itself which then acts as a swap partition. Basically when ram begins to fill up. It compresses data and sticks it in a sealed off area of the ram. This let's it stuff way more stuff into ram than normal. To enable ZRam I use fauxclock. Trickster for whatever reason does not work. In FauxClock go to memory settings, then set the Zram size to 300mb and click apply disk size. Then turn it on and set on boot. You have now essentially boosted the available ram via compression!
VM Settings:
There are numerous tweaks you can do to the VM. For this I use FauxClock but IK Kernel Aduitor can do this as well. In FauxClock navigate to memory manager. The first thing to tweak is an option called swappiness. This control is used to define how aggressive the kernel will swap memory pages. Higher values will increase agressiveness. I defaulted this to 10 however the default is 60. This will use more ram but give better performance. Next is VFS Cache Pressure. This controls the tendency of the kernel to reclaim the memory which is used for caching of directory and inode objects. The default used to be 200. Its now defaulted to 10 meaning more ram usage but more performance. Next up is dirty ratio and dirty background ratio. Some things pass through ram and stay there for a bit until they get flushed to the flash storage. These controls essentially dictate how long it should wait before flushing to the flash storage. The longer you can delay it the better performance and battery you achieve, at the cost of ram. Setting these higher will increase ram usage but increase performance. I recommend a background ratio of 30 and a dirty ratio of 50, however feel free to tweak them as you desire.
Color Control:
Next you may want to adjust Screen RGB, value, saturation, hue and contrast. WrinkleFree over in the Lean Kernel thread did extensive testing with a professional grade $1000 screen calibration tool. You can use this app http://downloads.codefi.re/savoca/kcal to control the screen.
For the most truly color accurate screen at D6500K:
Red - 248
Green - 246
Blue - 255
If you prefer a slightly cooler screen and the tuning the iPhone uses which is D7400K:
Red - 237
Green - 235
Blue - 255
More info can be found about color calibration here: http://forum.xda-developers.com/showpost.php?p=57265483&postcount=620
As for saturation. I like to turn it up a bit and make the colors pop a bit more so I leave it around 65. But quite honestly saturation,value,contrast,and hue are going to come down to tweaking it and finding what you like most. Have fun!
These settings are meant to be used as a starting point. Depending on your cpu binning and desires you will probably want to tweak these slightly to fit your needs. I'll add more as new features get added, I learn more, and I think of stuff to add Hope it helps someone!

Sweet! Good work man.

Thanks for sharing.
It does support the CM Theme Engine, right ?

x0nar said:
Thanks for sharing.
It does support the CM Theme Engine, right ?
Click to expand...
Click to collapse
Yessir using it as we speak

Seems buttery enough. Will let you know the battery life on Bliss 2.0

x0nar said:
Seems buttery enough. Will let you know the battery life on Bliss 2.0
Click to expand...
Click to collapse
Good to hear so far. Don't forget to lower your min frequency . Also I recommend either Conservative or Interactive governors ATM as they hook into the new CPU boost. I'll be posting a full configuration guide probably tomorrow. Hope you like it.

New kernel , SUPER

Fauert said:
New kernel , SUPER
Click to expand...
Click to collapse
Hope you like it! No doubt I'll be hearing many bug reports when I wake up tomorrow

I've been testing this kernel on a few different Roms without any issues at all really so everyone should be happy with it.
If anyone gets any reboots though do try and get logs [emoji106]

Xileforce said:
Good to hear so far. Don't forget to lower your min frequency . Also I recommend either Conservative or Interactive governors ATM as they hook into the new CPU boost. I'll be posting a full configuration guide probably tomorrow. Hope you like it.
Click to expand...
Click to collapse
Looking forward to your guide.

Nice kernel. Jist one thing, may be is a feature i dnt know but only 2 cores online when i tried tu push all cores on, just stay with 2 or 1 core on. I changed the hotplug but still the same
Sent from my Nexus 6 using XDA Free mobile app

Bestplayer55 said:
Nice kernel. Jist one thing, may be is a feature i dnt know but only 2 cores online when i tried tu push all cores on, just stay with 2 or 1 core on. I changed the hotplug but still the same
Sent from my Nexus 6 using XDA Free mobile app
Click to expand...
Click to collapse
Are you trying to do this for a Benchmark?
Using the Faux app you can first set it to Intelliplug , then Performance (4) Cores and that should get you there.
If not, try setting it that way and reboot. I've noticed with this phone that I've had to reboot a lot for my changes to actually take correctly.

Cpu2 and cpu3 are stuck in performance...
And does anyone know where in sysfs to adjust mako hotplug?

rignfool said:
Cpu2 and cpu3 are stuck in performance...
And does anyone know where in sysfs to adjust mako hotplug?
Click to expand...
Click to collapse
Gotcha.. Well once Mr Xile wakes up I'm sure he'll have something for you, not sure myself.

Mistertac said:
Gotcha.. Well once Mr Xile wakes up I'm sure he'll have something for you, not sure myself.
Click to expand...
Click to collapse
I found it... And I learned a new Linux command in the process...

Haven't done a full battery test yet, but I seem to be getting the best I've seen so far.

Bestplayer55 said:
Nice kernel. Jist one thing, may be is a feature i dnt know but only 2 cores online when i tried tu push all cores on, just stay with 2 or 1 core on. I changed the hotplug but still the same
Sent from my Nexus 6 using XDA Free mobile app
Click to expand...
Click to collapse
Currently if you disable all hotplugs or if you use fauxclock to set it to usercontrol that enables Franco's mako hotplug. Thats why in an app such as faux you cannot easily force two cores online. However if you use Franco's updster app you can go to CPU manager then hotplug control and if you lower the load threshold it will hotplug more frequently. Setting this to 0 will force all cores online. Additionally as mistertac said. Using b intelliplug on either performance(4) mode or balanced(4) will use all 4 cores pretty frequently as well.

Related

[Kernel][AOSP] MAC Kernel - 2.5 [OC uV | Linaro -O3 | CK1 | S2W | USBFC | SLQB | SIO]

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
BIG thanks to Agrabren, ToastCFH, CyanogenMod Team, Coolexe and cjoliver​
What is a kernel?​
Code:
#include
/*
* Your warranty is now likely void.
*
* I am not responsible for bricked devices, dead SD cards,
* spontaneous combustion, or any other host of cosmic penalties
* which may befall you, your family, or your phone.
*
*/
• Based off latest Disarmed Toaster build - true aosp kernel is here
• Snapdragon optimizations
• Linaro -O3 optimized
• Implement Ziggy's ck1 patchset
• USB Forced Fast Charge v3.1
• Sweep2Wake with user sysfs - YOU pick start and end points!
• CPU OC up to 1.94GHz
• Set default speeds min @ 192 MHz [email protected] 1.5 GHz
• CPU based alignment handling
• L2 up to 1566 MHz
• GPU OC 2D @ 266 MHz 3D @ 320MHz with MHzx8 bandwidth
• Glitch free GPU frequency changing
• Ziggy's Vdd table interface
• Kernel based mpdecision with advanced screen off profile
• Kernel based thermal management with 3 phase throttling sysfs
• zRam- Google snappy zRam compression / decompression
• Optimized SLUB
• SLQB memory allocator - default
• Dynamic sync control
• Optimized ARM RWSEM algorithm
• lib/memcopy: use glibc version
• lib/string: use glibc version
• Proportional Rate Reduction for TCP
• Lower vfs cache pressure -> 25
• Tweaked audio buffers for Beats
• AC charging for unknown chargers
• vfp neon Optimizations
• Adjusted VM Ratios
• Disable gentle fair sleepers, should improve performance
• Lower WiFi voltages
• Increase Max / Min Readahead Buffers
• Allow low WiFi signals to be seen
• Allow camera flash at 5%
• USB OTG
• CIFS
• SWAP
Governors
• Ziggy's LagFree
• Ziggy's Smartass v2
• Badass with GPU control
IO Schedulers
• BFQ v4
• SIO - Tuned for flash devices
• Deadline - Tuned for flash devices
• Noop
• V(R)
• Boot to recovery
• Nand backup (Optional)
• Wipe cache
• Flash kernel
• Done!
Code:
v 2.5
• Compiled with latest Linaro toolchain
• Linaro -O3 Optimized
• Patched up to Linux 3.0.50
• SLQB Memory Allocator - Defaulted
• Implement ck1 patchset - ziggy
• Add -Ofast flag to config
• Ziggy sysfs vdd interface
• Move vdd min / max to kconfig
• Ziggy's LagFree
• Add sysfs to config for smartass v2 - Ziggy
• Update LZO zRam
• Removed a bunch of governors for battery testing (SavagedZen, Lionheart, Intellidemand, Scary, Lulzactive, Wheatley, Pegasusq, Lazy)
• Default to SIO
• MHzx8 bandwidth
• Fix thermal management
• 3-phase throttling with sysfs added to thermal managment
• Advanced screen off profile for mpdecision
• User configurable sweep2wake coordinates
• Tweak deadline io scheduler for better performance on Android
• Fix bug due to buffer overrun
• Optimized sha1 and aes routines
• Lower display panel voltages
• Dynamic sync control
• Re added badass governor with gpu control
• Updated updater script
• Enabled USB OTG - Yes, I completely forgot to enable this...
• [url]http://d-h.st/myi[/url]
• New: https://github.com/MikeC84/android_kernel_htc_shooter-2
• Old: https://github.com/MikeC84/android_kernel_htc_shooter
• Old: https://github.com/MikeC84/CM9-SHOOTER
Also linked in my signature in case no one noticed..
• Abrabren
• ToastCFH
• Cayniarb
• Herver
• Cyanogen Mod Team
• Chad G
• Mazda
• showp1984
• lowlevel-studios
• abev66
• Coolexe
• faux123
• ryrzy
• oliverclaude
• yank555-lu
• Chad0989
None!
Code:
[B]Coming Soon[/B]
Add another build for older base
Optimized CRC32 algorithm
Patched up to 3.0.52
Linaro Topology drivers
[B]11/02/2012[/B]
http://d-h.st/myi
• Compiled with latest Linaro toolchain
• Linaro -O3 Optimized
• Patched up to Linux 3.0.50
• SLQB Memory Allocator - Defaulted
• Implement ck1 patchset - ziggy
• Add -Ofast Linaro flag to config
• Ziggy sysfs vdd interface
• Move vdd min / max to kconfig
• Ziggy's LagFree
• Add sysfs to config for smartass v2 - Ziggy
• Update LZO zRam
• Removed a bunch of governors for battery testing (SavagedZen, Lionheart, Intellidemand, Scary, Lulzactive, Wheatley, Pegasusq, Lazy)
• Default to SIO
• MHzx8 bandwidth
• Fix thermal management
• 3-phase throttling with sysfs added to thermal managment
• Advanced screen off profile for mpdecision
• User configurable sweep2wake coordinates
• Tweak deadline io scheduler for better performance on Android
• Fix bug due to buffer overrun
• Optimized sha1 and aes routines
• Lower display panel voltages
• Dynamic sync control
• Re added badass governor with gpu control
• Updated updater script
• Enabled USB OTG - Yes, I completely forgot to enable this...
[B]08/26/2012 - 0.9.6[/B]
[url]http://d-h.st/S4l[/url]
• Update Fast Charge to v3.1 - yank555-lu
• Update BFQ to v4
• Add V(R) I/O Scheduler
• Optimized ARM RWSEM algorithm
• lib/memcopy: use glibc version
• lib/string: use glibc version
• BadAss Governor - showp1984
• Lulzactive v2 Governor
• Pegasusq Governor
• Fix multi touch issues - Agrabren
• vDM fix - (Coolexe / Chad G)
• Update LZO compression / decompression to latest version.
• Proportional Rate Reduction for TCP
• Lower vfs cache pressure -> 25
•Tuned deadline for better flash support
[B]08/19/2012 - 0.8.5[/B]
[url]http://d-h.st/JVQ[/url]
[url]https://www.dropbox.com/s/wmqy22wqu9czf0o/MAC_Kernel_0.8.5.zip[/url]
• Kernel based mpdecision - Coolexe
• Kernel based thermal management - Dodava
• Snapdragon optimizations
• Optimized SLUB
• Tweaked audio buffers for Beats
• Glitch free GPU frequency changing
• AC charging for unknown chargers
• -O2 Optimized - Dodava
• vfp neon Optimizations - CG
• Google snappy zram compression / decompression - Vadonka
[B]08/10/2012 - 0.8.0[/B]
[url]http://d-h.st/sQM[/url]
• CPU OC up to 1.94
• Allow CPU based alignment handling - CG
• Adjust vm ratios
• Disable gentle fair sleepers, should improve performance
• Default IO Scheduler > noop
• New updater zip that will help with flashing on sense - CG
• Allow low WiFi signals to be seen
• Allow camera flash at 5%
• Sweep2Wake
[B]08/06/2012 - 0.7.5[/B]
[url]http://d-h.st/C1Z[/url]
• Re based off cm9 0.7.4
• Lower WiFi voltage
• Remove CPU oc for now
•Add back GPU OC - (Chad G)
• USB Forced Fast Charge - (Chad G)
• Change back to SLUB. SLQB causing boot loop
• SavagedZen Governor
• Scary Governor
• ZRAM
• SWAP
• CIFS
[B]07/27/2012 - 0.7.0[/B]
MAC - [url]https://www.dropbox.com/s/vf0ofwj6ppktvcx/MAC_Kernel_0.7.0.zip[/url]
md5 - a15719330044cd0a81f3768b0e3689a9
• intellidemand governor
• iosched: prevent aliased requests from starving other I/O
• SLQB Memory Allocator - Default
• CPU OC up to 1.8
• GPU OC
• Disabled Perflock
• USB On-The-Go
• Removed lulzactive governor was causing reboots.
[B]07/19/2012 - 0.6.5[/B]
MAC - [url]https://www.dropbox.com/s/hlntpy5bwgvxtdg/MAC_Kernel_0.6.5.zip[/url]
md5 - 097f78a07f6d70caff23e318a5817b1c
• Fixed Lulzactive full speed bug (tegrak)
• New base (thanks Agrabren)
• Simple IO Default Scheduler (From now on just one kernel. Use antutu cpu, rom toolbox, etc to change IO Scheduler)
• Added USB forced fast charge - CG
• Remove BadAss Governor
• GPU OC Not yet added..
[B]07/12/2012 - 0.6.0[/B]
SIO - [url]https://www.dropbox.com/s/brev1ek7ck84q5g/MAC_SIO_Kernel_0.6.0.zip[/url]
md5 - d8f01ea7e749e662aadf7f0c4dd17504
BFQ - [url]https://www.dropbox.com/s/lowuo3wnajyz6yj/MAC_BFQ_Kernel_0.6.0.zip[/url]
md5 - a36b4552dc2840f0d6ebb5a66af55f8f
• Updated Lulzactive Governor
• Fixed Lulzactive compile error
• Added Lionheart Governor
• Added SavagedZen Governor
[B]07/12/2012 - 0.5.5[/B]
BFQ - [url]https://www.dropbox.com/s/trya5xienfejqvp/MAC_BFQ_Kernel_0.5.5.zip[/url]
md5 - 01a838d7f0b45d2646c26264d3a623f7
SIO - [url]https://www.dropbox.com/s/4pyuuaqw238y4va/MAC_SIO_Kernel_0.5.5.zip[/url]
md5 - ab5d1585da3295be453dc1e8b7d3eecf
0.5.5
Updated makefile for quick compiling
Tuned SIO for flash devices
Fixed bug in SmartassV2
Tweaked conservative governor
Added Governors
Wheatley
Lulzactive - Not enabled, need to update
Lowered GPU OC
0.5.0
Updated Simple IO Scheduler
Added Governors
SmartassV2
Badass
Increase readahead buffer
0.4.6
Updated BFQ IO Scheduler
Fixed compile error for BFQ
0.4.5
FRESH START
Updated Updater Script
Added Schedulers
BFQ IO Scheduler - Not enabled - Need to update
Simple IO Scheduler - Not enabled - Need to update
OC GPU
Increase bandwidth
Added Governors
LagFree
Lazy
0.3.1
Fix Bootloop
Default Governor - SavagedZen
0.3.0
Added Governors (Still Experimenting, may experience bootloop or random reboot)
SmartassV2
InteractiveX
LagFree
0.2.0
New Updater Script
Merged Latest Changes from DevilToast repo
0.1.3
Reworked Updater Script
0.1.2
Updated Updater Script
0.1.0
Added Governors
BadAss
SavagedZen
USB Fast Charge
/sys/kernel/fast_charge/force_fast_charge == 1 to enable this feature // 0 to disable this feature (default)
from your pc:
adb shell
echo 1 > /sys/kernel/fast_charge/force_fast_charge
exit
from a terminal app on your device:
echo 1 > /sys/kernel/fast_charge/force_fast_charge
or to create a script:
just add echo 1 > /sys/kernel/fast_charge/force_fast_charge to the script
Check out Chad's app that let's you control fast charge.
https://play.google.com/store/apps/details?id=com.incredicontrol
Sweep2Wake
http://www.youtube.com/watch?v=jri2BMQHHrs
echo 0 > /sys/android_touch/sweep2wake
This will disable the sweep2wake.
Other options are.
0 for disabled.
1 for enabled.
2 for enabled with backlight.
cm9 - Working great
Sense 3.6 - takes screen shot when swiping to sleep
Sense 4 - takes screen shot when swiping to sleep
Miui Sense - Doesn't work great
Configurations:
Start button -> /sys/android_touch/sweep2wake_startbutton -> HOME, MENU, BACK
End button -> /sys/android_touch/sweep2wake_endbutton -> SEARCH, BACK, MENU
If u want ur s2w start from MENU button then
echo MENU > /sys/android_touch/sweep2wake_startbutton
and s2w end at SEARCH button then
echo SEARCH > /sys/android_touch/sweep2wake_endbutton
CPU OC
Not all phones can handle 1.9! You may experience reboots if set too high, just lower until no more reboots, every phone is different...
Over clocking the CPU may drain the battery faster than if you were are at stock clock speed.
Underclock for better battery life...
Battery / Performance build.prop edits
ro.ril.disable.power.collapse=1
pm.sleep_mode=1
debug.performance.tuning=1
debug.composition.type=hw
debug.sf.hw=1
persist.android.strictmode=0
persist.sys.use_dithering=1
persist.sys.ui.hw=true
persist.sys.purgeable_assets=1
ro.com.google.networklocation=0
ro.kernel.android.checkjni=0
ro.config.nocheckin=1
ro.vold.umsdirtyratio=20
dalvik.vm.checkjni=false
dalvik.vm.execution-mode=int:jit
video.accelerate.hw=1
windowsmgr.max_events_per_sec=240
profiler.force_disable_err_rpt=1
profiler.force_disable_ulog=1
Governor Info
Look here for governor tweaks
BadAss Governor
Badass removes all of this "fast peaking" to the max frequency. On a typical system the cpu won't go above 918Mhz and therefore stay cool and will use less power. To trigger a frequency increase, the system must run a bit @ 918Mhz with high load, then the frequency is bumped to 1188Mhz. If that is still not enough the governor gives you full throttle. (this transition should not take longer than 1-2 seconds, depending on the load your system is experiencing)
Badass will also take the gpu load into consideration. If the gpu is moderately busy it will bypass the above check and clock the cpu with 1188Mhz. If the gpu is crushed under load, badass will lift the restrictions to the cpu.
Lagfree
Lagfree is similar to ondemand. Main difference is it's optimization to become more battery friendly. Frequency is gracefully decreased and increased, unlike ondemand which jumps to 100% too often. Lagfree does not skip any frequency step while scaling up or down. Remember that if there's a requirement for sudden burst of power, lagfree can not satisfy that since it has to raise cpu through each higher frequency step from current. Some users report that video playback using lagfree stutters a little.
SmartassV2
Version 2 of the original smartass governor from Erasmux. Another favorite for many. The governor aims for an "ideal frequency", and ramp up more aggressively towards this freq and less aggressive after. It uses different ideal frequencies for screen on and screen off, namely awake_ideal_freq and sleep_ideal_freq. This governor scales down CPU very fast (to hit sleep_ideal_freq soon) while screen is off and scales up rapidly to awake_ideal_freq (500 mhz for GS2 by default) when screen is on. There's no upper limit for frequency while screen is off (unlike Smartass). So the entire frequency range is available for the governor to use during screen-on and screen-off state. The motto of this governor is a balance between performance and battery.
I/O Scheduler Info
Noop
Inserts all the incoming I/O requests to a First In First Out queue and implements request merging. Best used with storage devices that does not depend on mechanical movement to access data (yes, like our flash drives). Advantage here is that flash drives does not require reordering of multiple I/O requests unlike in normal hard drives.
Advantages:
Serves I/O requests with least number of cpu cycles. (Battery friendly?)
Best for flash drives since there is no seeking penalty.
Good throughput on db systems.
Disadvantages:
Reduction in number of cpu cycles used is proportional to drop in performance.
Deadline
Goal is to minimize I/O latency or starvation of a request. The same is achieved by round robin policy to be fair among multiple I/O requests. Five queues are aggressively used to reorder incoming requests.
Advantages:
Nearly a real time scheduler.
Excels in reducing latency of any given single I/O.
Best scheduler for database access and queries.
Bandwidth requirement of a process - what percentage of CPU it needs, is easily calculated.
Like noop, a good scheduler for solid state/flash drives.
Disadvantages:
When system is overloaded, set of processes that may miss deadline is largely unpredictable.
CFQ
Completely Fair Queuing scheduler maintains a scalable per-process I/O queue and attempts to distribute the available I/O bandwidth equally among all I/O requests. Each per-process queue contains synchronous requests from processes. Time slice allocated for each queue depends on the priority of the 'parent' process. V2 of CFQ has some fixes which solves process' i/o starvation and some small backward seeks in the hope of improving responsiveness.
Advantages:
Considered to deliver a balanced i/o performance.
Easiest to tune.
Excels on multiprocessor systems.
Best database system performance after deadline.
Disadvantages:
Some users report media scanning takes longest to complete using CFQ. This could be because of the property that since the bandwidth is equally distributed to all i/o operations during boot-up, media scanning is not given any special priority.
Jitter (worst-case-delay) exhibited can sometimes be high, because of the number of tasks competing for the disk.
BFQ
Instead of time slices allocation by CFQ, BFQ assigns budgets. Disk is granted to an active process until it's budget (number of sectors) expires. BFQ assigns high budgets to non-read tasks. Budget assigned to a process varies over time as a function of it's behavior.
Advantages:
Believed to be very good for usb data transfer rate.
Believed to be the best scheduler for HD video recording and video streaming. (because of less jitter as compared to CFQ and others)
Considered an accurate i/o scheduler.
Achieves about 30% more throughput than CFQ on most workloads.
Disadvantages:
Not the best scheduler for benchmarking.
Higher budget assigned to a process can affect interactivity and increased latency.
SIO
Simple I/O scheduler aims to keep minimum overhead to achieve low latency to serve I/O requests. No priority quesues concepts, but only basic merging. Sio is a mix between noop & deadline. No reordering or sorting of requests.
Advantages:
Simple, so reliable.
Minimized starvation of requests.
Disadvantages:
Slow random-read speeds on flash drives, compared to other schedulers.
Sequential-read speeds on flash drives also not so good.
V(R)
Unlike other schedulers, synchronous and asynchronous requests are not treated separately, instead a deadline is imposed for fairness. The next request to be served is based on it's distance from last request.
Advantages:
May be best for benchmarking because at the peak of it's 'form' VR performs best.
Disadvantages:
Performance fluctuation results in below-average performance at times.
Least reliable/most unstable.
Can you add 2WCR to this kernel?
Also fast charge...
Also is this based off the toast wimax kernel or agrabren's 3.0 kernel with camera working?
Keep up the good work.
Yea I'll try. Been meaning to add fast charge not sure about 2wcr though, ill check it out!
It is based off 3.0.8 Kernel with camera. As soon as they add Wimax to cm9 for shooter I will add it to this. I will try and keep up with Agrabren's updates as quick as possible..
Will cause Aokp to reboot if camera is selected.
Pretty sure that is rom side, however. Just a heads up to those users
Sent from my EVO3D using xda app-developers app
You must adhere to the GPL as well as XDA rules and post source code for the kernel. Not putting any work down, just stating rules and law.
私のEVO 3Dから送信される。
I was waiting for someone to start all that.
Please, just post concerns to mods. Keep potential drama behind the scenes. Thanks
Sent from my PG86100 using xda app-developers app
noice! sub'd to thread. Good to see some kernel dev'n going on here. I will def try this out after work.
THERE WILL BE NO TROLLING, END OF STORY.
/with love from the mod staff
Links back up and source has been linked in signature but added another link in OP.
Thanks iiDuce!!
Thanks PapaSmurf!!
MikeC84 said:
Links back up and source has been linked in signature but added another link in OP.
Thanks PapaSmurf!!
Click to expand...
Click to collapse
Best of luck and I want to publicly thank you for showing a very high maturity level in dealing with this.
XDA Moderator
Does this kernel fix the boot loop problem a lot of people were having, including myself, with agrabens cm9? I have never been able to get it to fully boot up. Every kernel based off of his didn't fix it either.
Sent from my PG86100 using xda app-developers app
Does this kernel have deep sleep and such which will improve battery life on CM9?
Sent from my PG86100 using Tapatalk 2
Guys this is based off DevilToast kernel which is currently in cm9. So any thing wrong with that will be the same here, sorry. I am new to all this so eventually I will be going deeper into the kernel but for now the simple stuff first..
Besides I think Agrabren added deep sleep a while ago but not quite working correctly because I notice my phone is not sleeping well wither. Could be a rom issue as well too idk...
I have been making some buildprop edits on my phone to see if i can get it sleeping better too, we'll see.
EDIT:
Something kinda obvious I already see is it scans for wifi every 15 seconds, changed mine to every 500 seconds...
MikeC84 said:
Guys this is based off DevilToast kernel which is currently in cm9. So any thing wrong with that will be the same here, sorry. I am new to all this so eventually I will be going deeper into the kernel but for now the simple stuff first..
Besides I think Agrabren added deep sleep a while ago but not quite working correctly because I notice my phone is not sleeping well wither. Could be a rom issue as well too idk...
I have been making some buildprop edits on my phone to see if i can get it sleeping better too, we'll see.
EDIT:
Something kinda obvious I already see is it scans for wifi every 15 seconds, changed mine to every 500 seconds...
Click to expand...
Click to collapse
500? That's like every eight minutes...
I have been running this kernel since 4am. No random reboots, no boot loops no over heating. It is smooth and so far battery has been really nice. Of course, it needs more time to settle for a real reading on battery stats. Using Agrabrens Aosp rom. Waiting for Aokp here to be corrected to enable camera to work. Personal preference for that rom
Sent from my PG86100 using xda app-developers app
Nice job wanna build a kernel for me so i can make jeellly bean bootuo bro
Hit the thanks button
e3d4eva said:
Nice job wanna build a kernel for me so i can make jeellly bean bootuo bro
Hit the thanks button
Click to expand...
Click to collapse
I would but still learning this stuff. I could probably build the kernel, like anyone else easily can, it the necessary bits and pieces our 3D needs I can't do.
You would want to ask Agrabren for something like that.
ch1naski said:
500? That's like every eight minutes...
Click to expand...
Click to collapse
Yea I'm not sure but I think it still scans even when its connected to wifi. Why scan so often if you are already connected? If I want to scan real quick I'll go to settings and hit scan....
awesome - loaded up for me
all these new governors - im gonna try out wheatly vs lagfree
anyone have good results with our portal 2 guest star?

[KERNEL][RAY][JB 4.1 & 4.2] LuPuS-JBv9 [LINARO 4.7.3][UPDATED 08-06-13]

LuPuS JellyBean Kernel
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
This kernel can be used on any JB CM BASED JB 4.1 or 4.2
Disclaimer
Code:
[COLOR="DarkOrchid"]#include[/COLOR] [COLOR="Magenta"][/COLOR]
[COLOR="Blue"]/*
* Your warranty is now void.. LOL I guess you knew it already.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, you getting dumped or you getting fired because your phone
* bootloops and alarm does not go off. Please do some research if you have any
* concerns about features included in my kernel before using it! YOU and only
* YOU are choosing to make these modifications.
*/
[COLOR="Magenta"]#ifdef[/COLOR]
You have a [COLOR="DarkGreen"]question[/COLOR] post it in the [COLOR="DarkRed"]thread[/COLOR],
Instead of [COLOR="DarkGreen"]Pm'ing me[/COLOR], as other users may
experience you [COLOR="DarkRed"]problems[/COLOR]
[COLOR="Magenta"]#endif[/COLOR][/COLOR]
What Works --
Wifi - (flash modules)
Bluetooth
Everything Else that works on FXP and any other JB kernel
What doesn't work --
Anything that doesn't work on FXP and any other JB kernel
Added Io-schedulers --
- Noop
- Anticipatory
- Deadline
- CFQ
- BFQ
- SIO
- ZEN
Added Governors --
- lagfree
- brazillianwax
- smoothass
- scary
- savagedzen
- smartass
- smartassv2
- smartassH3
- interactivex
- minmax
- + the 5or6 that are there with FXP
Lulzactive - Thanks to Tegrak
Based on Interactive and Smartass. When workload is greater than or equal to 60%, the governor scales up
CPU to next higher step. When workload is less than 60%, governor scales down CPU to next lower step.
When screen is off, frequency is locked to global scaling minimum frequency
Virtuous
Virtuous is a modded smartassV2 which gives even more battery time then smartassV2
Intellidemand - Thanks to faux123
This is an intelligent ondemand that enters browsing mode to limit max frequency when GPU is idling,
and (exits browsing mode) behaves like ondemand when GPU is busy; to deliver performance for gaming and such.
Intellidemand does not jump to highest frequency when screen is off.
Lazy - Thanks to Ezekeel
The Idea here is to eliminate any instabilities caused by fast frequency switching by ondemand.
Lazy governor polls more often than ondemand, but changes frequency only after completing min_time_state
on a step overriding sampling interval.
Lazy also has a screenoff_maxfreq parameter which when enabled will cause the governor to always
select the maximum frequency while the screen is off.
-Ondemandx:
Basically an ondemand with suspend/wake profiles. This governor is supposed to be a battery friendly ondemand. When screen is off, max frequency is capped at 500 mhz. Even though ondemand is the default governor in many kernel and is considered safe/stable, the support for ondemand/ondemandX depends on CPU capability to do fast frequency switching which are very low latency frequency transitions. I have read somewhere that the performance of ondemand/ondemandx were significantly varying for different i/o schedulers. This is not true for most of the other governors. I personally feel ondemand/ondemandx goes best with SIO I/O scheduler.
-Lionheart:
Is a conservative-based governor. The tunables (such as the thresholds and sampling rate) were changed so the governor behaves more like the performance one, at the cost of battery as the scaling is very aggressive.
To 'experience' Lionheart using conservative, try these tweaks:
sampling_rate:10000 or 20000 or 50000, whichever you feel is safer. (transition latency of the CPU is something below 10ms/10,000uS hence using 10,000 might not be safe).
up_threshold:60
down_threshold:30
freq_step:5
Lionheart goes well with deadline i/o scheduler. When it comes to smoothness (not considering battery drain), a tuned conservative delivers more as compared to a tuned ondemand.
BadAss Governor:
Badass removes all of this "fast peaking" to the max frequency. Badass will also take the gpu load into consideration. If the gpu is moderately busy it will bypass the above check and clock the cpu with 1024Mhz. If the gpu is crushed under load, badass will lift the restrictions to the cpu.
Superbad -
A "superbad" super smooth rendition of a highly optimized "smartass" governor!
Darkside -
A "slightly more agressive smart" optimized governor!
Intellidemand2 - Thanks to faux123 and CosmicDan for mods
Uses d_bus ramping, quick and smooth and performance based, do not complain about battery drain on this
governor but it will make everything feel more like project butter
What else-----
-SLQB - (SLAB allocator with Queue)
This memory allocator is designed for small number of CPUs system (such as desktop or smart phone devices). This allocator is design to be simple and it is optimized for using order-0 pages as much as possible (order-0 pages are the simplest therefore quickest type of memory in a Linux system to allocate).
- Alot of changes to code to try improve smoothness ect
- Wifi signal lock on should now be quicker / stronger then before
--When LEDS change green, pink then blue press volume down to enter CWM Recovery
I would like to say a big thanks to -
slz.kiev - for amazing PACman ROM & Testing
FXP - Sources
Cyanogenmod - Souces
DooMLoRD - Everything he's done for XPeria
wechy77 - For helping me test
tempest918 - For the New Logo
xeozus
NobodyAtAll
Faux123
Erasmus
Leedroid
Phil3759
CTCaer
Anyone missing please PM me
Github Sources -b jellybean
https://github.com/garwedgess/semc-kernel-msm7x30
CWM source -- https://github.com/garwedgess/android_bootable_recovery -b lupus-cwm
LuPuS MENU
You can run lupus menu from terminal or scriptmanager or similar, you must run as root or script will exit with a message
in terminal
Code:
su
lupus
* information is in lupus menu
1/ CIFS Menu *
Enable
Disable
2/ zRam Menu *
Enable
Disable
Set zRam size ( default is 60)
3/ Frandom Menu *
Enable
Disable
4/ USB OTG *
Enable
Disable
5/ Clean and Remove tweaks
Remove init.d's
6/ Tweak Menu
Note all tweaks are preset from here and option to set as init.d's
Clean all temp files
SQLITE optimizations
LMK Optimizations
Network optimizations
Defend against ARP spoofing
Remove android logger
SDcard speed tweak
Flag blocks as non-rotational
7/ Performance Menu
Note all options are se by user input from here and option to set as init.d's
Set CPU frequencies
Set Governor
Set IO-Scheduler
Voltage Control
VM tweaks (explained below)
VM Tweaks
dirty ratio and dirty background ratio 1 & 2
This controls how often the kernel writes data to "disk" (in our case the internal microSD system card, not the removable microSD card). When your apps write data to disk, Linux actually doesn't write the data out to the disk right away, it actually writes the stuff to system memory and the kernel handles when and how the data is actually going to be flushed to the disk. These values represent a percentage, the higher the percentage, the longer it waits to flush, the lower the percentage, the more often flushes will occur. Now remember, we are dealing with solid state storage, not the traditional disk platter and spindle. So we are actually able to delay flushes a little longer with solid state versus a traditional hard drive disk.
dirty_expire_centisecs
How old "dirty" data should be before the kernel considers it old enough to be written to disk. It is expressed in 100ths of a second.
dirty_writeback_centisecs
This is the interval of when the writeback daemons periodically wake up and write "old" data out to disk. It is expressed in 100ths of a second.
min free kbytes
This is used to force the Linux VM to keep a minimum number of kilobytes free. The VM uses this number to compute a pages_min value for each lowmem zone in the system. Each lowmem zone gets a number of reserved free pages based proportionally on its size. Default is 2048kb.
overcommit_memory
This controls overcommit of system memory, possibly allowing processes to allocate (but not use) more memory than is actually available.
0 - Heuristic overcommit handling. Obvious overcommits of address space are refused. Used for a typical system. It ensures a seriously wild allocation fails while allowing overcommit to reduce swap usage. root is allowed to allocate slighly more memory in this mode. This is the default.
1 - Always overcommit. Appropriate for some scientific applications.
2 - Don't overcommit. The total address space commit for the system is not permitted to exceed swap plus a configurable percentage (default is 50) of physical RAM. Depending on the percentage you use, in most situations this means a process will not be killed while attempting to use already-allocated memory but will receive errors on memory allocation as appropriate.
Swappiness
A property for the Linux kernel that changes the balance between swapping out runtime memory, as opposed to dropping pages from the system page cache. Swappiness can be set to values between 0 and 100 inclusive. A low value means the kernel will try to avoid swapping as much as possible where a higher value instead will make the kernel aggressively try to use swap space.
VFS Cache Pressure
File system cache (dentry/inode) is really more important than the block cache above in dirty ratio and dirty background ratio, so we really want the kernel to use up much more of the RAM for file system cache, this will increas the performance of the system without sacrificing performance at the application level. The default value is 100, as a percentage, and what you want to do is lower the value to tell the kernel to favor the file system cache and not drop them aggressively.
If you like my work please consider buying me a beer or something else
by clicking the DONATE ME button, of course it isn't needed but greatly appreciated and keeps me motivated.
Changelog ...............
Code:
[hide]
[B][v1] [/B]
- Initial release
- 25 Governors
- 6 Io-Schedulers
- SLQB memory allocator
- Built with linaro 4.6 toolchains
- Swap
- Zram enabled
- Custom voltage control supported
- Supports USB OTG
- Supports ext2, 3 & 4
[B][U]v2[/U][/B]
- Couple of extra tweaks - improvements to battery
- Fixed Wifi issues
- Reverted my disabling of disabling sched_feautures if you get that :P
- Added USB OTG modules needed for USB OTG ( find attached zip at the end of the post)
- Added stable freq-table for higher OCing upto 2ghz
[B][U]v3[/U][/B]
- Completely scrapped previous sources and started fresh
- CWM fixed thanks @ Scritch007
- Built with Linaro 4.7
- Optimized for Linaro
- Thumbee
- Reverted to 1.6 max OC
- Lzo patched
- Use Google Snappy Compression / Decompression
- Added TINY RCU
- Fixed Battery drain ( Tester lost 0.2% overnigh with wifi on ) :victory:
- Uses uncompressed Image {why .img size is bigger)
- Custom improvements for overall smoother performance
[B][U]v4[/U][/B]
- built with latest linaro 4.7.3 (02-01-2013) - Thanks @ ChainFirex
- Added memcopy
- Added compaction
- Lowered vfs_cache_pressure
- LMK (lowmemorykiller) optimizations
- Improved CIFS support
- Enabled USB tether
- Disabled gentle_fair_sleepers
- Updated video drivers
- Clean up on wifi config
- Back-ported binder changes
- TWRP recovery - thanks @ championswimmer & TWRP team
[B][U]v5[/U][/B]
- Built with Linaro 4.7.3 (02-01-2013)
- Free'd RAM (disabled 720p) now 381mb - Thanks at Paul678
- Makefile optimisations (snapdragon & neon) - Thanks at Paul678
- Tweaked permormance on interactive governor - Thanks at Paul678
- Tweaked SIO io sched - Thanks at Paul678
- Free'd some RAM from loggers
- Reduce swappiness
- Fix PageHead
- Fix binder. use of uninitialized variable.
- Fix kernel/net Memory Leaks
- Eliminate kstrdup memory leak
- ipv4: force_igmp_version ignored when a IGMPv3 query received
- Fix Entropy Depleting (no more depleting) - Thanks @ Kees Cook
- enable ipsec tunnel support in kernel (Latest FXP Change)
- ARM7 optimsations + more in config
- TWRP v2.4 - Thanks @ Championswimmer, TWRP Team
- Thanks [user=4402161]@Wechy77[/user] for LuPuS TWRP theme
[B]v6[/B]
- Supports both 4.1 & 4.2 JB
- New IIO Scheduler ZEN thanks [user=2632235]@bbedward[/user]
- New Governor smartassH3 thanks [user=3057569]@Hero[/user]
- Tweaked Deadline IO scheduler
- Tweaked smartassv2
- Frandom
- SFB Net scheduler
- OC up to 1804.8MHz
- Logger backported from CAF
- Free RAM from logger
- LMK updated and optimized + various LMK tweaks
- Various ARM & RAM changes
- TinyRCU optimizations
- Optimized crc32 lib
- various VM changes
- Improved cleancache
- Undervolt LCD display, touch sensor proximity sensor & Wi-Fi thanks @ M66B
- Entropy tweaks
- Try fix for CRT animation [user=4266283]@paul678[/user]
- TWRP & CWM
- LuPuS Menu
- Auto Loading wifi
- All modules and init.d's included No need to flash anything after kernel
Plus alot more changes see [URL="https://github.com/garwedgess/semc-kernel-msm7x30/commits/jellybean"] for full list of credits and patches used[/URL]
[B]v6[/B]
- Latest changes to ALS and Button Backlight -- Thanks @ FXP
- Lowered OC to 1612.8Mhz
- Remove ALS and Button Backlight option from LuPuS Menu (no longer needed)
- Random reboots should be fixed ( for those who where having such issues )
[B]v7[/B]
- Fixed 3D from hanging under high intensity
- Fix pmem for HDPI Mike NG] (no more reboots??)
- CWM Recovery = VOLUME DOWN
- TWRP Recovery = VOLUME UP
- Clean up on LuPuS Menu
- Better wifi check
- KEY RESET ( Menu and POWER)
- Tuned Smartassv3 and SmartassH3 [user=2799345]@M66B[/user]
[B]v8[/B]
- Fixed reboot to recovery on 4.2 (not sure if i broke it on 4.1)
---- Custom CWM
- Clean-up of menu
- Added own wipe options menu -- with extra options
- Aroma File Manager from CWM --- Must have aroma ([COLOR=Red]aromafm.zip) placed on root of sdcard[/COLOR])
- Multi zip installer
- Reboot options - Power off re-added under this menu
- Pointless but people keep asking me for it so re-added wipe battery stats also.
- LuPuS themed...
- Fixed "dancing android"
[/hide]
[B]v9[/B]
- Added option to enable Quick Key Reset (enable / disable via LuPuS Menu)
- Tuned Governors
* superbad
* lionheart
* virtuous
* darkside
* conservative
* smartassH3
- Really use google snappy zRam (improves zRam)
- Added zCache
- Removed persistent RAM
- Removed some more kernel debugging
- uninterruptible sleep
- Update SIO & CFQ
- Added Ultra-KSM
- Removed optimized AES & SHA1 routines
- Updated TWRP to 2.4.4
*Fixed Mount USB Storage in TWRP
- Updated CWM to latest Official CWM source
*Removed reboot options
*Re-added power off and reboot system now to main menu
- Improved wifi-loading scripts
- Clean up of lupus menu
- Fixed root issue on some devices
- Reworked kernel logs (can be found in /data/local/tmp)
- Boot.d - If phone is taking a long time to start move suspicious init.d scripts to /system/etc/boot.d
They will be run in background and won't affect boot time.
LuPuS-Jellybean-DOWNLOADS
If you like my work please consider buying me a beer or something else
by clicking the DONATE ME button, of course it isn't needed but greatly appreciated and keeps me motivated.
480p
LuPuS_urushi_jBv9-ram.img
md5 = 3ff24d7e343beb483aa81d7bcfa1b5f5
[/LIST]
720p
LuPuS_urushi_jBv9.1-full.img
md5 = 1effb6e2ba80afbb55d1bd9d30a426fd
[/LIST]
Mirrors -- all LuPuS Kernels can be found here
www.goo.im/devs/wedgess
Wifi is built in to kernels ramdisk NO MODULES NEEDED
If your MD5 doesn't match re-download
Everithing works fine so far. See benchmark scores.
Sent from my Xperia Ray using xda premium
Wow...nice one! Really responsive! Just wanted to point out that in addition to all the features listed in the OP, that you can undervolt
with this kernel....didn't see it as a feature in the OP...
Thanks!
justmpm said:
Wow...nice one! Really responsive! Just wanted to point out that in addition to all the features listed in the OP, that you can undervolt
with this kernel....didn't see it as a feature in the OP...
Thanks!
Click to expand...
Click to collapse
Lol ye i forgot to add it in to op thanks for reminding me.
Edit- Put of couple of more things into 3rd post, anymore I can remeber will be added
Sent from my GT-I9300 On Official JB
wedgess said:
Lol ye i forgot to add it in to op thanks for reminding me.
Edit- Put of couple of more things into 3rd post, anymore I can remeber will be added
Sent from my GT-I9300 On Official JB
Click to expand...
Click to collapse
very smooth, but has a problem the wifi seems works not stablely, sometimes cause reboot and sometimes cannot been disconnected.
feelow said:
very smooth, but has a problem the wifi seems works not stablely, sometimes cause reboot and sometimes cannot been disconnected.
Click to expand...
Click to collapse
Did you reboot? I have no problem with wifi. Only at first boot I had this problems.
Sent from my Xperia Ray using xda premium
testing...
(thx for your effort sofar :good
1st impression: lower scores on Antatu than with standard PAC-kernel.
i'd like to have a better battery life, so now testing "virtuous/sio, 806/134".
or are there better suggestions?
(like to keep a snappy Ray )
"Custom voltage control supported" not working. The PAC romcontrol says: not supported by your kernel
Wechy77 said:
"Custom voltage control supported" not working. The PAC romcontrol says: not supported by your kernel
Click to expand...
Click to collapse
I don't think that part of RC has been activated....it also doesn't work with the kernel from champilnswimmsr's aokp build. I am using incredicontrol from the play store...but a lot of other apps will let you change the volts.
justmpm said:
I don't think that part of RC has been activated....it also doesn't work with the kernel from champilnswimmsr's aokp build. I am using incredicontrol from the play store...but a lot of other apps will let you change the volts.
Click to expand...
Click to collapse
is there a list of recommended (or safe) voltage settings for the Ray?
Yes i know in rom control it still says not supported not sure why but u can always use SetXperia app from playstore to change it
And poster who asked about safe settings. Try down step -25mv at a time and see what is stable for you. If u get reboots then its obviously not stable.
Or else safest way if your wortied then dont undervolt at all. What maybe stable for someone might not be stable for you
Sent from my GT-I9300 On Official JB
I tryed thi kernel for my CM10 rom. And it seems buggy. Antutu points is lower than on stock kernel, and the perfomance is bad too, including games and UI.
_TREM_ said:
I tryed thi kernel for my CM10 rom. And it seems buggy. Antutu points is lower than on stock kernel, and the perfomance is bad too, including games and UI.
Click to expand...
Click to collapse
lol ok first off this is not stock kernel so you can't compare it to STOCK,Ssecondly i'm not sure what governors, io scheds and frequencies you are using. People who have tested have reported it being smooth and performance being greater not worse. Also I obviously use my own kernels on my own device and my experience is the complete opposite of yours. You sure it not 'your' CM10 rom. Buggy!! how? please do elaborate.
Anyone else confirm what the above pster has said ??
Using it now for some hours with Virtous and SIO and looks very promising. Speed of ROM is for me the same and I dont play games. But Battery seems to be great! I left the screen off a lot and have like 95% deep sleep, so pretty well battery ;D I use FXP142.
EDIT: just tested the game "granny smith'. Runs good! But I didnt test with another kernel.
[GER]Roxxor said:
Using it now for some hours with Virtous and SIO and looks very promising. Speed of ROM is for me the same and I dont play games. But Battery seems to be great! I left the screen off a lot and have like 95% deep sleep, so pretty well battery ;D I use FXP142.
EDIT: just tested the game "granny smith'. Runs good! But I didnt test with another kernel.
Click to expand...
Click to collapse
Ye virtuous is supposed to be more battery friendly then smartassv2
Intellidemand2 would be best performanced based but not the best on battery.
Sent from my GT-I9300 On Official JB
Thanks for the great kernel, really liking the Superbad governor.
I left my ray on during the night, to see what the battery would do...
(i mean screen off, but wifi+3g on)
from 100 to 74% in 9 hours.
8:40 deep sleep (94%)
806/134 virtuous/sio
I cannot compare btw, usually i charge at nighttime, but usage seems quite high?
was hoping for about 90% battery left or something, but like i said, not tested with other kernels.
I think I caught a "wifi" bug. Yesterday the wifi cut out and wouldn't turn back on...after rebooting everything was fine for a few hours and then wifi stopped working. I am not sure if it is really wifi or something else, because if I go into settings I see that wifi is on, I can turn it off but it won't turn back on...if I leave settings and pull down the status bar it show wifi as "on"...when I go back into settings it shows wifi as "on"...and no networks are shown that can be connected. You can do this over and over and every time you reenter settings it says wifi is on. I think it also causes a wakelock from wifestatemanager.
I went into recovery and formatted system and reinstalled PACman v15...a few hours later the problem returned. I flashed in a different kernel and it seemed OK....now I have your kernel on ChampionSwimmer's AOKP ROM and I am waiting to see if the bug returns.
I am not sure if there is something specific I do that activates the bug, so I don't have a logcat of it happening. I attached a logcat of me trying to turn on and off wifi in settings. I also attached the battery stats report from Better Battery Stats in case the wakelock is informative....

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

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
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
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.
Annnndd 3!
Great, downloading for test, my device is i variant but should works fine, any recommend settings?
matheus_sc said:
Great, downloading for test, my device is i variant but should works fine, any recommend settings?
Click to expand...
Click to collapse
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 hope you like it! Let me know if you have any issues!
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"
interestingkid said:
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"
Click to expand...
Click to collapse
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 I'll probably remove it in r2
Sent from my SM-G920T using XDA Free mobile app
Xileforce said:
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 I'll probably remove it in r2
Sent from my SM-G920T using XDA Free mobile app
Click to expand...
Click to collapse
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
interestingkid said:
ok, that's fine, because this is running well for now!
Click to expand...
Click to collapse
Glad to hear that! There's definitely still room for improvement.
Sent from my SM-G920T using XDA Free mobile app
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?
interestingkid said:
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
Click to expand...
Click to collapse
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 said:
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
Click to expand...
Click to collapse
kk will do that
matheus_sc said:
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?
Click to expand...
Click to collapse
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
interestingkid said:
kk will do that
Click to expand...
Click to collapse
Hope it works! I'm not sure what in Kernel is causing it, and its gonna be a pain to troubleshoot but I can probably figure it out tomorrow.....I hope....
Sent from my SM-G920T using XDA Free mobile app
This kernel is very fast and good deep sleep 94% all perfect on my G925F
Gesendet von meinem SM-G925F mit Tapatalk
cobra11111 said:
This kernel is very fast and good deep sleep 94% all perfect on my G925F
Gesendet von meinem SM-G925F mit Tapatalk
Click to expand...
Click to collapse
That's awesome to hear! Hope it continues to work well for you.
Sent from my SM-G920T using XDA Free mobile app
Can to future implement smartassv2 or KT governor?
Gesendet von meinem SM-G925F mit Tapatalk
cobra11111 said:
Can to future implement smartassv2 or KT governor?
Gesendet von meinem SM-G925F mit Tapatalk
Click to expand...
Click to collapse
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
Xileforce said:
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
Click to expand...
Click to collapse
+1 for smartassV2 governor and maybe zzmove as an option
No others kernel got those for S6

[KERNEL] [v0.14] [MM 6.0.0 Stock ROM] Frankenclark

Introduction
This is a kernel for XT1572/XT1575 built from stock sources (marshmallow-6.0.0-release branch) with cherry picks from other kernels and some ports/mods done by me. It started as a personal build tailored to my preferences but just thought I'd share in case somebody might find it useful. My main goal is building the smoothest kernel I can get so performance is top priority.
This kernel is for stock ROM MPH24.49-18*
Disclaimer
Although I have experience with Linux kernels on desktops and servers this is my first Android kernel. I've been running this kernel on my XT1572 for a few days and seems pretty stable but that doesn't mean it's risk free. In fact I wouldn't dare to install it if you don't have a proper backup and some basic skills to deal with unexpected situations.
Features
Aroma Installer
CPU profile scripts (see this)
Color control (KCAL)
Frandom
Updated to kernel version 3.10.101
Overclocking (a53: 1536MHz a57:2016MHz)
Underclocking (302MHz)
Additional CPU governors (ElementalX, Intelliactive, Lionheart, BioShock, BluActive, Wheatley, InteractiveX/Interactive, Impulse, Zzmoove)
Additional I/O schedulers (SIO, FIOPS, Zen, BFQ, SIOPLUS)
Bricked Hotplug
Updated ZRAM driver
Updated Lowmemorykill driver
Basic init.d support
KSM and UKSM
Voltage readings
Fsync on/off
Touchboost on/off
Vibration control
KEXEC Hardboot (MultiROM support)
Patched cdrom code (DriveDroid support)
DoubleTap2Wake/Sweep2Wake/Sweep2Sleep (EXPERIMENTAL)
Power efficient workqueues
Support for additional FS: NTFS, NFS, CIFS
Additional Xpad drivers (read this)
Device as USB trackpad/keyboard driver (read this)
WiFi module optimizations
Many minor optimizations
Optimization flags
UBER Toolchain 4.9
Installation instructions
Download ZIP and flash from TWRP/Flashify. Read the following notes carefully before flashing.
Important notes:
This kernel is still experimental, make a proper backup first
You need to be rooted
DO NOT play with DT2W/S2W before reading the release notes and the update
In case you want to tune some parameters (ie: CPU frecuencies) I recommend you install EX Kernel Manager, Kernel Adiutor or Kernel Adiutor-Mod.
If you're using Kernel Adiutor to control vibration or TCP congestion read this.
Questions? Read the FAQ before posting.
Download
Latest version is v0.14 (see release notes)
https://www.androidfilehost.com/?w=files&flid=49225​
Donations
Although quite a deal of the important work has been done by the developers mentioned in the Credits section I spend many hours working on this. If you feel like helping me out I'd appreciate some tiny donations to cover some minor expenses.
​Thanks to all of you who have donated, it's very much appreciated.​
Profiles
One of the FAQ in most kernel related threads is "What are the best settings for .....?". This is the 10 million question since the usage pattern can be very different for each user. However, I understand less experienced users will appreciate some hints in this department, so that's why I'm posting some basic settings you can use as a starting point.
It's your job to further tune them to suit your needs. You should be able to modify these settings with whatever Kernel Control App you like the best, although not all settings are available in every app, in such a case tune those you can. The list is not complete (just the most importante settings) and is loosely based on Kernel Adiutor arrangement.
Please, keep in mind these are subjective values (based of personal preferences or popularity) and some people might like other settings for whatever reasons.
Performance Profile: Very smooth and responsive but average battery life
CPU
LITTLE Cluster
CPU Governor: bluactive
CPU Max Frequency: 1536MHz
CPU Min Frequency: 302MHz​BIG Cluster
CPU Governor: bluactive
CPU Max Frequency: 2016MHz
CPU Min Frequency: 302MHz
NOTE: If you get N/A or weird values when trying to change settings on BIG cores it means both have been hotunplugged. To work around this select "performance" governor, make your desired changes and then select you previous governor.​CPU Boost
Input Boost Frequency Core 1: 960MHz​
Hotplug
MSM MPDecision
Minimum CPU online: 2
Maximum CPU online: 6
Max Cores Screen Off: 2
Idle Frequency: 384MHz​
Thermal
Core Control: Off
VDD Restriction: Off
Temperature Throttle: On​
GPU
Max Frequency: 600MHz
Min Frequency: 180MHz
Govenor: cpufreq​
I/O
Scheduler: noop
Read-ahead: 1024KB​
Balanced Profile: Above average battery life with good performance on most situations
CPU
LITTLE Cluster
CPU Governor: interactive
CPU Max Frequency: 1440MHz
CPU Min Frequency: 302MHz​BIG Cluster
CPU Governor: interactive
CPU Max Frequency: 1632MHz
CPU Min Frequency: 302MHz
NOTE: If you get N/A or weird values when trying to change settings on BIG cores it means both have been hotunplugged. To work around this select "performance" governor, make your desired changes and then select you previous governor.​CPU Boost
Input Boost Frequency Core 1: 960MHz​
Hotplug
MSM MPDecision
Minimum CPU online: 2
Maximum CPU online: 5
Max Cores Screen Off: 2
Idle Frequency: 768MHz​
Thermal
Core Control: Off
VDD Restriction: Off
Temperature Throttle: On​
GPU
Max Frequency: 600MHz
Min Frequency: 180MHz
Govenor: msm-adreno-tz​
I/O
Scheduler: noop
Read-ahead: 1024KB​
Battery Profile: Good battery life at the expense of somewhat limited performance
CPU
LITTLE Cluster
CPU Governor: ondemand
CPU Max Frequency: 1440MHz
CPU Min Frequency: 302MHz​BIG Cluster
CPU Governor: ondemand
CPU Max Frequency: 1632MHz
CPU Min Frequency: 302MHz
NOTE: If you get N/A or weird values when trying to change settings on BIG cores it means both have been hotunplugged. To work around this select "performance" governor, make your desired changes and then select you previous governor.​CPU Boost
Input Boost Frequency Core 1: 960MHz​
Hotplug
MSM MPDecision
Minimum CPU online: 1
Maximum CPU online: 3
Max Cores Screen Off: 2
Idle Frequency: 960MHz​
Thermal
Core Control: Off
VDD Restriction: Off
Temperature Throttle: On​
GPU
Max Frequency: 450MHz
Min Frequency: 180MHz
Govenor: simple_ondemand​
I/O
Scheduler: noop
Read-ahead: 1024KB​
Thanks To/Credits
vadimtk
flar2
franciscofranco
nimrodsv
anarkia1976
savoca
myfluxi
AudioGod
osm0sis
nychitman1
jollaman999
imoseyon
showp1984
HashBang173
neobuddy89
rehpyc
Alcolawl
soniCron
Spasticdroid
XDA:DevDB Information
Frankenclark, Kernel for the Moto X Style (Pure)
Contributors
dirtyhank
Source Code: https://github.com/dirty-hank/frankenclark/
Kernel Special Features:
Version Information
Status: Beta
Current Beta Version: 0.14
Created 2016-01-10
Last Updated 2016-10-11
Changelog
v0.14 (2016-08-29)
Proper KCAL control (thanks to @Spasticdroid)
Updated xpad driver for compatibility with gamepads/controllers (thanks to @Spasticdroid)
Driver to use device as USB trackpad and keyboard (thanks to @Spasticdroid)
Misc minor updates (see github)
100Hz version uses stock compiler flags
v0.13 (2016-06-21)
Update to Linux Kernel 3.10.102
Misc minor updates (see github)
New start-up CPU governor profiles: bluactive, maddog and silverfish
v0.12 (2016-05-15)
Disable DT2W/S2W while phone call is in progress
New CPU governors: impulse, zzmoove
New and updated CPU profile scripts
Runtime CPU profile switcher script (see release notes)
Minor changes to Aroma installer
v0.11.1 (2016-05-01)
Aroma Installer update (see release notes)
v0.11 (2016-04-27)
Aroma Installer
Better camera focus
Less CPU usage from DT2W/S2W
Minor updates and bugfixes
v0.10 (2016-04-03)
Updated lowmemorykiller driver
BFQ and SIOPLUS I/O schedulers
Updated ZRAM driver (on by default)
User togglable WLAN wakelocks
Basic init.d support (see release notes)
Misc minor updates
v0.9 (2016-03-20)
Update to Linux Kernel 3.10.101
Bug fixes
Changes from Google update to N5X and N6P (see release notes)
v0.8 (2016-03-06)
Update to Linux Kernel 3.10.99
Power efficient workqueues
NTFS support
NFS and CIFS support (you'll probably need additional user space binaries)
v0.7.1 (2016-02-28)
Workaround for the dimmed screen upon unlock bug when DT2W/S2W is enabled
v0.7 (2016-02-21)
Hotplug thresholds tuned to keep BIG cores offline more often
KEXEC Hardboot (MultiROM support)
Patched cdrom code (full DriveDroid support)
DoubleTap2Wake/Sweep2Wake/Sweep2Sleep (HIGHLY EXPERIMENTAL, Read this)
v0.6 (2016-02-07)
Vibration control (non-haptic)
Relaxed CPU macros for better power usage
File hosting now on AndroidFileHost
v0.5.2 (2016-02-03)
Fixed USB and WiFi Tethering
Minor tweaks
v0.5.1 (2016-02-01)
Changes to installer
v0.5 (2016-01-31)
Update to Linux Kernel 3.10.95
InteractiveX governor (as patches to the interactive gov)
Bricked Hotplug
KSM and UKSM (disabled by default, use Kernel Adiutor to enable)
Many minor optimizations
WiFi module optimizations
Modules recompilation
Disabled core_ctl (due to broken module after some internal changes to kernel)
Voltage readings (any attempt to modify values is silently ignored)
v0.4.1 (2016-01-24)
Prevent msm_performance from messing with the user selected min/max CPU frequencies
v0.4 (2016-01-23)
New CPU governors (ElementalX, Intelliactive, Lionheart, BioShock, BluActive, Wheatley)
New I/O scheduler (Zen)
Default I/O scheduler set to noop with a read ahead of 1024kb
Fixed bug CVE-2016-0728
Minor optimizations
Introduce ZIP installer (Anykernel2)
v0.3 (2016-01-18)
Color control (KCAL)
frandom support
New optimization flags
ZRAM disabled by default
v0.2 (2016-01-14)
Updated to Linux kernel 3.10.94
Underclocking (302MHz)
v0.1 (2016-01-10)
First public version
FAQ
I get random reboots, what is happening?
This kernel overclocks both clusters by default (a53: 1536MHz a57:2016MHz) and although this is very safe for most devices some CPUs are in the lowest spot of the binning spectrum and can't handle O/C very well. In such a case use a kernel control app (see the OP for references) to limit the maximum CPU frequencies, play with them until you find stable values for your device.​
What are the best settings for battery life/performance/whatever?
That's hard to tell as every user is different. You can find some basic profiles in the OP you can use as a starting point. Notice the differences between then and build you own.​
Why do some BIG cluster settings display N/A?
Why can't I change some settings on the BIG cluster?
If you get N/A or weird values when trying to change settings on BIG cores it means both are offline ("hotunplugged"). To work around this select "performance" governor, make your desired changes and then select you previous governor. You can also disable hotplug, make the changes, and enable hotplug again.​
DoubleTap2Wake doesn't work sometimes. How can I get it to work all the time?
When device goes into suspend mode first tap is often missed (I suspect this is caused by Moto Sensor Hub). If you tap three times and get the timing right you'll probably make it work most of the time. As an alternative, Sweep2Wake works almost all the time​
DT2W/S2W is acting weird or disabling itself
Make sure Moto Display is disabled. Open the Moto app, click on the stars in the top right corner, select Display and set to Off​
Can I use this kernel in ROM X/Y/Z?
This is for stock ROM MPH24.49-18 only. It'll probably work on any stock based ROM but not guaranteed.​
I use stock ROM but WiFi is not working
Due to some internal changes all modules had to be recompiled (WiFi included). In order to expose the new modules without modifying the system partition I had to implement a hack that requires root. Make sure you're properly rooted.​
What's the deal with ZRAM?
ZRAM is a technique to increase memory available to the apps at the expense of CPU time. Memory space from apps not being used is compressed into a memory swap area and uncompressed on the fly whenever needed. As you can imagine this compress/uncompress process burns CPU cycles, potentially leading to worse battery life, lag and higher temperatures. Since this device comes with 3GB I can only think of one scenario where ZRAM can be beneficial: heavy multitaskers who care more about apps not reloading than battery life. For the rest of users enabling ZRAM doesn't make much sense in my opinion, and that's why it's disabled by default.
UPDATE: v0.10 includes an updated ZRAM driver that improves performance significantly. So much so that the benefits seem to outweigh the costs and it's been enabled by default.​
What's the deal with KSM/UKSM?
Since many apps use the same libraries/resources it's very likely that at any given time there are multiple copies of the same data on different memory locations. KSM/UKSM tries to take advantage of that fact by scanning memory pages periodically and consolidating that multiple copies into a single shared copy. Much as like ZRAM it can have a good effect on heavy multitasking performance but at the expense of CPU cycles, and thus it's only recommended in the same scenario as ZRAM. Disabled by default​
Ok, so do I enable ZRAM/KSM/both/neither?
I honestly think most users will be better off not using neither. If you feel like you need extra RAM I'd try KSM first, then ZRAM. Using both at the same time is overkill unless you are an ultra multitasker, in which case you should probably get a 4GB device anyway ​
How do I get WiFi on 6.0.1?
It's a modem version mismatch issue, you need to downgrade the modem. See this post.​
Love to see more options! Thanks for sharing!!
Yeah this will be very good
Only One think that would be awesome try to implement the double tap to wake
Awesome! More custom kernels are always welcome are there many governors to choose from?
krohme said:
Awesome! More custom kernels are always welcome are there many governors to choose from?
Click to expand...
Click to collapse
Right now only the stock governors are available but I plan on adding a few
Can't we install it through twrp???
guraki said:
Can't we install it through twrp???
Click to expand...
Click to collapse
Yes, TWRP supports boot image flashing
I lost root after the kernel install....
---------- Post added at 03:22 PM ---------- Previous post was at 02:39 PM ----------
Seems to work fine!!! Any battery life expectations?
guraki said:
I lost root after the kernel install....
---------- Post added at 03:22 PM ---------- Previous post was at 02:39 PM ----------
Seems to work fine!!! Any battery life expectations?
Click to expand...
Click to collapse
As I said on the OP my main goal is performance/smoothness, so I haven't specifically sought better battery life. That being said I'm getting about the same battery life as stock with better performance, that works for me.
Nevertheless, I'm very interested on how it works for other configurations and usage patterns.
@dirtyhank could you please add hotplugging to the kernel? Preferably one that allows you to select how many cores to run as well as which ones, as in run the two A57s and turn off the four A53s. Currently I'm running two A53s at 1.2Ghz and the remaining four cores are always off.
The screenshot is from Lolipop, and it is the only reason why I havent upgraded to MM. Turning off cores definitely makes a difference on battery life.
Also, if possible, adding a lower speed to the min speed. Will gladly test anything you thow my way. Thanks in advance.
Is there any chance for a CM13 version and a DT2W fork from elementalx?
sir-harlekin said:
Is there any chance for a CM13 version and a DT2W fork from elementalx?
Click to expand...
Click to collapse
DT2W maybe, CM13 unlikely.
very nice thank you! slowly slowly we getting more and more things. Just making sure this is only for stock based rom/s Thanks!!
cerobles1 said:
@dirtyhank could you please add hotplugging to the kernel? Preferably one that allows you to select how many cores to run as well as which ones, as in run the two A57s and turn off the four A53s. Currently I'm running two A53s at 1.2Ghz and the remaining four cores are always off.
The screenshot is from Lolipop, and it is the only reason why I havent upgraded to MM. Turning off cores definitely makes a difference on battery life.
Also, if possible, adding a lower speed to the min speed. Will gladly test anything you thow my way. Thanks in advance.
Click to expand...
Click to collapse
What kernel are you using on LP?
patt2k said:
very nice thank you! slowly slowly we getting more and more things. Just making sure this is only for stock based rom/s Thanks!!
Click to expand...
Click to collapse
Yep, stock ROM, I'll edit the OP
dirtyhank said:
Yep, stock ROM, I'll edit the OP
Click to expand...
Click to collapse
Awesome gonna flash this soon
I hope a port for CM based roms might be possible in the future! Thanks for sharing your work and replying so quickly!
dirtyhank said:
Yep, stock ROM, I'll edit the OP
Click to expand...
Click to collapse
Getting bootloop on TruePure rom 2.4. Anything I can try to avoid bootloops?

[Kernel][EAS][Overclocked] No Gravity [Q][Pie][Oreo][2020-09-27][UberTC]

NoGravityKernel
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
No Gravity Kernel 2.0 + 4.0 App Trailer
Why is it called NoGravity kernel?​
The OnePlus company decided to give the Snapdragon 810 V2.1 to our device. It comes with a little increase in GPU clock speed (from 600MHz to 630MHz) BUT it also comes with a CPU downclock going from 2.0GHz to 1.77GHz on the big cluster to avoid overheating issues. No overclocked kernel has been made for PIE/OREO so this is the reason why I made this kernel. This Kernel is for Performance but it still gets descent battery life due to some added features (see below).
The Kernel will boot using stock (OnePlus 2) CPU frequencies that correspond to the Balanced Profile. Other profiles for battery, performance and gaming can also be switched to in my app.
To tweak the kernel easily, here's my No Gravity app! featuring custom profiles (Battery, Balanced, Performance, Gaming and Gaming+). My kernel offers some features that cant be found in other kernel tweaking apps. You can find them lower in the thread.)
Detailed info about the EAS Kernel in post#3.
-Overclocked CPU (Little 1.56->1.9Ghz, Big 1.8-> 2.2Ghz)
-CPU Underclocked to 302 MHz(idle) and undervolted
-The two CPUs (big and little cpu) can be configured completely separate in terms of min/max frequencies and governors
-Undervolted for better battery life and temps
-Using custom thermal engine for better performance (Less thermal throttling)
-Voltage Control
-Jaw dropping Applications Opening speed
-Unlocked PUBG HDR+Extreme options (Disabled by default, enable it in app)
-DDR Bus boost for frame rendering
-No Gravity app! support
-DTS Eagle Drivers added for better sound
-GPU Overclocked to 650 MHz
-GPU Underclocked to 27 MHz on idle
-Added Adreno Idler
-AdrenoBoost 2.1
-Updated Cpusets for even more smoothness
-Backported Pixel timekeeping
-Smarter GPU
-Disabled ZRAM
-DDR Input Boost
-Max screen off frequency tunable
-Dynamic File Sync
-Slimbus Overclock
-Thermal Throttling Slider
-Added Governors (Chill, Relaxed)
-Added Fingerprint boost
-Added WakeBoost module
-Faux Sound support
-Gestures Support
-FastCharge drivers Support (Now the charging rate is fast even when screen on without increasing temps that much!)
-Maximum charge rate over USB 3.0 increased from 500mA to 900mA
-WireGuard Support
-Added and Using ZEN I/O Scheduler as default for app opening speed && overall Smoothness
-Added Maple, SIO and FIOPS I/O Scheduler
-KCAL Support
-K-Lapse Support
-Blocked wakelock (Boeffla)
-Added Hotplug (Core_ctl)
-Added Gentle fair sleepers toggle
-Debloated
-New battery screen animation with percentage
-F2FS Support leading to ~10% faster write speeds compared to EXT4
-Based on Linux version 3.10.108
-Kernel & App update checker
-Balance, Performance, Battery, Gaming and Gaming+ Profiles for NGK & NGK EAS
-Max Cluster Overclock toggles to apply maximum overclock frequencies to Little and/or Big Cluster
-Custom Profile Creator Page that let's you create and share profiles with the NGK community (/SDCARD/NGK/PROFILES/)
-Displays most accurate CPU temperatures for Little and Big clusters separately
-GPU Stats page to show every GPU Frequencies time in state stats
-NGK Stats Page showing last gaming session FPS+ Chart, battery drain, avg CPU temps & avg Battery temps, toggle for enabling NGK Stats Overlay displaying FPS and following optional features:
-CPU Temps/Freqs
-GPU Temps/Freqs
-Battery Temps/Percentage
-App optimization (ART) Button
-PUBG HDR+Extreme config unlocker
-Thermal Switch to select between NoGravity thermal config and stock
-NGK Bootanimation
-NGK Overlay
-PocketMode Switch to turn off fingerprint sensor when device is in pocket or on table face down
-Proximity Gestures Switch to pulse ambient dispay on Hand Wave
-Pick-Up Gesture Switch to pulse ambient display when device is taken
-Pixel 3 Flip to Shhh feature
-Resolution Changer to switch between 1080p FHD and 720p HD resolutions
-Battery Current Limit Switch to disable or enable BCL on low battery percentage
-Sound page lets user download DTS:Eagle apps (Headphone:X or Ultra)
-CPU Temperature Limit slider to set thermal throttling temps
-K-Lapse Night mode and Brightness mode toggles
-Video Recording Codecs Selector (H.264, H.265, H.265+)
-Backlight Dimmer button to help reduce eye strain
-DDR Input Boost toggle
-Apply On Boot to apply user settings on boot
-EAS page to tweak Load tracker, governors and dynamic schedtune boost!
-More info on those in the app
Most of my work will be on Energy Aware Scheduling Kernel version since NGK is really solid and stable,,,
This kernel works on Android 10, PIE and OREO ROMs.
DO NOT FLASH ON STOCK OXYGEN OS! ​
Initial boot might heat up device a bit, which is normal - Let it settle
I recommend before coming to conclusion, give it at least 2 complete charge cycles and then raise any issue.
Max fully stable overclock is Little/Big 1.8GHz/2.1GHz
Both max 1.9GHz and 2.2GHz may be unstable and are not reacheable using app profiles. They still can be reached using the max overclock toggles the app provide.
Flash No_Gravity_Kernel-vX.X.zip file in TWRP (Latest TWRP Recovery Recommanded)
(Optional) - Clear cache and Dalvik
Made your choice?
Download Links
No Gravity Kernel
Anti Gravity Kernel
NGK-EAS (Post#3)
No Gravity App
Anti Gravity Thread
As I put a lot of time and effort into this project, I now accept donations feel free to help me a little
Donate
Older NGK builds
Q-PIE-OREO AOSP Based Roms
Q-PIE-OREO LineageOS Based Roms
v3.2 Q-PIE-OREO AOSP Based Roms
v3.2 Q-PIE-OREO LineageOS Based Roms
v3.1 Q-PIE-OREO AOSP Based Roms
v3.1 Q-PIE-OREO LineageOS Based Roms
v3.0 Q-PIE-OREO AOSP Based Roms
v3.0 Q-PIE-OREO LineageOS Based Roms
v2.7 Q-PIE-OREO AOSP Based Roms
v2.7 Q-PIE-OREO LineageOS Based Roms
v2.6 PIE-OREO-NOUGAT AOSP Based Roms
v2.6 PIE-OREO-NOUGAT LineageOS Based Roms
v2.5 PIE-OREO-NOUGAT AOSP Based Roms
v2.5 PIE-OREO-NOUGAT LineageOS Based Roms
v2.4.2 PIE-OREO-NOUGAT AOSP Based Roms
v2.4.2 PIE-OREO-NOUGAT LineageOS Based Roms
v2.4.1 PIE-OREO-NOUGAT AOSP Based Roms
v2.4.1 PIE-OREO-NOUGAT LineageOS Based Roms
v2.4 PIE-OREO-NOUGAT AOSP Based Roms
v2.4 PIE-OREO-NOUGAT LineageOS Based Roms
v2.3 PIE-OREO-NOUGAT AOSP Based Roms
v2.3 PIE-OREO-NOUGAT LineageOS Based Roms
v2.2 PIE-OREO-NOUGAT AOSP Based Roms
v2.2 PIE-OREO-NOUGAT LineageOS Based Roms
v2.1 PIE-OREO-NOUGAT AOSP Based Roms
v2.1 PIE-OREO-NOUGAT LineageOS Based Roms
v2.0 PIE-OREO-NOUGAT AOSP Based Roms
v2.0 PIE-OREO-NOUGAT LineageOS Based Roms
v1.9.2 OREO-NOUGAT AOSP Based Roms
v1.9.2 OREO-NOUGAT LineageOS Based Roms
v1.9.1 OREO-NOUGAT AOSP Based Roms
v1.9.1 OREO-NOUGAT LineageOS Based Roms
v1.9 OREO-NOUGAT AOSP Based Roms
v1.9 OREO-NOUGAT LineageOS Based Roms
v1.8 OREO-NOUGAT AOSP Based Roms
v1.8 OREO-NOUGAT LineageOS Based Roms
v1.7 OREO-NOUGAT AOSP Based Roms
v1.7 OREO-NOUGAT LineageOS Based Roms
v1.6 OREO-NOUGAT AOSP Based Roms
v1.6 OREO-NOUGAT LineageOS Based Roms
v1.5 OREO-NOUGAT AOSP Based Roms
v1.5 OREO-NOUGAT LineageOS Based Roms
v1.4 OREO-NOUGAT(advanced gestures broken for the LineageOS based ROMs (dt2w works)
Changelog
Public Changelog of private startup builds
post#2 for public released build changelogs.
ScreenShots
See screenshots section at the top of the thread!
​
Credits
ShreyanshLodha, Lord Boeffla, Benschhold, Grarak, Francisco Franco, arter97 and also Shreesha.
Thanks To: ShreyanshLodha for helping me out a bit at the begining and to Utkarsh Omer for deeply testing the kernel before stable releases.
XDA:DevDB Information
NoGravity Kernel, Kernel for the OnePlus 2
Contributors
Pierre2324
Source: [url]https://github.com/Pierre2324/NGK_android_kernel_oneplus_msm8994[/URL]
Version Information
Status: Stable
Current Version: 3.5
Created: 2018-03-15
Last Updated: 2020-09-27
NoGravityKernel EAS​
Kernel Features EAS
Same features as Non-EAS kernel + the following
Energy Model fitting OnePlus 2 and NGK's overclock
Schedtune + Dynamic Schedtune Boosting
Sched and Schedutil Governors
Optional SQRT frequency selection algorithm
PELT & WALT Load Trackers
Prefer Idle tunable
1000Hz Time Interrupt frequency to fit Pixel Phones instead of previous 300Hz
3.18 Kernel Preempt
3.18 CpuFreq upstreams
Using cpu_input_boost driver for event based boosting (replacing cpu_boost)
Many more upstreams and backports to our 3.10.108 kernel
Download Links
EAS Q-PIE-OREO AOSP Based Roms
EAS Q-PIE-OREO LineageOS Based Roms
As I put a lot of time and effort into this project, I now accept donations feel free to help me a little
Donate
Changelog
Public Changelog of private startup builds
post#2 for public released build changelogs.
Source: [url]https://github.com/Pierre2324/EAS_NGK_android_kernel_oneplus_msm8994[/URL]
More info on EAS and the specific implementation for OnePlus 2
EAS | Energy Aware Scheduling
Notice : I will not tell you everything about it.. I'll just do my best to summarise it up and, most importantly, say what's the implementation of it in my kernel compared to newer phones... I don't know everything and may do some mistakes (english mistakes included ) if I do, let me know but still should be on track. I will highlight important words in bold. Also for better kernel tuning, please use my app as its made for our specific implementation of EAS.
Intro: Well Google mostly wanted a better/smarter algorithm to ramp up frequencies than the current cpu-boost driver.. So they started to make the kernel smarter on their 3.18+ kernel seen on Pixel Phones. They wanted to port EAS to their previous phones (Nexus 5x and 6p) having 3.10 kernel like the OnePlus 2 but they didn't.. They started porting it with a pretty basic implementation with a bad energy model, a pretty old version of the battery oriented Per Entity Load Tracking, a pretty basic Schedtune support too and the old Sched governor instead of the newer SchedUtil governor used on current/newer phones. That basic implementation was actually the first releases here on XDA before 3.0 update.
Energy model: At the base of a good EAS implementation there's an Energy Model containing compute capacities and energy cost tuples for each Cluster (big.Little). That way, its possible to estimate the cost of task placement on CPU. Hmm okay that was a big sentence here.. Well to summarise it up, some tasks need more compute capacity to run nicely (smoothly,fast,etc) so need more power which will cost more to run and depending on the task it may need to run on the Big cluster. I say that the kernel is smarter that way, since it will try to set tasks on cores that needs less power to run while still being fast enough for the task. It will also decide to use a shallow core instead of waking another from deeper since the energy model also specify wakeup costs.
What I did for the Energy Model until now: Since the Angler energy model that was used in first releases was pretty bad, I converted it to a frequency / cost model instead of capacity / cost which is now much easier to manipulate instead of speedbins. I then recalculated costs for each frequencies with some graphs including voltages for every frequencies to determine cost for both Cluster. For overclocked frequencies, I had to extrapolate/interpolate trend lines I had in those graphs. That way, we now have an Energy Model that corresponds better to our OnePlus 2 device. Some changes might need to be done later on, but it seems okay for now.
Sched Governor: EAS's Sched or newer Schedutil both use SMP -> Symmetrical multiprocessing instead of previous HMP -> heterogeneous multi-processor found for interactive, ondemand, etc... HMP and SMP both have in mind that multiple CPUs are running, but on SMP no CPU is selected as the Master CPU.. both CPU cooperate as friends.. Well we all know there is a big difference between our little and big CPU and this is why the governor is not alone in EAS..On the other side, HMP knew exactly which cpu was more powerful and while this is good since its easy to implement and fast, this is why its not too battery friendly..
What I did to Sched governor until now: Well no specific feature comes to my mind, but it got optimised alot by backporting amd upstreaming some part of it from higher kernel versions (mostly 3.18)..
Schedutil Governor: Schedutil is the governor every phone uses right now by default I guess. Sched is not even there anymore if I'm not mistaken.
What I did to Schedutil governor until now: Shedutil got backported from 3.18 to the kernel. From my tests, it's been more stable than Sched for below reasons:
o Took less time for the kernel to settle after booting.
o Frequencies stay low and do not jump everywhere when simply looking at the screen.
o Improved latency
Its now possible to switch between them using my app. I wanted to make a comparison between both but couldnt find enough info on them to really tell you precise differences. I can only say Sched is predecessor of Schedutil so I assume Schedutil can only be more efficient.
Load Tracking: Whether its PELT (Per Entitty Load Tracking) or WALT (window assisted load tracking) both increase efficiency since they do not affect frequencies directly and instead of just placing tasks on any cpu it analyzes it and the amount of energy needed for it is estimated. This smart way of doing things make system quicker since it can run more tasks for less energy. This is what EAS is all about.. smoothest UI possible with lowest impact on battery. PELT is more battery friendly as it ramps frequencies up and down slowly.. On the other side, WALT ramps up and down really fast making UI smoother and snappier since every task is done as fast as possible so cpu can idle and go to sleep faster.
What i did to load tracking: I optimised PELT and added WALT.. Its now possible to switch between them using my app.
Comparison between WALT & PELT
Souce: https://fr.slideshare.net/mobile/linaroorg/walt-vs-pelt-redux-sfo17307
Frequency ramp up
Frequency ramp down
As you can see, WALT ramps up way quicker than PELT leading to smoother UI. Also tasks are done more quickly. On the other side, it's also possible to see that PELT may be better is some specific use cases as when another job needs to be done a little after due to it not ramping down frequencies completely. This way, WALT would need to ramp up again while PELT would be ready.
Schedtune: Exposes 2 tunnables to userspace: schedtune boost and schedtune prefer idle into cgroups. There are actually 4 cgroups background, foreground, rt and top-app. The first tunable (schedtune boost) takes an integer between -100 and 100, 0 being the default value meaning the most energy efficiency which means that it will be using the lowest frequency to do what it needs. An higher value will add an % offset to the normally used frequency. The second tunable (schedtune prefer idle) when set to 0 (default value) will simply do what EAS says it to do. When set to 1 it will prefer setting tasks on idle cores to reduce latency. Pretty easy to say the second one is less energy efficient.
What I did to Schedtune: Some improvements to it have been added for sure since first release. I've set top-app
default value to 1 instead of 0 to bias tasks on big cores. This way, it also improves latency for Dynamic Schedtune Boost.
Background has been set to -10 to reduce its impact. Gaming and Gaming+ profiles are using more aggressive values so they are not recommended for other tasks than gaming as this may give you higher battery drain during normal usage.
Dynamic Schedtune Boost: It's pretty easy to understand and its a pretty nice feature made initially by joshuous on the OnePlus 5 if Im not mistaken. It simply sets a user specified value to schedtune boost dynamically a cgroup so it can go back to 0 afterwards to not hurt battery. It's mostly used in cpu-boost for input boosting.. Then why not just use the input boost that worked well on HMP? Well to that I would say: how do you know the input boost frequency value you've set is the correct one for what your specific usage? Input boost will boost to a user specified value but what if that value is okay for chrome but too high for simply scrolling in a text file? Well that's it.. EAS is able to find the frequency needed depending on usage + the dynamic boost it will simply make things faster and smoother by adding a positive offset to the frequency used but dynamically so it can revert back to 0 afterwards and save battery while phone is actually doing nothing or when your simply looking at the screen.
What I did to dynamic schedtune boost untill now:Well I added it to our kernel by backporting the feature from a pixel kernel and adapted it to our phone. Due to some limitation we can only dynamically boost top-app.. at least for now.. I could add other cgroups quite easilly but its not really needed as top-app is the most important/effective one. I'll add more later if its actually needed.
To tweak it: Use the EAS page in my app... make sure you don't set any frequency boost in any kernel manager, tweak input boost ms and dynamic stune boost value. Note: enabling Dynamic Schedtune Boost in my app will automatically erase any previously set input boost frequency so it works correctly.
PowerHAL: For proper EAS people say it needs proper PowerHAL.. The kernel itself cant make what a PowerHAL can do since it cant read some userspace events and all. Lets say boost on input touches can be done with a good PowerHAL so less job is done by the kernel.
What I did for PowerHAL untill now: Well I'm aware of what a PowerHAL could bring tho no PowerHAL has been done for EAS on for old kernels.. That doesn't mean I couldn't modify a newer one to fit our phone but I made a lot of tweaks in the kernel directly to prevent that. A PowerHAL is compiled with a ROM directly so could be harder to replace. So what I did is put some nice features to mimic PowerHAL behaviours like Dynamic Schedtune Boost, DevFreq boost on app launches, fingerprint boost and more nice features directly in kernel that allows (for some of them) to be tuned by the user.
More features and development can be seen in changelogs.
If you have any questions feel free to post them. If I made any mistake feel free to correct me.
Changelog:
Previous Changelogs:
3.4.1 Build:
Kernel:
Revert latest LPM changes to fix a blackscreen issue
NoGravity Kernel App v3.4.2:
General:
Updated Profiles
New App & Kernel Update checker
Small fixes
OnePlus 2:
Nothing specific to OP2 added
Pocophone-Mi8:
Modified NGK Thermals to fit NGK thermal locking mecanism
DT2W Toggle added to Kernel Page (mainly for OOS)
Updated Backlight Dimmer
New NGK stats page
-Shows last session average FPS
-NGK overlay service toggle to show FPS,CPU & GPU stats in real time on screen
3.4 Build:
Kernel:
Faster app opening
Added Memfd call for new Android 10 ROMs
Various CPU, GPU, devreq & cpubw optimisations
Proper DDR bus boost when rendering frames to the display (to fit our old kernel)
And more under the hood changes
Kernel EAS:
Updated to latest NGK changes
*Notes :
-I would recommend turning off No Gravity app toast notifications from Magisk Manager app.
3.3 Build:
NoGravity Kernel App v3.3:
General:
Updated Profiles
Lowered Magisk Toast Messages*
Max GPU Freq Selector
Added an option to refresh GPU Stats
Updated descriptions
OnePlus 2:
DDR Input Boost Toggle
Pocophone-Mi8:
New GPU Page:
-GPU Stats
-KLapse (Brightness and Daytime modes)
-Backlight Dimmer
Kernel:
Faster app opening
DDR Bus boost on input now disabled by default (use my app to enable it again)
Backported,cleaned up some GPU stuffs
Removed some bloat
Lowered heat and battery drain
Many optimisations
And more under the hood changes
Kernel EAS:
Updated to latest NGK changes
Fixed a notification/call sound distortion
*Notes :
-I would recommend turning off No Gravity app toast notifications from Magisk Manager app.
3.2 Build:
NoGravity Kernel App v3.2:
General:
Updated Profiles
Auto-dismiss Apply on boot notification
Updated descriptions
OnePlus 2:
Fixed App opening on AGK
Fixed EAS Dynamic Schedtune Bug
Pocophone:
New Kernel Page to let you control:
-Thermals:
Stock one || Evaluation (NGK’s default)
-Thermal Suspend API:
OFF || ON (NGK's default)
-Battery Thermal Throttling Removal:
OFF || ON (NGK’s default)
-SELinux Switch:
Enforcing (NGK’s default) || Permissive
New DTS Eagle (Sound) Page
Kernel:
Faster app opening
DDR Bus boost on input (Q Gestures, Animations are much better)
Various changes to make the UI smoother
Backported some small changes from the Pocophone F1 kernel (gpu, cpuidle)
Better Dynamic FSync
Removed some bloat
Many optimisations
Blackscreen fix (Device screen not turning on issue)
And more under the hood changes
Kernel EAS:
Updated to latest NGK changes
Quite a lot of EAS,Sched,Cpufreq,LoadTracking changes
*Notes :
-Make sure you flash Magisk after flashing the kernel
-As always when you wipe cache and dalvik, make sure you charge atleast once overnight so ART Optimisation does its job while charging at 100%.
3.1 Build:
NoGravity 3.1 App:
Pocophone support added (Profiles and cluster temps only for now)
Small fixes/optimisations
*Notes :
-You may need to uninstall previous app for it to install
-I recommend using my app over others to tweak EAS kernel since its made for the specific OnePlus 2 implementation
Kernel:
Debloated the kernel leading to smaller kernel
Compiling Optimisations
Removed Simple Low Memory killer (Yea algorithm is better but too aggressive even if its made for 4GB devices) This also fixes some black screen issues.
Improved latency
And more under the hood changes
Updated to latest LineageOS changes
Kernel EAS:
Updated to latest NGK changes
*Notes :
-Make sure you flash Magisk after flashing the kernel
3.0 Build:
NoGravity 3.0 App:
Fixes for Android 10
New EAS page to change Load tracker, governor and enable dynamic schedtune boost!
Added 60FPS app download link since NGK now supports 60FPS
Boot delay removed
No more annoying persistent notification!
Thermals and codecs switching should now work for everyone
DTS Eagle page updated
Adapted profiles for EAS
Small fixes/optimisations
*Notes :
-You may need to uninstall previous app for it to install
-I recommend using my app over others to tweak EAS kernel since its made for the specific OnePlus 2 implementation
Kernel:
60FPS Video Recording support added (This app is needed)
New more efficient Simple Low Memory Killer
CPU-Boosting, Fingerprint, Cache, MMC & Sched optimisations
Improved F2FS (700 commits+) averaging about 10% better write speeds over EXT4 in my tests
Battery improvements (mostly to screen off drain)
And more under the hood changes
Adapted to Android 10
Updated to latest LineageOS changes
Kernel EAS:
Rebased completely to make video recording work
1000Hz Time Interrupt frequency to fit Pixel Phones instead of previous 300Hz
Energy model:
-Now uses frequencies instead of capacity
-Recalculated to fit OnePlus 2 frequencies + NGK’s Overclock
CPU Boost driver:
-Added and fits EAS
-Input boost tunable added*
-Various boost events added
Schedtune:
-Modified boosting
-Dynamic Schedtune Boost added
New prefer_idle tunable
Schedutil governor added!
-Window Assisted Load Tracking (WALT) added + optimisations and integrated along already
existing Per Entity Load Tracking (PELT)
Sched governor:
-Improvements
-WALT & PELT improvements
Preempt:
Backport preempt from 3.18 kernel
CPUfreq:
-Upstreams to 3.18 and some hooks from 4.9
A lot of Upsteams/Backport from 3.18 to our 3.10 kernel
A lot of Scheduler improvements
Updated with latest NGK changes
And more under the hood changes
Adapted to Android 10
2.7 Build:
NoGravity 2.7 App:
New Backlight Dimmer feature added to GPU page
*Notes :
-You may need to uninstall previous app for it to install
Kernel:
Fixed stucked on 1+ logo while charging issue
While at it, improved that charging screen with battery percentage and colors
Fixed big cores turning off randomly or when gaming resulting in same/constant performance for every sessions or benchmark
Updated to latest LineageOS changes
2.6 Build:
NoGravity 2.6 App:
New App Settings Page
Fast NGK App opening after boot toggle added to app settings*
New Camera Page
New video recording codecs switches added => H.264(Default), H.265(Lower file size) and H.265+(Better Quality)*
Kernel:
DeepSleep issue is fixed!
Reworked Battery profile to make it usable and quite smooth
Battery optimisations
AdrenoBoost modifications to fit NGK’s GPU Overclock and help battery
BCL modifications
Little faster app opening speeds
UI optimisations
Updated to latest LineageOS changes..
[/STRIKE]Placed some performance-critical IRQs and kthreads onto the performance CPU cluster in order to improve performance[/STRIKE] (2.5.1 feature removed in 2.6 to fix deep sleep issues)
And more under the hood changes
*Notes :
-Possibility to remove the delay before opening the app after boot. This works on new ROMs. Old ROMs like Shreesha’s Pixel Experience will need the delay to be enabled.
-H.264 is default OnePlus 2 codecs. H.265 (lowered bitrates) will give you same quality but much lower file sizes. H.265+ may give you slightly better quality with same(stock) bitrates (same file sizes). Best file size reduction will be seen in 4K.
2.5.1 Build:
NoGravity 2.5 App:
Same app just updated Android File Host link because of the "no mirrors found" issue...
Kernel:
Smoothness improvements
GPU maximum frequency is now 650MHz on balance profile instead of 450MHz since not everyone uses profiles and some people like to game on balance too. This will give better gaming experience on default profile.
[*]Random phone not waking up after going in DeepSleep issue should be fixed not fixed will be in next build go 2.4.2 instead if you encounter this issue
Updated to latest LineageOS changes.. Video recording fixed!
2.5 Build:
NoGravity 2.5 App:
K-Lapse Night & Brightness modes toggles added to GPU page
Max overclock toggles states after reboot fixed
No Gravity EAS support
Kernel:
Lowered minimum brightness
Minimum brightness tunable added
K-Lapse Support added
Smarter GPU decisions leading to better battery
Fixed an issue where the device could get laggy for some time after DeepSleep
Placed some performance-critical IRQs and kthreads onto the performance CPU cluster in order to improve performance
Fixed Slimbus Overclock (Old feature now added correctly)
Kernel EAS (EXPERIMENTAL)*:
First build!
Same features as NGK without extra governors
Sched Governor and Schedtune added
*Notes : this is an experimental build and will be updated and tweaked in futur releases… so battery/performance/smoothness might not be the best for now
2.4.2 Build:
NoGravity 2.4.2 App*:
Fixed Profiles QSTile
Still Secret feature for now will update changelog later...
Kernel:
Fixed a major battery drain issue
*Notes : If app doesn't install just uninstall previous app version before installing the new one.
2.4.1 Build:
No Gravity 2.4.1 App*:
CPU temperature colors fixed
Secret feature revealed: AGK Kernel support
Kernel:
Fixed Random annoying Kernel Panic after reboots
Fixed some little tweaks that were not applying correctly
Kernel smoothness and performance will now be more consistent after waking up/deepsleep
Some minor under the hood changes
*Notes : Uninstall previous app version before installing the new one.
2.4 Build:
No Gravity 2.4 App:
Yea you read it right, it's back and better!
Apply on boot behavior updated.. The app now detects when it gets root access and notifies the user it's ready to be opened.
New Sound tab including both DTS:app downloads (Headphone:X and Ultra)
Fixed some parts of profiles not applying correctly
PocketMode now disables Double Tap 2 Wake on LineageOS based ROMs also
Startup screen updated
Fixed a small issue for Max overclock toggles
Added colors to CPU temperatures
New More-Info "(i)" buttons
Kernel:
Lineage based kernel rebased for smoothness and fixed camera on latest LineageOS Rom
AOSP updated to boot on new/upcoming AOSP Roms
Undervolted for better battery life
Tweaked wakelocks for better battery life
Kernel and Profiles optimisations for battery life, performance and smoothness
Optimised kernel compilation for performance
Interactive governor optimisations for performance and smoothness
Max screen off frequency and more settings added to Interactive governor (Default 960MHz)
Brought back lost GPU AdrenoBoost parameter
DTS Eagle Drivers added for better sound (Working with latest Headphone X and Ultra)*
Disabled ZRAM entirely instead of having it low
Kernel now sets NOOP I/O Scheduler when screen goes off for better battery life and reduced resume latency
Calmed down phone vibration intensity
*Notes : I would recommend Headphone X for customizations.. You can get the flashable apps and read more about them in my app or here: https://forum.xda-developers.com/android/software/port-dtsx-ultra-dts-headphonex-t3896233
2.3 Build:
No Gravity 2.3 App:
Pixel 3 Flip to Shhh feature added (Beta feature may drain battery)
PocketMode now disables DT2W when device is in pocket (DT2W may get disabled, yea thats a small issue that can happen so you need to enable it again in your favorite kernel tweaker app)
Less sensitive pickup wake
Fix Max OC on little cluster when apply on boot enabled
Fix temperature limit slider initialisation
Profiles tweaked for battery life and performance
Kernel:
HotSpot fixed! kernel updated to latest LineageOS changes
SIO and FIOPS I/O Scheduler added
Even faster app opening speed
FingerPrint Optimizations
Kernel tweaks for battery life and performance
Many kernel optimisations
*Notes : If apps do not seem to open fast after an update, charging the phone overnight fixes it. After a clean flash, full art cache is generated only when phone is idling at charging with 100% battery.
2.1 Build:
No Gravity 2.2 App:
Fix “on device shutdown” operations for Android PIE
Fix app opening check right after booting
No more in app lag
Unified Notification for services
No Gravity Spectrum 3.1 App:
New GPU Stats page to show GPU frequencies time in state stats
Big Cluster’s Cores behaviour has been reworked for Pie. This leads to better performance and battery for corresponding Profiles (see post below for more details)
Advanced Descriptions Popups fixed (on long click of titles ending with "*")
Pick-Up device to pulse Ambient Display [Still Experimental] may get app force close when device moves too much I will still try to fix this in future builds
Kernel:
Super fast app opening speed*
Big Cluster’s Cores fixed
Faux Sound Control partially added: Mic & Headphone boost
GPU time in state table like CPU added
Kernel, CPU & Memory Optimisations added
*Notes : If apps do not seem to open fast after updates from now on, as weird as it looks, charging the phone overnight fixes it. Me and my testers couldn't find why this happens.
2.0 Build:
No Gravity Spectrum 3.0 App:
Android Pie Support added
Pick-Up device to pulse Ambient Display [Experimental] may get app force close when device moves too much this will be fixed in future builds
Kernel:
Some Pie commits added
Little Cluster now disables (hotplugs) cores correctly
1.9.2 Build:
No Gravity Spectrum 2.4 App:
App now works with any DPI!
Resolution changer
Changes were made to every profiles.. they are now more battery friendly
(Take a look at Post#3 for more details)
Switches can now be toggled by pressing their description
Updated descriptions (including on long click of titles)
Kernel:
USB 3.0 max. charging rate improved (from 500mA to 900mA)
Wake boost module added
Latest Lineage based ROMs Notification LED fix
1.9.1 Build:
No Gravity Spectrum 2.3.1 App:
App speed is now as fast as before
Bug fixes
No Gravity Spectrum 2.3 App:
Proximity Gestures Switch added to pulse ambient display
Added an option to Save and Load Voltage configs
Toggles to apply maximum cluster overclock (Little: 1.9GHz | Big: 2.2GHz)
Apply on boot switch added to Profiles and Performance+ section
Kernel:
Wireguard support added
Updated No Gravity flash screen logo
1.9 Build:
No Gravity Spectrum 2.2 App:
Voltage control added so it fits my kernel
Getting Root Animation added
Black screen bug fixed(if encountered again just kill from recents and open again)
High dpi device fixed (min 380 max 500+)
Set ZEN I/O scheduler for balance and performance profiles
New Thermal Switch description
Now app sets balance profile just before the device shuts down/reboot to ensure beginning of next boot uses stock frequencies* (fixes boot issues on some devices)
Kernel:
Set ZEN as default I/O scheduler
Added back 1.9GHz frequency as Little Cluster now never use overclocked frequencies during boot time (max stable overclock still 1.8GHz)
Added Dynamic Fsync
Added back BFQ IO scheduler
Added missing governors(Chill, Relaxed) to Lineage build
Added missing Maple I/O Scheduler to LineageOS build
Added missing Adreno Idler switch to kernel tweak apps to LineageOS build
And more CPU optimisations…
*Notes : boot crashes should be close to not present anymore, but for the people who faced them in previous builds, it's highly recommended to install/update the new " NoGravity Spectrum v2.2 " apk and run it before flashing the rom
1.8 build:
No Gravity Spectrum 2.1 App:
No Gravity theme
Thermal Selection switch added to select between stock or no gravity’s thermal config
Pocket Mode switch added (Quick Setting tile also included)
SELinux switch added
BCL switch added
Kernel:
Removed 1.9GHz frequency on Little Cluster (fixes boot for the remaining non booting devices)
Fix voltage Controls that wasn’t working properly (voltage control guide added to xda thread post#199)
Added missing big cluster frequencies in voltage control tab
Added ZEN I/O Scheduler
Fingerprint optimisations
And many kernel optimisation…
1.7 build:
Brought back unlocked frequencies (Little 1.9GHz | Big 2.2GHz) more info in notes section of OP
Returned to stock thermal config
Modified Spectrum app support (details about every profiles in Post#2)
Gaming heating issues fixed using Gaming/Gaming+ Spectrum profiles
Added Voltage control
Undervolted Little and Big 302MHz(idle) frequencies for lesser standby battery drain
Optimised Spectrum Profiles for NoGravity
Re-enabled Battery Current Limit (BCL)
Added Temperature throttle control
1.6 build:
Various Random Reboot Fixes. now this NoGravity kernel should be stable!
Big Cluster max frequency is now 2016MHz (more testing will be done for higher frequencies wanted to have a completely stable build)
Faster Charge over USB
Now Big Cluster boots without overclock (Just like the Little Cluster does)
Added lost Big Cluster 1766MHz frequency
1.5 build:
LineageOS support! There are now 2 versions AOSP && LineageOS.
Disabled Battery Current Limit (BCL) that turns off cores when under 20% battery.
CPU Underclock Little && Big 384MHz-> 302MHz.
Rollback to 1.8GHz on the little cluster as 1.9GHz frequency is not
fully working for everyone will do more testing if you want that freq back

			
				
Install this Kernel on AOSiP
All fine so far seems very smooth and stable.
The temperature also looks good. I will continue testing but I think this is a promising project. Thank you:good::fingers-crossed:
Does it have under volting support?? So that reducing the voltages can also reduce temps while using the device at OC frequencies.
chintu1234 said:
Does it have under volting support?? So that reducing the voltages can also reduce temps while using the device at OC frequencies.
Click to expand...
Click to collapse
not yet I will try to implement it on a later update
fonfox said:
Install this Kernel on AOSiP
All fine so far seems very smooth and stable.
The temperature also looks good. I will continue testing but I think this is a promising project. Thank you:good::fingers-crossed:
Click to expand...
Click to collapse
Thanks good to know it works on AOSiP Rom!
Gestures are not working on LOS 15.1 Shreesha's latest Build otherwise phone has become more snappier than before and no phone heating issue faced for a whole day
Good news! 1.5 builds for AOSP and latest LineageOS based ROMs are coming...
rahul9871 said:
Gestures are not working on LOS 15.1 Shreesha's latest Build otherwise phone has become more snappier than before and no phone heating issue faced for a whole day
Click to expand...
Click to collapse
Thanks for trying my kernel! What a surprise it worked on LineageOS I didn't expect that, I am compiling right now the 1.5 update that will work on LineageOS and AOSP.
Thanks for Update
It is a safety reason that the 1.9GHz stage for little is eliminated. With me the V1.4 ran without problems at 1.9GHz.
V1.5 little max frequenzie is now 1804MHz but its enough. Also min Step 302MHz is fine
Sot is fine with all time overclocked
V1.4 and last time with updated V1.5
fonfox said:
Thanks for Update
It is a safety reason that the 1.9GHz stage for little is eliminated. With me the V1.4 ran without problems at 1.9GHz.
V1.5 little max frequenzie is now 1804MHz but its enough. Also min Step 302MHz is fine
Click to expand...
Click to collapse
for me too it ran without problem, the reason is that it wasn't working for everyone. Some had bootloops. We'll see in the futur...
fonfox said:
Sot is fine with all time overclocked
V1.4 and last time with updated V1.5
Click to expand...
Click to collapse
How old is your phone?
shrimetal said:
How old is your phone?
Click to expand...
Click to collapse
Nearly 2 years but bsttery is fine
And this Screenshot is with half day wifi usage
Compared to stock kernel battery life on this kernel is equal or better.
I'm also do not gaming etc.
Which app to overclock?
VinX90 said:
Which app to overclock?
Click to expand...
Click to collapse
Kernel Adiutor from Playstore
Why you don't read the OP first Post
Thanks @ Pierre2324 for lastest version of your kernel. Gestures are working again on LOS 15.1
rahul9871 said:
Thanks @ Pierre2324 for lastest version of your kernel. Gestures are working again on LOS 15.1
Click to expand...
Click to collapse
Thanks to you for using my kernel!

Categories

Resources