(PnP&Thermals tweak)battery saving and better performance for m8 100% working[ 11/8] - One (M8) Android Development

(PnP&Thermals tweak)battery saving and better performance for m8 100% working[ 11/8]
I'm not the dev
1st of all thanks to @ivicask for making this awesome tweak
Original thread :> http://forum.xda-developers.com/htc-10/development/pnpthermals-tweak-customized-profiles-t3411860
This is the better battery saving and performance tweaks ever I face best battery life after flashing this tweaks
This tweak originally for m10 and it's available on venum hub and m10 development thread i was tested this and it's work perfectly on m8 without any issues so I decided to bring to m8 users
bugs
Sorry no bugs
change logs
[*]
8.11.2016
v19:Fixed CPU dosnt drop to lowest speed for some users/kernels
- Merged v18 balanced changes into performance profile
working on cm 14.1 and old or gpe base rom and aosp,lyrs
22.09.2016
v18Balanced changes only)
- Adjusted CPU scheduler load distributions and frequencies in order to fix some stutters,
but also to save power while phone is idle with screen ON (drops to lower frequencies faster)
- Fixed weird HTC bug where task migration gets stuck in loop and cause phone to heat up for no reason
- (thermal file)Make it a bit cooler on higher loads
- Minor fine tuning here and there..
29.08.2016
v17: Prevent cores going offline if running Android auto (fixes lag on screen off)
[*]- (Balanced)Tweaked 15+ various governor and boost settings for even more power savings
[*]- (Balanced)Added more appps for CPU limiting profiles
[*]- Allow 4 threads for oat proces if PlayStore in focus(faster app install)
[*]23.08.2016
[*]v16:Merged latest HTCs changes realted to PokemonGo thermals
[*]- Removed 50 -> 60 fps boost on touch on performance profile(60fps locked now)
[*]- Forced 60 fps for YouTube and Google videos on balanced profile
[*]- Tweaked thermal file on balanced profile for better performance
[*]07.08.2016
[*]v15:Balanced and Performance profile update
[*]- Fine tuned values
[*]- Big cores go offline during screen off for Performance profile
[*]- Tweaked low memory killer values on both profiles,
[*] prevents often app reloading, which is waste of time and battery.
[*]04.08.2016
[*]v14:Balanced and Performance profile update
[*]- Implemented dynamic swappiness
[*]- Default swappiness reduced from 60 to 30 (less writes to nand)
[*]- During app launch or touching screen event swappiness is reduced to 0
[*]- During screen off swappiness is set to default 60 so it can do its job when we are not using phone
[*]- Increased dirty_ratio to reduce even more writing to nand
[*]- Overall goal is to reduce I/O on NAND while using phone and in that way improve performance,
[*] but also improve battery by better utilizing the 4gb RAM that this device has.
[*]- Added more apps for CPU limiting profiles(balanced only)
[*]v13:
[*]-Merged with changes from 1.9x base
[*](Mostly fine tuning battery saving for various video chat programs)
[*]v12:Balanced profile changes
[*]- Added more commonly used apps for lower power CPU profiles
[*]- More fine tuning
[*]v11:
[*]- Fine tuned balanced profile to prefer a bit more battery life
[*]- Cleaned up aroma installer (wont create unnecessary Venom folders for non-Venom users)
[*]v10:Balanced profile rebuild
[*]- Merged and fine tuned/adjusted thermal configuration from performance profile
[*]- Should improve responsiveness and fix stuttering on some apps that happend before
[*]- changed around 100+ lines of code, lazy to write full changelog
[*]v9:TEST balanced profile update
[*]- Big cores will now go fully offline during screen off and while in Extreme powersaver
[*]- Lowered screen refresh rate while in Extreme powersaver(even more saving)
[*]- Max GPU speed limited to 214MHZ while in Extreme powersaver
[*]- Max GPU speed limited to 510MHZ while in powersaver
[*]- Reduced app launch boost MIN frequencies speeds to 1.3gz for all cores.
[*]v8: complete rebuild of performance profile
[*] - Added extra 560mhz frequency step between 630 and 510 for GPU throttling
[*] - Added 5 additional throttling steps for each CPU cluster per temperature
[*] - Prevent big cores dropping to 1.3ghz too soon which drops FPS in games.
[*] - Prevent killing one big CPU core too soon, instead 2 will run at half migration performance.
[*] - Everything fine tuned and balanced, 10+ FPS boost in most games compared to stock
[*]v7
[*]- 1.8x base compatibility update
[*]v6
[*]-Removed battery saving profile as balanced does such good job, both smoothness and performance!
[*]v5
[*]-Many changes to balanced profile
[*]-Lowered app launch Max CPU speed locking to more reasonable levels(Still ramps up to max if load demands)
[*]-Reduced input boost duration a bit
[*]-Governor will now drop CPU to lower speeds faster
[*]-Added more apps to lower CPU speed profiles.
[*]v4
[*]-Aroma installer fixes
[*]-BatterySaving profile fine tuning
[*] Quote:
[*]This addon is designed to save some extra battery, and reduce heat.Magic is done in 2 files:
[*]1:Thermal-engine is tweaked in order to provide much better sustained performance and cooler phone, without big impact on performance.
[*]2np file is another key component, its HTCs CPU/GPU/EMMC/MODEM and many more control engine.Here many tweaks where done, but gonna quickly list some of the important ones:
[*]-Per app control, automatically suspends 2 BIG cores, and runs on 2 low power ones, it also limits the GPU speed to lowest.This will do only for some most commonly used apps, like Sense Prism, Nova launcher, Apex, other HTC apps, various chat programs(hangouts, facebook, messanger, whatsap etc), YouTube and some more.. as those apps dont require a lot power.
[*]-Screen off is set to 2 low power cores for nice standby times
[*]-Power saver is tweaked to actually save some power and not just lower screen brightness
[*]-Extreme powersaver is also tweaked down to save even more power
[*]-Input boost frequencies are also lowered (CPU ramps up moment you touch screen)
[*]-And alot of other minor tweakups..
[*]Also its recommended not to change anything CPU/GPU related in any other apps, like EX and just let this files do the job for you.
[*]If for some reason you dont like this mod or have any problems with it, installer includes revert to stock option
[*]
[*]Compatibility
[*]All 1,8x and 1.9x based roms and kernels(even stock).
[*]Not compatible with 1.5 or below bases (will cause random crashes), use Version v8 for older 1.5x and 1.2x bases
.work
Only on sense based rom like srom ,viper,sky dragon and other cm,aosp,gpe lyrs
[*]Download
[*]Version v19
https://drive.google.com/file/d/0B8deuP4KW_MgOUdjZGI2dGttZmM/view?usp=drivesdk
install
[*]
[*]1 Put file into internal or external SD card
[*]2 goto twrp recovery
[*]3 chose file and hit install
[*]4 reboot system and enjoy your phone's new battery life
[*]5 if twrp offer you to install superSU do not install
[*]Screenshots
[*]
{
"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"
}
. . .

Flashed and testing, thanks[emoji106]
Inviato dal mio HTC One M8 utilizzando Tapatalk

kalel77 said:
Flashed and testing, thanks[emoji106]
Inviato dal mio HTC One M8 utilizzando Tapatalk
Click to expand...
Click to collapse
Welcome

Woot!This cant possible work good, M8 pnp is totally different and works with on-demand governor with cores hotpluging while htc 10 works with interactive, not to mention all the settings i did in PnP are tuned to snapdragon 820 cores and memory management of that device (4gb).
Alo thermal file may not work properly and cause device to overheat(may)
.
You should verify what governor is currently active, i think its just broken and reverting to some default kernel or system settings.
BTW, M8 CPU management is already amazing so i never did special pnp mod for it.

ivicask said:
Woot!This cant possible work good, M8 pnp is totally different and works with on-demand governor with cores hotpluging, not to mention all the settings i did in PnP are tuned to snapdragon 820 cores and memory management of that device (4gb).
Alo thermal file may not work properly and cause device to overheat(may)
.
You should verify what governor is currently active, i think its just broken and reverting to some default kernel or system settings.
BTW, M8 CPU management is already amazing so i never did special pnp mod for it.
Click to expand...
Click to collapse
I tested and all working gud mybe bcoz of m10 port and no heat issues unfortunately I have less heating issues now than before BTW nothing broken or reverted to and it's so smoothie thanks for ur effort

ivicask said:
woot!this cant possible work good, m8 pnp is totally different and works with on-demand governor with cores hotpluging while htc 10 works with interactive, not to mention all the settings i did in pnp are tuned to snapdragon 820 cores and memory management of that device (4gb).
Alo thermal file may not work properly and cause device to overheat(may)
.
You should verify what governor is currently active, i think its just broken and reverting to some default kernel or system settings.
Btw, m8 cpu management is already amazing so i never did special pnp mod for it.
Click to expand...
Click to collapse

Well the Developer Knows Best, because he did it and he know what exactly he did, so can be placebo or even if its work some parts will some parts not like u know HTC 10 have different Hardware specs.
My Other question related to the HTC BUG is do anybdy found a Solution Tweak for the well know HTC BUG mostly all M8 M9 Devices after the MM update suck on the Battery the phone die at 20% 20+ something % and losing all settings when start from scratch its frustrating bug Ive tryed 100 Different kind of Calibration nothing help me out to fix this problem. sometimes Die at 25% battery Sometimes die at 10% battery without a warning!

tsalta said:
Well the Developer Knows Best, because he did it and he know what exactly he did, so can be placebo or even if its work some parts will some parts not like u know HTC 10 have different Hardware specs.
My Other question related to the HTC BUG is do anybdy found a Solution Tweak for the well know HTC BUG mostly all M8 M9 Devices after the MM update suck on the Battery the phone die at 20% 20+ something % and losing all settings when start from scratch its frustrating bug Ive tryed 100 Different kind of Calibration nothing help me out to fix this problem. sometimes Die at 25% battery Sometimes die at 10% battery without a warning!
Click to expand...
Click to collapse
Well this is a Battery problem not a bug I had same problem before i replaced battery so I think u have to change battery once

sayad1 said:
Well this is a Battery problem not a bug I had same problem before i replaced battery so I think u have to change battery once
Click to expand...
Click to collapse
Well i was thinking the same way untill i realize this heppand imideately after flashing MM and after this found out hundred of people with M8 as well M9 have absolutely the same issue stright after the MM update so this cant be co incident also i did chek my battery with several tools its in good health.
thats why i think its a HTC Bug.

tsalta said:
Well i was thinking the same way untill i realize this heppand imideately after flashing MM and after this found out hundred of people with M8 as well M9 have absolutely the same issue stright after the MM update so this cant be co incident also i did chek my battery with several tools its in good health.
thats why i think its a HTC Bug.
Click to expand...
Click to collapse
Did you replace battery I think u have to do if you believe trust me in my honest opinion it's battery problem my brother have same phone and he did same way like me so once u have to do . Before replacing battery I did all possible thing but nothing helped like celebration and more but finally get success on battery replacement

tsalta said:
Well the Developer Knows Best, because he did it and he know what exactly he did, so can be placebo or even if its work some parts will some parts not like u know HTC 10 have different Hardware specs.
My Other question related to the HTC BUG is do anybdy found a Solution Tweak for the well know HTC BUG mostly all M8 M9 Devices after the MM update suck on the Battery the phone die at 20% 20+ something % and losing all settings when start from scratch its frustrating bug Ive tryed 100 Different kind of Calibration nothing help me out to fix this problem. sometimes Die at 25% battery Sometimes die at 10% battery without a warning!
Click to expand...
Click to collapse
Only way you can try calibrate battery is by draining it fully until you can't even turn it on back via power button, than plug charger and leave it turned off while it charges to full. If it doesn't help its bad battery, as my sisters M8 works just fine with latest android and shuts down on around 1%..

GPE
Any chance of this coming to GPE roms?

sayad1 said:
View attachment 3912178
Click to expand...
Click to collapse
Hmm.
Sent from my HTC6525LVW using Tapatalk

Yap! Confirmed made mine faster ??
TIA @sayad1 and @ivicask ?

Can someone give me outputs of this shell commands while running this mod, also mention if your on stock or custom kernel.
Code:
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
cat /sys/devices/system/cpu/cpu2/cpufreq/scaling_available_frequencies
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
cat /sys/class/kgsl/kgsl-3d0/gpu_available_frequencies
cat /sys/devices/system/cpu/cpu2/sched_budget
cat /sys/devices/system/cpu/cpu0/sched_budget
cat /sys/module/lowmemorykiller/parameters/minfree
cat /proc/sys/kernel/sched_upmigrate
cat /sys/devices/system/cpu/cpu2/cpufreq/interactive/target_loads
cat /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads
cat /sys/class/mmc_host/mmc0/clk_scaling/enable
cat /sys/power/pnpmgr/apps/activity_trigger

We need this on GPE please

ivicask said:
Can someone give me outputs of this shell commands while running this mod, also mention if your on stock or custom kernel.
Code:
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
cat /sys/devices/system/cpu/cpu2/cpufreq/scaling_available_frequencies
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
cat /sys/class/kgsl/kgsl-3d0/gpu_available_frequencies
cat /sys/devices/system/cpu/cpu2/sched_budget
cat /sys/devices/system/cpu/cpu0/sched_budget
cat /sys/module/lowmemorykiller/parameters/minfree
cat /proc/sys/kernel/sched_upmigrate
cat /sys/devices/system/cpu/cpu2/cpufreq/interactive/target_loads
cat /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads
cat /sys/class/mmc_host/mmc0/clk_scaling/enable
cat /sys/power/pnpmgr/apps/activity_trigger
Click to expand...
Click to collapse
@ivicask
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor <
ondemand
system/cpu/cpu0/cpufreq/scaling_available_frequencies <
268800 300000 422400 652800 729600 883200 960000 1036800 1190400 1267200 1497600 1574400 1728000 1958400 2265600 2457600
system/cpu/cpu2/cpufreq/scaling_available_frequencies <
/system/bin/sh: cat: /sys/devices/system/cpu/cpu2/cpufreq/scaling_available_frequencies: No such file or directory
system/cpu/cpu0/cpufreq/scaling_available_governors <
tripndroid smartassV2 lagfree dancedance intellidemand wheatley adaptive intelliactive interactive conservative ondemand userspace powersave lionheart performance
cat /sys/class/kgsl/kgsl-3d0/gpu_available_frequencies <
600000000 578000000 462400000 389000000 330000000 200000000 100000000
cat /sys/devices/system/cpu/cpu2/sched_budget <
/system/bin/sh: cat: /sys/devices/system/cpu/cpu2/sched_budget: No such file or directory
at /sys/devices/system/cpu/cpu0/sched_budget <
/system/bin/sh: cat: /sys/devices/system/cpu/cpu0/sched_budget: No such file or directory
at /sys/module/lowmemorykiller/parameters/minfree <
10240,15360,22528,35840,49152,67584
[email protected]_m8:/ $ cat /proc/sys/kernel/sched_upmigrate
/system/bin/sh: cat: /proc/sys/kernel/sched_upmigrate: No such file or directory
stem/cpu/cpu2/cpufreq/interactive/target_loads <
/system/bin/sh: cat: /sys/devices/system/cpu/cpu2/cpufreq/interactive/target_loads: No such file or directory
stem/cpu/cpu0/cpufreq/interactive/target_loads <
/system/bin/sh: cat: /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads: No such file or directory
cat /sys/class/mmc_host/mmc0/clk_scaling/enable <
0
cat /sys/power/pnpmgr/apps/activity_trigger <
I am on ElementalX Repack 7.00.11

ivicask said:
Can someone give me outputs of this shell commands while running this mod, also mention if your on stock or custom kernel.
Code:
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
cat /sys/devices/system/cpu/cpu2/cpufreq/scaling_available_frequencies
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
cat /sys/class/kgsl/kgsl-3d0/gpu_available_frequencies
cat /sys/devices/system/cpu/cpu2/sched_budget
cat /sys/devices/system/cpu/cpu0/sched_budget
cat /sys/module/lowmemorykiller/parameters/minfree
cat /proc/sys/kernel/sched_upmigrate
cat /sys/devices/system/cpu/cpu2/cpufreq/interactive/target_loads
cat /sys/devices/system/cpu/cpu0/cpufreq/interactive/target_loads
cat /sys/class/mmc_host/mmc0/clk_scaling/enable
cat /sys/power/pnpmgr/apps/activity_trigger
Click to expand...
Click to collapse
R u going to do some changes for m8 hope ?

As expected, flashing HTC10 PNP breaks PNP and almost none of my settings are active, it still runs ondemand while entire htc10 pnp is coded to work with interactive...
I dont feel like taking sisters M8 to work on this, its not even rooted... or bootloader unlocked..
And as i said, i find M8 governor already perfectly fine coded HTC side..

confirmed working great on jw 5.4.0 A9 port.. battery lasted longer
thanks a lot..waiting for Blur Os new stable port

Related

[KERNEL][PRO] LuPuSv3 [CM9 BASED][LINARO][UPDATED-17-08-12][WiFi-FIXED]

LuPuS 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"
}
Built with Linaro
Has added init.d support
LuPuS-PRO-STOCK KERNEL
Hi I know I haven't updated this in a long time so going to change it. The problem was the wifi but finally I got it fixed with the help from FXP - Jerpelea
and of course my trusty tester DYMPY been trying to get wifi going on this the last week lol anyway done now
so what i'm going to do is just update this by the end of the week to add everything else in.
So here is whats added so far ------------
What Works --
Wifi - (flash modules)
Data
Camera
Panorama
Video Recording (720p now works)
Video Playback
Front Camera
Bluetooth
Everything Else that works on FXP
What doesn't work --
Anything that doesn't work on FXP
Added Governors --
brazillianwax
smartass
Smartassv2
Savagedzen
Smoothass
Scary
InteractiveX
Minmax
Userspace
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.
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
- Superbad
- a "superbad" super smooth rendition of a highly optimized "smartass" governor!
- Darkside
- a "slightly more agressive smart" optimized governor!
-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.
-Virtuous
Virtuous is a modded smartassV2 which gives even more battery time then smartassV2
Added Io-scheduler --
VR io-scheduler - 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.
- SIO- Simple IO-Scheduler
- Updated and Changed Zram (thanks to faux123)
- Updated and changed LZO compression and decompression = Double increase in performance
- Added Init.d Support
- Added tweaks on boot
-Overclocked to 2ghz--- Stable up to 1.9ghz, 2ghz may just reboot device, although I do not recommend O/C for long at high settings,
if you damage your phone I am not responsible
- Supports CIFS
- Built with LINARO
Added in v3
-SLQB - (SLAB allocator with Queue)-(both)
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).
- New Governor - Intellidemand2
- BFQ IO-Scheduler
- Cleancache
- Increased Wifi-Signal
- Tweaks for smoother & quicker UI :victory:
- 0% Battery Patch - Thanks to Bazoocaze
I would like to say a big thanks to -
FXP - Sources/help with wifi (thanks Jerpelea)
Cyanogenmod - Sources
DooMLoRD - for patches and all the work he has done for Xpeeria's
xeozus
NobodyAtAll
Faux123
Erasmus
Leedroid
Jerpelea
Anyone missing please PM me
Dympy - For helping me test alot
Dexmorr - testing
tempest918 - For the New Logo
Please Click Thanks :good:
Sources here
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.
Thank you to members -
~ Frenchdroid
~ [user_99]
For your kind donations
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"]#if[/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 your [COLOR="DarkRed"]problems[/COLOR]
[COLOR="Magenta"]#endif[/COLOR][/COLOR]
LuPuSv3 Downloads
LuPuSv3-CM9-PRO.img
MD5 = AF25D5164DA13973EA465D25C6AF47B0
WiFi-FIX-LuPuSv3-PRO-CM9.zip
MD5 = 39BD6F753AF6E68D955E9504BA48E015
Some people are having boot problemw with v3 if you are try this
LuPuSv3.1-cm9.img
LuPuSv3.1-cm9-wifi-fix.zip
Also added CIFS support....
What is CIFS???
Server Message Block (SMB) or Common Internet File System (CIFS) are normally used to provide shared access to files on a network, mostly involving computers running MS Windows.
It allows you to conveniently mount/unmount your network accessible file resources and access the files transparently via your favourite Android app (playing music / videos, accessing documents etc.) Settings are stored on your SD card with permissions to write also to your SD card.
Instructions
- extract cifsfile.zip
- save cifs,ko file to your sdcard
- in terminal emulator
- cd sdcard
- su
- insmod cifs.ko
Not download CifsManager or similar app and configure it
- zRam is not enabled by default to enable it flash the wedgess-zram-enabler.zip in CWM
- If for whatever reason you want to disable Zram after you have flashed the .zip, just go to ect/init.d and delete 00zram
People will ask so i'll just post it here---------to check if zRam is enabled go to terminal emulator or similar and type
Code:
free
or alternatively
Code:
cat /proc/swaps
Please Click Thanks :good:
Will try and report as soon as wifi works
Sent from nowhere
HI,
Is this kernel can be used with CM10. If not, can you post one that can be used with.
Thanks
Tried it, no bootsplash, don't work with CM10.
can we get a stock rom based lupus kernel with jimbo77's (arcknight) kernel's lcd voltage lowering, wifi voltage lowering tweaks, camera-memory lowering (among some other kernel tweaks he has on there) as well as KTG anzu kernel's 2d drawing and touchscreen drivers?
also, it seems that at low vfs values and low sampling rate, arcknight does random reboots ;; while ktg-anzu has aweful battery life. even during sleep. plus, i am able to run the ktg-anzu stable at lower voltages (825 for 122mhz and 1000 for 1024) than i am able to run the arcknight stably. ktg-anzu's kernel's memory usage, strangely, moves between 20mb and over 150mb --- it has very recently started staying over 130mb after happily working at about 20mb (at least when i'd check it it'd be at 20) for weeks.
arcknight and ktg both seem to have certain awesome aspects of them while neither of them is complete --- plus, they both seem dead now.
all arc users are now relying on you.
This kernel not working for me only blank screen and does nothing does not even go to recovery/ aroma by pressing either of the buttons
Sent from my Arc S using xda premium
If there's one thing I've learnt, it's that it's never lupus.
Yay finally als disabled! btw will this support undervolting?
mekayzer said:
HI,
Is this kernel can be used with CM10. If not, can you post one that can be used with.
Thanks
Tried it, no bootsplash, don't work with CM10.
Click to expand...
Click to collapse
No its only for CM9 as stated JB is to unstable at the moment
hootnath said:
can we get a stock rom based lupus kernel with jimbo77's (arcknight) kernel's lcd voltage lowering, wifi voltage lowering tweaks, camera-memory lowering (among some other kernel tweaks he has on there) as well as KTG anzu kernel's 2d drawing and touchscreen drivers?
also, it seems that at low vfs values and low sampling rate, arcknight does random reboots ;; while ktg-anzu has aweful battery life. even during sleep. plus, i am able to run the ktg-anzu stable at lower voltages (825 for 122mhz and 1000 for 1024) than i am able to run the arcknight stably. ktg-anzu's kernel's memory usage, strangely, moves between 20mb and over 150mb --- it has very recently started staying over 130mb after happily working at about 20mb (at least when i'd check it it'd be at 20) for weeks.
arcknight and ktg both seem to have certain awesome aspects of them while neither of them is complete --- plus, they both seem dead now.
all arc users are now relying on you.
Click to expand...
Click to collapse
I can see if I can get the stock kernel I have from the play working on the arc.had no problems with it on the play.I don't have an ARC so need you all to test it for me.
PAVNEET101 said:
This kernel not working for me only blank screen and does nothing does not even go to recovery/ aroma by pressing either of the buttons
Sent from my Arc S using xda premium
Click to expand...
Click to collapse
It 100% works in the ARC pro as I said I don't have an ARC so can't test
Phrenks said:
If there's one thing I've learnt, it's that it's never lupus.
Click to expand...
Click to collapse
Huh???
Sent from my Xperia Play
Hmm, seems like an interesting kernel, would love to try this one out on my Pro.
However, I only see an .img labeled ARC, so no image for Pro yet?
Dympy.
dympy said:
Hmm, seems like an interesting kernel, would love to try this one out on my Pro.
However, I only see an .img labeled ARC, so no image for Pro yet?
Dympy.
Click to expand...
Click to collapse
That one is for PRo buddy
Sent from my Xperia Play
Awesome!
Going to download, flash and report
Dympy.
EDIT:
Just flashed it, and there's some crazy sh*t happening here..
It seems CWM is simultaneously running with android itself..
Each time I press a hardware button my screen starts flickering between CWM and my Android screen.
It does work, except for wifi, it can't turn on for some reason.
Going to try wiping some stuff and see if it gets fixed.
EDIT2:
Nope, couldn't wipe a thing because I couldn't get into CWM.
Both the home key as the volume down key booted into Aroma, never used it but it was awesome!
Hope you can help, I'll dig up some logcats if I can and I'll retry when I get home, kinda need my phone for developing at work
EDIT3:
Took out the logcat where I tried turning WiFi on, see attachment.
dympy said:
Awesome!
Going to download, flash and report
Dympy.
EDIT:
Just flashed it, and there's some crazy sh*t happening here..
It seems CWM is simultaneously running with android itself..
Each time I press a hardware button my screen starts flickering between CWM and my Android screen.
It does work, except for wifi, it can't turn on for some reason.
Going to try wiping some stuff and see if it gets fixed.
EDIT2:
Nope, couldn't wipe a thing because I couldn't get into CWM.
Both the home key as the volume down key booted into Aroma, never used it but it was awesome!
Hope you can help, I'll dig up some logcats if I can and I'll retry when I get home, kinda need my phone for developing at work
Click to expand...
Click to collapse
Hhhmmmmm strange maybe CWM 6 doesn't work with the arc I'll switch to v5.yes log cats would be good .......anyone else having this problem??????
Sent from my Xperia Play
You say it's for the Arc, but when I asked if it would work for Pro, I asked there's only 1 download available in the OP and that one was labeled ARC, you replied yes.
I think this kernel isn't compile for the Pro, but only Arc specific.
It's all a bit confusing since the Pro doesn't have his own forum.
By the way, I added the first LogCat, for the WiFi bug, in the post you quoted.
Dympy.
dympy said:
You say it's for the Arc, but when I asked if it would work for Pro, I asked there's only 1 download available in the OP and that one was labeled ARC, you replied yes.
I think this kernel isn't compile for the Pro, but only Arc specific.
It's all a bit confusing since the Pro doesn't have his own forum.
By the way, I added the first LogCat, for the WiFi bug, in the post you quoted.
Dympy.
Click to expand...
Click to collapse
Sorry ye the person who was testing was using ARC PRO so that's what it works for as of now.will it still not boot with CWM 6 it worked for the person testing it?? That's what I thought the log at was for. Wifi won't work yet because of the modules. I will try fix this once I get home.
Sent from my Xperia Play
Okay, I think I got a bit confused now.
The phone we're talking about is the PRO, since xperiap (I believe) tested it, it must work on my phone.
Anyway, Is there something I have to wipe after flashing this kernel, because I wiped absolutely nothing the first time I flashed it.
And yes, CWM worked the first time, it booted into it when I just flashed the Kernel.
Dympy.
dympy said:
Okay, I think I got a bit confused now.
The phone we're talking about is the PRO, since xperiap (I believe) tested it, it must work on my phone.
Anyway, Is there something I have to wipe after flashing this kernel, because I wiped absolutely nothing the first time I flashed it.
And yes, CWM worked the first time, it booted into it when I just flashed the Kernel.
Dympy.
Click to expand...
Click to collapse
Ok so it booted into CWM while holding the the home key?? Ye xperiap is using the ARC-PRO and he said he's having no problems it boots everytime for him, I'm not sure if he wiped anything but I never usually wipe anything when flashing kernels so don't think that could be the problem, so it just wont go past the boot screen for you, correct??
wedgess said:
Ok so it booted into CWM while holding the the home key?? Ye xperiap is using the ARC-PRO and he said he's having no problems it boots everytime for him, I'm not sure if he wiped anything but I never usually wipe anything when flashing kernels so don't think that could be the problem, so it just wont go past the boot screen for you, correct??
Click to expand...
Click to collapse
O.K mate you are confused and your confusion is confusing others.ARC and Pro are two diffrent Phones.There is no ARC-PRO.there is:
Xperia Arc
Xperia Pro
This kernel is for pro.
manasgirdhar said:
O.K mate you are confused and your confusion is confusing others.ARC and Pro are two diffrent Phones.There is no ARC-PRO.there is:
Xperia Arc
Xperia Pro
This kernel is for pro.
Click to expand...
Click to collapse
^^
Sent from my Xperia Play
Thank you.
That was indeed the part confusing me because the dev kept calling it the Arc Pro.
And no, both home and volume down button boots into Aroma, not CWM.
The first time I booted it went into CWM automatically.
After that it booted, but I had CWM flashing through my normal android screen each time I pressed a button which was also linked to a CWM function (vol up/down, home, back, etc.).
But like I said, almost home and I'm going to do a retry then
Hope you get wifi modules fixed soon.
Dympy.
Sent from my Pro using xda premium

[KERNEL][3.0.31][HDMI][FULL HD][GUIDE 1.8]JBX-Kernel Hybrid [1,5ghz]

/// JellyBeanX-kernel ///​
DISCLAIMER
Me, XDA-Developers.com and anyone else doesn't take any repsonsibilty for damages on your device!
Rooting your device will void your warranty!
Don't play with settings you aren't familiar with, you could burn your device!!
Click to expand...
Click to collapse
READ THIS: READ BEFORE YOU ASK and HELP TO KEEP THIS THREAD MORE CLEAN! BUT ALSO BETTER ASK ONCE MORE BEFORE YOU MESS UP YOUR PHONE! If you find something missing in this OP/FAQ, please PM me and I will add it. Thank you!
This is a custom kernel mostly based on Motorola's 3.0.8 Hybrid Kernel which was initiated first by the STS-Dev-Team (Hashcode, Dhacker).
I created this kernel for my main goal: BATTERY LIFE! Like many other custom kernels this one also supports several performance related features like OVERCLOCKING, UNDERVOLTUNG, GPU CONTROL, CPU OPTIONS, RAM TWEAKS, etc etc... But my main goal was not to bring up a kernel which is fast as hell - I want to bring up a kernel that is fast + a long lasting battery! Many custom kernels are also very fast but they don't save battery. JBX-Kernel is supposed to push your device to great speed while being on low power settings. I hope you enjoy it!
If you want to support me and my work just leave me a beer.
You can find the FAQ at the bottom of this post!
LATEST CHANGES
FULL HD Video Recording is working now!!! See Downloads section below!
--> DETAILED CHANGELOG JBX-kernel Hybrid 4.4 <--
Kernel Guide by Placca 1.8!!
Check the FAQ section at the bottom of this post to download it! It will make many things easier for you and help you to understand the kernel and its features!
FEATURES
JBX-Kernel Hybrid
Battery Friend toggle (a battery friendly mode)
Intelli-Plug (Kernel side replacement for msm MPDecisions) by Faux123 + patches by me (no hotplugging when screen is ON)
Dynamic Hotplug: Second core will be turned off ONLY while screen is off - independent from selected governor. (Not needed when using Intelli-Plug)
Optimized OPP Table for smooth CPU scaling
Frequencies: 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300
Modifed Smartreflex driver (Custom Sensor for detecting n-Value).
Smartreflex Tuning Interface: Set min/max calibrated voltage
Overclocking using Live OC (mine runs stable at a maximum frequency of 1,498ghz!)
hwmod, uart, IRQs - cleanups from pre-kexec config to safe power
CPU: lower voltages for CORE and IVA. Give CORE the abbility to scale up to higher voltage if needed
Added IVA_NITROSB
Dynamic fsync control: FSYNC interval is dynamic depending on screen state (SCREEN OFF: synchronous, SCREEN ON: asynchronous)
HTC's Asynchronous Fsync port - read explanation below*
Dynamic page-writeback: Page writeback interval is dynamic depending on screen state.
Frandom v2
JRCU / Tiny RCU (currently JRCU in use)
Raised voltage limits for mpu a bit
Raised the temperature limits from 64c* to 74c* (degrees)
optimized CRC32 algorithm (better code generation)
RW Readahead dynamically depending on storage device (automatic detection of the best value)
zRAM support
GPU has 4 scaling steps and OC to 384mhz (Base freq: 102 mhz --> 154 mhz, 307 mhz, 384 mhz)
GPU C4 states / GPU Control (Governors, Frequencies)
Multicore Power Saving Mode Control
ARCH Dependant Power feature
Gamma Control
Front Buffer Delay Control (draw in x msecs on early suspend)
Screen/Display: Modified OMAPDSS for sharpness and lightning colors
OMAPDSS: Added variable clock rate and OPP - allows the screen to scale down power and voltage
lowmemkiller: Heavy modified for R/W Speed and efficient performance
ZCACHE, ZSMALLOC, XVMALLOC backported from 3.4, 3.7 and 3.10 (ZCACHE currently not in use)
Custom Voltage Support
IO-Schedulers: SIOPlus, Fifo, Row, VR, Noop, Deadline, CFQ, BFQ
ROW Scheduler is heavily tweaked to be the fastest scheduler ever!
CPU: More Governors
Deep Idle
ARM Topology
Many improvements in overall OMAP PM
SELinux permissive
GREAT performance!
battery life!
Support for Trickster Mod Kernel Control App (Download from Gplay)
*]Too much stuff to list here. See "Sources" below and check my Github
* HTC's Asynchronous Fsync and Dynamic Fsync:
Asynchronous fsync (called "afsync" or "async fsync") from HTC is ported into this kernel. By default it's enabled and dynamic fsync is disabled (and as well it isn't needed anymore). But just to test a little bit around to see which one of both features is the better one - for battery & performance. But currently Tricktser Mod doesn't support a toggle for afsync, so I had to find another way to use Trckster. Finally I did it like this:
The dynamic fsync toggle in Trickster Mod is now serving both functions - the dynamic fsync AND the asynchronous fsync! How? By default Dynamic Fsync is disabled, and Afsync is enabled. If you now enable Dynamic fsync using the toggle, Afsync will be automatically disabled, so both functions are not conflicting each other - and this way we have a working toggle for both of them.
CAUTION
This is a work in progress! Some of the current features are still not in final stat. If you are facing issues report back here and DON'T spam the threads of the rom you're using!
Be careful with some settings such like Voltage and Overclocking!!! If you aren't experienced with these things, dont play with 'em!
Click to expand...
Click to collapse
REQUIREMENTS
NOTE: This will NOT work on Stock(-based) Roms!!
Rooted device
Must use a Kexec Rom (CM, AOKP, AOSP)
Recovery (BMM, SS)
REMOVE any kernel modules you used before
DEACTIVATE ANY CPU tweaks, onboot settings etc otherwise your phone may not boot!
CAUTION: The kernel needs a clean setup related to CPU tweaks / Settings, etc...Keep your device as clean as possible regarding to Tweaks, CPU special settings, etc. The Kernel brings its own CPU settings and after you can boot it succesfully, you can set it like you want!
This kernel may not work on all roms! Check and report.
TO DO LIST
- Fix bugs
INSTRUCTIONS
NOTE: CLICK here for a detailled Installation Guide (about the Aroma Installer, the features to select and more)
Download zip file from below
Reboot into recovery
Flash the kernel (BMM users: DON'T use the "Flash Kernel" Option! This is a usual zip file!)
Reboot
Download Trickster Mod App from Gplay! Read the FAQ to learn about playing with kernel features!
Enjoy!
NOTE: For updates you can use the built-in OTA UpdateMe App!
DOWNLOAD
NOTE:
Only for Android 4.4!
JBX-Kernel 3.0.8 Version:
2.x == > Android 4.4
JBX-Kernel 3.0.31 Versions:
3.x == > Android 4.4
TEST BUILDs
Test builds are potential prerelease builds which need some more testing before pushing to all users.
CAUTION: Should be stable mostly! But use at your own risk though!!
---> TEST BUILDS [CF] <---
XPERIMENTAL BUILDs
These builds include features without promises to work.
CAUTION: There is no promise that these version are stable/working/whatever! Use at your own risk!!
---> XPERIMENTAL Builds [Dev-Host] <---
---> XPERIMENTAL Builds [CF] <---
Click to expand...
Click to collapse
Something went wrong?
If you think you have set wrong "on-boot-values" in Trickster Mod flash this:
TRICKSTER RESET: http://dtrailer.de/kernel/trickster_reset.zip
FAQ
CAUTION: This FAQ and the whole OP, additional informations about Governors, IO Schedulers and detailed informations about the usage of Trickster Mod and this kernel can be viewed in the awesome Kernel Guide by Placca!
Kernel Guide 1.8
PDF: http://www.mediafire.com/download/7zaddcmvtxfk9ry/JBX+Kernel+Guide_v1.8.pdf
CHM: http://www.mediafire.com/download/g3ck1bf1k3a3j38/JBX+Kernel+Guide_v1.8.chm
CLICK THE BUTTON BELOW TO OPEN THE FAQ!
Please check the following points if you don't know how to use the features of the kernel or you are facing any kind of issues.
INDEX
1. Kernel Features
1.1 Smartreflex (Turn ON/OFF, adjust min/max range)
1.2 Live OC (Realtime Overclocking)
1.3 Custom Voltage (EMIF)
1.4 GPU Overclock & GPU Governor (UPDATED)
1.5 Gamma Control
1.6 Battery Friend
1.7 Suspend Governor (CURRENTLY DISABLED)
1.8 IVA Overclock
1.9 DPLL Cascading
1.10 HDMI toggle
1.11 Intelli-Plug
2. Issues
1.1 How can I change the smartreflex minimum/maximum voltage
What is Smartreflex?
SR is compareable with an CPU governor but not for scaling frequencies but for voltages. That means SR has a fixed range of voltage (min/max) and calculates the optimal voltage for each CPU frequency. In example on light use of the CPU it scales down to lower voltage - on heavy use it can sclae to higher voltage. This is an efficient system to save power! Compared to EMIF which uses the hardcoded voltages it saves more power because it's variable. EMIF cannot vary between the values.
This interface has a hardcoded range of 830mV min to 1450mV max. Usually there is no need to adjust these values but irt can be usefull in example when using high overclocked frequencies above 1,5ghz! Usually SR cannot handle frequencies above 1,5ghz and I have hardcoded the maximum range of 1,45mV which should allow SR to handle it. In prior times the users had to turn off SR when OCing above 1,5ghz which causes the CPU to eat more power. But you can try around and report your results.
CAUTION: Don't raise the maximum SR voltage too high! It can burn your board = no phone anymore! I recommend to not use higher values than 1490mV! As already mentioned: THe default value should be enough!
ANd also: USUALLY THERE IS NO NEED TO CHANGE ANYTHING ON SR! IF YOU DON'T KNOW WHAT YOU'RE DOING, PLEASE LEAVE IT ALONE!
Ok, now let's see how to do this:
Turn ON/OFF SR
1. Open Trickster Mod
2. Head to the "Specific section"
3. Scroll down to "Smartreflex"
4. You can toggle ON/OFF SR for each component (IVA, CORE, MPU)
Usually I recommend to keep SR ON because it saves power! But in some cases when overclocking the CPU (MPU) the device could freeze - whether you OCed too much or SR couldn't handle the frequency! In this case you can try to raise the vmax value of SR a little bit (CAREFULLY!) and try again. If it sitll freezes and you're sure that you didn't OC too much, turn SR OFF at least for MPU!
Maximum Voltage
Currently there is no app which supports the feature of adjusting the SR vmax value, because I wrote this feature some days ago.
But in the next Trickster Mod version this option will be supported!
example:
# To read the current vmax value. Replace XXX with one of the following:
sc_core - for core max sr voltage
sr_iva - for iva max sr voltage
sr_mpu - for mpu max sr voltage (mpu is most related for CPU scaling)
cat /sys/kernel/debug/smartreflex/XXX/vmax
# You will get an output, e.g. for mpu = 1450000 (1450mV)
# To set a new value, do the following command (replace XXX with a value like above - BE CAREFUL! USUALLY THE DEFAULT VALUE ENOUGH AND YOU CAN LEAVE IT UNTOUCHED!)
echo XXX > /sys/kernel/debug/smartreflex/XXX/vmax
Minimum Voltage
It's easy because Trickster Mod supports it!
1. Open Trickster Mod
2. Head to the "Specific section"
3. Scroll down to "Smartreflex"
4. Below each SR component (IVA, CORE, MPU) there is displayed a value (usually 830 default) which means this is the lowest scalable voltage for this component. You can try to decrease this value for the case you want to UV a bit more - or raise it a bit for the case you think that the set range is too low and causes freezes on your device.
1.2 How do I use Live OC (Live OVerclock)?
This feature allows you to overclock the CPU in realtime. It works with a multiplier value set by the user. The default multplier value is "100", which means: No OC! If you want to raise the OC frerquency, just raise this value step by step.
FOr my device the maximum working OC value is "111" which means the maximum frequency is running at 1498mhz!
NOTE: Keep in mind that you tunr Smartreflex OFF for higher freqs than 1500mhz - or raise the maximum SR voltage range for "MPU" a little bit and test if it works.
Ok, how to use Live oC in action:
Open Trickster Mod App and swipe to the tab "Specific". There you will find something like this:
Code:
MPU OC [100]
DON'T TOUCH THE "CORE OC" SECTION, IT WILL CAUSE FREEZES!
Now slowly increase the value "100" to something higher, e.g. "105". Tap the hook in the right upper corner to confirm. To see your new set of frequencies you can now whether close and restart Trickster Mod or just use any monitoring app like Cool Tool which will show your frequencies in real time. That's it!
CAUTION: You can damage your phone forever!!!! This feature allows you to set very high frequencies (also up to 2,0ghz...) - That DOESN'T mean that your phone can run these frequencies!
If your phone freezes or crashes you have probably set too high OC - or your voltage is too low.
1.3 How do I use Custom Voltage (EMIF)?
NOTE: This only adjusts the fixed voltage! When you have Smartreflex ON it can still vary! You have to see the bigger picture: This voltage value sets the "middle point" for voltages. Smartreflex is still able to increase or decrease the voltage. When Smartreflex is OFF the CPU will stay on this voltage you set here and probably eats also more power.
How does EMIF works together with Smartreflex:
Code:
-------
| CPU |
-------
|
------------------ ------------------
|Voltage 1015 mV | ---->| SMARTREFLEX ON| = 1015mV +/- "vmax"/"vmin"
------------------ -------------------
|
--------------------
|SMARTREFLEX OFF| ----> 1015mV FIXED! No changes!
-------------------
Thi smeans if you change the voltage for a scaling step (OPP) while SR is ON, SR will adjust the voltage from this value, means: mV-Value +/- SR vmin/vmax. WHen SR is OFF it will stay on this mV as a fixed value.
How to adjust the voltage?
Well, this feature can be used with all generic apps which are supporting voltage settings. But we are prepared well, you can adjust voltages also with the "Trickster Mod App".
When you open the app, head to the tab "Specific" and below the "Live OC Section" you will find your voltage table, which looks like this:
Code:
<-->
1200 [1398]
1000 [1388]
900 [1371]
...
..
..
Now just tap the arrows in the right upper above the first voltage value and just type or tap (per direction) a value, e.g. "-25". To apply it, confirm by tapping the hook in the right upper corner of your screen. That's it, your new voltage values are now set and applied. And also mind here: If your phone freezes you porbably have set it too low.
CAUTION: NEVER SET HIGHER VOLTAGE THAN 1490mv here!!!!! Or you might damage your phone FOREVER!
This voltage is not the same like Smartreflex! But it's still voltage! Just be carefull!!
1.4 How can I use GPU OC and GPU Governor?
GPU Overclock doesn't work like Live OC! You cannot really set custom frequencies for the GPU, but you can select and set the maximum frequency from a hardcoded range!
For the GPU there are the following available frequencies:
154mhz (FIXED!)
307mhz
384mhz
416mhz
The minimum frequency of 154 is FIXED! This means you cannot change it because the GPU needs a minimum speed to run with. But the kernel allows you to select the maximum speed. This can be usefull for playing games and also for saving power . In example when not playing games you don't need the GPU to run at 416mhz! Set it to 307mhz in this case and save power.
When you open Trcikster Mod and head to the "specific section tab", you will find "GPU MAX FREQUENCY" and it's currently set maximum frequency. Tap on it to select your preferred one:
- 154 Mhz
- 307 MHz
- 384 MHz
That's it. The new setting will be your new maximum GPU frequency.
Below there's another option called "GPU Governor". Just tap on it and select your prefered one.
NOTE: If you want to track current GPU frequencies and watch governor's behavior, just switch to Trickster's "Informations" - Tab and watch the frequencies clock.
1.5 How can I use Gamma Control?
What is gamma? The gamma setting sets the color range for the screen. You can compare it to the contrast. We all know that the touchscreen eats most of the power compaerd to all other components in a smartphone! A lower brightness causes less power consumption and a lower gamma or contrast range alos helps a little bit to save power.
In this kernel you can choose from a range of "5 - 10" while "5" is very bright while "10" is very dark. The default setting is "5" BUT CAUTION: Trickster Mod will display a range of "0" to "10" and the default setting will be shown as "0". This is caused by the fact that this feature was ported from the Gnex device where you can choose from a higher range. The only sideeffect is that the values "0" - "5" won't show any difference.
How to set the gamma value?
Well, once again open Trickster Mod and swipe to the tab on the right end. Just select your preferred value by using the slider.
Alternately you can use sysfs by terminal or adb:
OMAP Gamma interface:
echo i > /sys/devices/platform/omapdss/manager0/gamma
Replace i with 0-10 of your choice.
1.6 What is "Battery Friend and how to use it?
Battery Friend is a simple toggle (ON/OFF) which sets your device into a battery friendly mode without the need to play with all settings in Trickster Mod /sysfs until you find a good setting. In fact it does the job for you.
What does it affect?
NOTE: Doesn't lock anyx frequencies anymore!
locks dynamic Fsync enabled
locks Fsync disabled
Doesn't allow any OC (Live OC will not have any effect, Core OC is not allowed in this kernel)
Increases the dirty ratio interval to 90% (starts working at this value)
Enables Dynamic Hotplug: This doesn't allow hotplugging during device is active - and it will always turn CPU1 OFF during suspend! It also prevents from conflicts when user uses a hotplug governor (which isn't a good idea though) - but hotplug governors are causing higher battery drain!
Dynamic Page-writeback always enabled
How to toggle Battery Friend:
For now the only way is via terminal, adb shell or root explorer (text editor)
For terminal and adb:
Code:
echo 1 > sys/kernel/battery_friend/battery_friend_active /* Enable */
echo 0 > sys/kernel/battery_friend/battery_friend_active /* Disable */
For Root Explorer
Open Root Explorer
Navigate to sys/kernel/battery_friend/
Open "battery_friend_active" with Text Editor
Change "0" to "1" and safe the file to enable
Change "1" to "0" and safe the file to disable
1.7 Suspend Governor Control (CURRENTLY DISABLED)
Suspend Governor Control is a kernel module written by me. You can use it to set your preferred Screen-Off-governor.
For now it's only supported by sysfs (Trickster Mod will support all my current and upcoming features as soon as it gets updated with its new UI mode!
How to set suspend governor
Open a terminal or use adb shell
Code:
su
echo "x" > /sys/kernel/suspend_gov/suspend_gov
Replace x with one of these values:
0 = Ondemand
1 = Ktoonservative
2 = Conservative
3 = OndemandX
NOTE: No matter what governor you use for suspend mode, if Battery Friend is enabled the second core will be turned off during suspend!
1.8 IVA Overclock
What is IVA OC?
IVA OPPs are controlling the CPU load for sound events. It could be useful (in some cases) when you get sound related laggs. Just set the maximum frequency to highspeed. This will allow more CPU power for sound events but also will cause higher battery consumption.
How to use IVA OC?
If you want to check the current IVA frequency. Just type in Terminal or ADB:
Code:
cat /sys/devices/system/cpu/cpu0/cpufreq/iva_clock
You will get an output like this:
Code:
132 Mhz
2. You can whether enable IVA highspeed: 130 - 430 Mhz ["1"] or enable IVA normal speed: 130 - 332 Mhz ["0"]
320 Mhz max: echo "0" > sys/devices/system/cpu/cpu0/cpufreq/iva_freq_oc
430 Mhz max: echo "1" > sys/devices/system/cpu/cpu0/cpufreq/iva_freq_oc
1.9 DPLL Cascading
DPLL: Davis–Putnam–Logemann–Loveland (DPLL) algorithm
To get more info about this please see wiki
But to sum it up shortly: It helps to use/stream media (music) in a low power mode.
NOTE: DPLL Cascading will be available to be switched easily via Trickster Mod App soon!
How to switch DPLL?
DPLL is ENABLED by default!
Open Trickster Mod -> Speicific Tab --> DPLL (soon)
sysfs:
Turn off:
Code:
echo 0 > /sys/kernel/dpll/dpll_active
Turn on:
Code:
echo 1 > /sys/kernel/dpll/dpll_active
1.10 HDMI toggle
Some users are facing a RAZR-sepcific problem: HDMI cable is detected, even though there is no cable plugged!
Therefor I included a toggle to switch HDMI wether ON or OFF. Additinally there's an init.d script included within the AROMA Installer you can select during the installation of JBX-Kernel.
To enable/disable HDMI on-the-fy:
sysfs:
Turn off:
Code:
echo 0 > /sys/kernel/hdmi/hdmi_active
Turn on:
Code:
echo 1 > /sys/kernel/hdmi/hdmi_active
1.11 Intelli-Plug
For intelli-plug hotplugging is now only allowed when the device enters sleep.
To enable hotplugging universally just change the value of the following entry whether to 1 (on) or 0 (off):
Code:
sys/module/intelli-plug/parameters/int_hotplug
2. If anyone has the following issues:
Issue
Media Process FC
No SD-Card in File Explorer
My CPU Settings (frequencies, etc) won't be saved (it sets itself back to Kernel default after screen off)
My phone freezes/reboots always when I try to set options in Trickster Mod
The device is lagging very hard
Solution
Media FC: Open App settings, head to "Download Manager" and "Media Storage" and hit the "delete data" button. Reboot. Now it shouldn't give any FCs anymore and after a little bit of waiting it will find all Media (Pictures, Videos, etc..)
No SD-Card: Reboot into recovery, go to "Mounts & Storage", tick "mount int" or "mount ext".
USB: Make sure the screen is ON while plugging the cable in.
CPU Settings: This is a bug which cannot be solved at the moment. Temporary solution: In Trickster Mod just activate the "Frequency Lock" and your settings will persist.
Trickster Mod:: Open App settings, Trickster Mod and select "uninstal updates". Now it should work.
Crashes, Freezes, lagging, something doesn't work, etc
There are too many reasons which could cause crashes! So here is a checklist for you to look for. Check each point and try the following workaround:
- Your rom has CPU tweaks (e.g. Kernel modules, init.d folder, etc)
- You have set custom CPU settings (e.g. custom frequencies with apps like No-Frills CPU Control, Set-CPU, Antutu, etc...)
- You have undervolted too low
- You have overclocked too high
- You have applied higher "Core OC" value in Trickster Mod App
- You are running any other kernel tweaks which are regarding to the CPU and/or performance (e.g. Kernel modules by Whirleyes eventually set by init.d, etc..)
- After setting some settings (e.g. in Trickster Mod) your device doesn't boot anymore
- adb doesn't work / shows only "device offline"
- You are facing hard lagging
If any point here matches your setting, please revert from it:
- Remove any CPU init.d script from /System/etc/init.d
- Uninstall any CPU controling app (e.g. Set-CPU, No-Frills, etc..)
- Remove all extra kernel modules from system/lib/modules (e.g. cpu_control.ko, cpufreq_smartass2.ko, etc..)
- Unset any custom settings from any other kernel / CPU - tweaking app which is NOT Trickster Mod
- Maybe your governor causes issues. Hotplug is know for bugs at the moment...I'm going to fix it..
- NEVER set your CPU Settings (e.g. in Trickster Mod App) on boot!!!! - before you aren't sure that your settings are safe!!!
- You may flash the kernel again after reverting related settings
- to make adb work / show device online, download latest SDK platform-tools and confirm access on device (4.2 security feature of Android)
- Don't use any task killers, memory killers, seeder apps! They may conflict with the kernel/Rom settings.
If none of these suggestions work for you your rom may be incompatible. Please report it here that I can add the rom to the list of imcompatible roms
If you have any issue, please read this:
First check:
- is it really a kernel issue?
- did I see this bug with the roms original kernel?
- what are the people in the rom thread saying?
- what are the people in the kernel thread saying?
- can I find this issue on a bug list?
- how about my settings? Is it my fault it crashed?
- can I find something useful in the kernel FAQ?
- Is it maybe a well known issue and can be solved
withing seconds? Just like wifical.sh?
- Where to repeat that issue? Rom or kernel?
I know it's sometimes difficult to track the issues, and we can't know for sure if it's caused by the rom or by the kernel, but if you try at least to get some information you might find an answer sometimes. If you are able to understand logs, you may report whatever you find.
All this helps to keep the threads more clear. Thank you.
Click to expand...
Click to collapse
Click to expand...
Click to collapse
DONATE
If you like my work and want to support me, I'd enjoy a little beer or coffee. You can find my beer mug below my username
SOURCE
JBX-Kernel 4.4
CREDITS
Shurribbk - Co-Development
Kholk & [mbm] - Kexec inital Release
Hashcode & Dhacker - Making Kexec stable and initiating compatible kernels
Motorola - 3.0.8 Kernel Source
Surdu_Petru - Sharing Knowledge and helping with problems
nithubhaskar - Hints and answering my questions
Ezekeel, Imoseyon - Custom Voltage, Live OC, Temp Control, Gamma Control Source Code
faux123 - Some features, like Intelli-Plug, Intellidemand, Intelliactive
bigeyes0x0 - Trickster Mod App
Team Trickster - Great support and adding new features from my suggestions
Placca - Awesome kernel guide
RandomPooka - for special testing and support
- reserved -
Hey guys, welocme to JBX-Kernel for Targa! This is the first initial release and needs to be tested! Please give me some feedback if it boots and how it works for you. It comes with built-in OTA Updater and many extra stuff. Just check it out.
Keep in mind that this release will only work on 4.4 builds! Currently I don't have the time for others. Also you should use a newer build with Full HD Cam support! When using this kernel with older 4.4 builds your camera won't work.
Oh cool, i happy Someone help you with targa kernel ?
Maksim_ka said:
Oh cool, i happy Someone help you with targa kernel ?
Click to expand...
Click to collapse
Nope.. But it doesn't matter. Currently I have a problem with paying my server, and as long as I am able to build I wanted to release the Targa Kernel. The only difference seems to be in the CMD-line (Targa doesn't have a utags partition), so I just had to switch this line and build it with CM11 Targa sources to get the right ramdisk and modules. The whole source is the same like RAZR kernel.
I test it, and dont see weighty differences with RAZR kernel, have same bugs, display backlights don't turn on sometimes. I think you can talk with Hush about it, he can help.
Maksim_ka said:
I test it, and dont see weighty differences with RAZR kernel, have same bugs, display backlights don't turn on sometimes. I think you can talk with Hush about it, he can help.
Click to expand...
Click to collapse
You mean Hashcode? I am in static contact with him. But thx
What do you mean with "backlight doesn't turn on sometimes" ? I don't see this problem on RAZR... But sometimes you need to be a little patient when you want to wake it up. That's because of things like "DEEP IDLE" and others which keep the device in "deeper" sleep mode. It can take 1 or 2 seconds until you will see the lights - but it will turn on for sure. Maybe you're talking about something else? What bugs else exactly?
dtrail1 said:
You mean Hashcode? I am in static contact with him. But thx
What do you mean with "backlight doesn't turn on sometimes" ? I don't see this problem on RAZR... But sometimes you need to be a little patient when you want to wake it up. That's because of things like "DEEP IDLE" and others which keep the device in "deeper" sleep mode. It can take 1 or 2 seconds until you will see the lights - but it will turn on for sure. Maybe you're talking about something else? What bugs else exactly?
Click to expand...
Click to collapse
Yep, i mean Hashcode.
It will happened if use proximity sensor when calling, and sometimes when wake up phone. Backlight don't turn on generally, help only reboot. And it don't happened if change frequency to 300-1xxx. I think if you change minimal frequency to 300mhz it gone.
Maksim_ka said:
Yep, i mean Hashcode.
It will happened if use proximity sensor when calling, and sometimes when wake up phone. Backlight don't turn on generally, help only reboot. And it don't happened if change frequency to 300-1xxx. I think if you change minimal frequency to 300mhz it gone.
Click to expand...
Click to collapse
Well that's not an issue, but a well known phenomen. Some devices cannot handle 100 MHz (depends on silicon, each one is different). The min frequency is 300 by default, and the battery friend min frequency is 200 by default. Just check your settings in trickster mod.
Gesendet von meinem XT910 mit Tapatalk 4
I'm able to boot the kernel but cannot get radio. Any ideas?
Sent from my XT875 using Tapatalk
BZguy06 said:
I'm able to boot the kernel but cannot get radio. Any ideas?
Sent from my XT875 using Tapatalk
Click to expand...
Click to collapse
Not yet. I need more informations from other users. Any feedback here????
Just try the today's OTA (soon). I forgot to update device tree sources in yesterday's builds.
Because I had a weird drain myself on yesterday's RAZR kernel (not very much, but noticable)
EDIT: I got a workaround for the RADIO issue - if it's actually an issue Wait for the OTA.
I was only able to get radio working on your 1-08 build of the kernel for rzr. Ever since then I haven't been able to get it to come up.
Edit: I went ahead and installed your 1-21 update and its better. It eventually connects to LTE but only holds it for 30 secs and then drops with no radio. Thanks for the help in advance.
Sent from my XT875 using Tapatalk
BZguy06 said:
I was only able to get radio working on your 1-08 build of the kernel for rzr. Ever since then I haven't been able to get it to come up.
Edit: I went ahead and installed your 1-21 update and its better. It eventually connects to LTE but only holds it for 30 secs and then drops with no radio. Thanks for the help in advance.
Sent from my XT875 using Tapatalk
Click to expand...
Click to collapse
Please download the latest build from same links again (any mirror, I overwrote it). It should have fixed radio now. But you have to replace your build.prop with that one from your rom or open it and remove all additions made by JBX. The easiest way is to flash the rom again, then flash jbx.
I went ahead and redownloaded and reinstalled and I'm still getting the same thing. Attached is my "phone info" screen. And under "select preferred network" my only option is unknown
{
"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"
}
Sent from my XT875 using Tapatalk
Just flashed latest 1/21 JBX with cm 1/20. Have lte. Haven't played with settings yet. Need to read the faq first. Thanks void time buddy.
Sent from my XT875 using Tapatalk 2
BZguy06 said:
I went ahead and redownloaded and reinstalled and I'm still getting the same thing. Attached is my "phone info" screen. And under "select preferred network" my only option is unknownView attachment 2530635
Sent from my XT875 using Tapatalk
Click to expand...
Click to collapse
So, have you reset your build.prop before as I said above?
Btw: just open it in a text editor (I.e. With root Explorer), scroll down until you see "dtrail - build.prop additions". Delete everything below that line. Now reboot and flash jbx (after downloaded again).
Gesendet von meinem XT910 mit Tapatalk 4
dtrail1 said:
So, have you reset your build.prop before as I said above?
Btw: just open it in a text editor (I.e. With root Explorer), scroll down until you see "dtrail - build.prop additions". Delete everything below that line. Now reboot and flash jbx (after downloaded again).
Gesendet von meinem XT910 mit Tapatalk 4
Click to expand...
Click to collapse
Yes. I went ahead and wiped system and data, installed cm11 1-20, and then installed the 1-21JBX targa kernel
Sent from my XT875 using Tapatalk
BZguy06 said:
Yes. I went ahead and wiped system and data, installed cm11 1-20, and then installed the 1-21JBX targa kernel
Sent from my XT875 using Tapatalk
Click to expand...
Click to collapse
Just flash the latest jb radio and don't change band in settings.
P.S. targa don't have BMM
Maksim_ka said:
Just flash the latest jb radio and don't change band in settings.
P.S. targa don't have BMM
Click to expand...
Click to collapse
I have the latest JB radio (CDMA_N_05.22.00R LTEDC_U_09.1D.00). My radio works fine using the stock CM11 kernel. I really wanna try out dtrails' work.

[AKT] Advanced Kernel Tweaks v1.6 FINAL | Insane Battery & Performance(SD820/1|OP3/T)

[AKT] Advanced Kernel Tweaks v1.6 FINAL | Insane Battery & Performance(SD820/1|OP3/T)
IMPORTANT ANNOUNCEMENT #2​REALLY IMPORTANT ANNOUNCEMENT:
Please read it!​
We ( @patalao and me) have decided to create a new thread since the @op from the thread we were using seems to be inactive, so doing this will give us more freedom for editing the main post and providing you guys with more information.
I also need to thanks all the awesome people that have made this possible, therefore thanks to @soniCron and @Alcolawl for being the creators of the original guide and all the fantastic tweaks that you have made.
Thanks to @flar2 for his great app (EXKM) and his kernel and to @patalao for his superb tweaks and all the help he has provided me.
{
"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"
}
All that you are about to read is based on THIS THREAD so go there and thanks @soniCron for it.
I'll go ahead and copy and paste some of the firsts paragraphs so those who don't know what this all is about can understand a bit.
I'm about to tell you how to get buttery smooth, lag-free performance with insanely good battery life, using an old school governor featured in practically every kernel... This tweak is applicable to every phone with any ROM or kernel--stock or custom--that provides the Interactive Governor.
Yeah, yeah... everyone promises good battery with great performance, but who actually delivers? Maybe it isn't as smooth as you want, or maybe it requires something your kernel or ROM don't support. Or maybe the battery life promises just aren't what you expected. There's always some awful compromise. Not here!
This isn't a guide to get 36 hour battery life... provided you never use your phone. That's deep sleep optimization, which is lovely and all, but what good is the phone if you can never use it?! And with the new Marshmallow Doze feature, this strategy is becoming a thing of the past. What I'm talking about is 7-14 hour screen on, actual hands-on usage times! Without compromising anything, you can get 7-8 hour screen on usage with regular, no-compromise usage habits: daytime visible screen brightness, both radios on, sync on, network location on, all the regular usage features, the whole kit and kaboodle... all smooth as a baby's butt and snappy as a Slim Jim! (Up to 14+ hours if you can stand minimum brightness and WiFi-only with a custom ROM and other stuff turned off! And this is with stock voltages and full frequency range--you'll likely get even more if you choose to optimize those as well!)
However, it should be noted that this does not apply to gaming, heavy camera use, etc. Anything that is an automatic battery killer in and of itself. There's nothing that can be done about anything that forces the phone to utilize its maximum resources all the time. But you should know that by now. Further, this guide is about optimizing the CPU as much as possible. It does not cover things like eliminating wakelocks so your phone sleeps well, removing unnecessary and battery draining stock apps, keeping your screen brightness down*, and all that stuff that's been covered in other posts ad infinitum. Those optimizations are up to you.
If you really want to know the principles of this tweaks, please go to this thread since there everything is really well explained and I know you guys just want to apply the tweak and forget about everything behind it, so just keep scrolling!
Voltages and Frequencies:
So recently I have been investigating about the Voltages of our device (since that is a really useful information to know) before that we only have the Nominal frequencies (If you don't know what I am talking about go ahead and read @soniCron thread because I won't explain it) we could develop some tweaks with that, but we were pretty much making blind shots, guessing and hoping that all will be right. Well, now that we have all this information we can optimize our tweaks even more so expect new updates and rework for the current tweaks and of course new ones.
I have made a little spreadsheet with the Nominal and Efficient frequencies for you guys, so you can take a look and maybe modify our tweaks to your needs, since, all of them have been tested by @patalao, our tester and me, which involves that are tested without usage and not yours.
No much to say about frequencies so we move right away to the voltages
We have more to talk about this, as you can see OverClocking have NO down points since it will consume the same voltage as the maximum stock clock speed and it will give use more performance. UPDATE: It's true that the voltage it's the same, but there is some downpoint which are explained in this posts. Here and here Thanks to @bedalus for pointing itn out!
Notice that the voltages on CM ROMs are higher that on OOS and that the values were shown there are from OOS. We are already working on a flashable zip or script for modifying those values since cannot be modified anyway else.
On the Snapdragon 820 (Our chipset) things have changed a lot from the previous chipsets like the 808 (Nexus 5X) and 810 (Nexus 6P). Now we are back to the Quad-Core, which is good, more cores= more battery consumption but we continue with the Little.BIG set up, where we have a Little Cluster (really efficient and fast) and a Big Cluster (slow but good for heavy loads). On previous chipsets, the Little kernel was really good on low-mid clock speeds and the Big cluster was really good on high frequencies and bad on low. Well, this is still true, but not we don't have such difference than before. Our Little cluster is going to be "the main thing" as it was before, but now the Big cluster has a really low consumption on lower frequencies so can be really good for sustained loads which only demand low~mid clock speeds as well it will be used as a quick burst for help the Little cluster to not reach High freq here it's not that efficient anymore.
How this affect your device (ROM/KERNEL)
You might NOT get the same results as me or other, it will depend mainly on your usage, secondly on the kernel and finally on the ROM that you currently using.
Not all the tweaks work the same way for certain kernel, what I mean with this is that the battery life/performance might be better running X kernel with X tweak, but the same tweak applied to another kernel might not be that good at all
Wait what? What you want to tell me is that some kernel is better than other, right?
Yes and No, Some kernel is better than other but also, some kernel perform better with certain tweaks as can be seen in the following screenshots (This test have been performed using AnTuTu tester with a clean install of last RR + the Kernel, nothing else. I know is a benchmark and the perfect thing whole be a real life test but that takes days, so If somebody wants to do it, I'll post the results)
Disclaimer:: This is just a profile (tweaks) for the interactive governor. If you experience any unexpected fc, reboots, massive stuttering/lagging, etc, this profile isn't most likely not responsible for that.
What About Touchboost?
Since I've noticed that a lot of people was asking about Thouchboost, I decided to add this little explanation from @soniCron
" Touchboost is a nifty feature in a lot of kernels (including stock on Nexus 5X) that jumps up the frequency so that you experience minimal lag. However, with all the above settings, touchboost is usually detrimental to the efficiency of the device!
We generally want to keep the CPU on the lowest possible frequency as much as possible, and touchboost interferes with that. Further, because we've set up the maximal and minimal efficient clock rates, as well as burst processing from the 2nd CPU core, we don't need touchboost!
If your kernel allows you to shut it off, try to do so and see if the responsiveness of your device is acceptable. On the OP3 (and pretty much all the devices), touchboost adds no perceptual performance gain and only hurts efficiency and battery life. If your kernel doesn't allow you to turn off touchboost, try another one.
Your battery life will thank you! "
With all that been said, you shouldn't confuse Touchboost with CPU Boost and more specifically Input boost. Both are used to boost the clock speed of our device whenever we touch the touchscreen, so we don't suffer any lags.
The difference is that Input boost can be configured and Touchboost cannot, making it a really inefficient.
MY DEVICE LAGS!!! WHY?!?!
First of all, it's a "normal" thing, as I have stated before, all these tweaks have been done for fit my usage or certain usage which is most likely not the same as yours. Because this, when the are put on a certain scenario the might stutter or lag just a bit (If you are experimenting huge lags, you have done something wrong)
And yes, this can be fixed. We have a couple of ways of fixing it:
First of all, Check If the tweaks have been applied correctly
Our first one is modifying the Input boost (not touchboost) most of our tweaks have an already established Input boost clock speeds and time, you can incise does too a bit. For example, we have 960(Mhz) for all the CPU at 40ms you could bump it up to ~1036(Mhz) and 42ms, don't modify too much this values since it will potentially increase your battery drain.
Our second tool for fixing lags is min_sample_time , my recommendation is to increase the value by 5000 each time till you no longer suffer any stutter or lag.
Try another tweak, for example;
If you are using Project X.A.N.A Battery, try using Balanced option...
Still having lag?
Get rid of unnecessary (background-)apps
Try a different IO-Scheduler
Try another profile
My phone still uses too much battery
First of all, Check If the tweaks have been applied correctly
Make sure that you have disabled touchboost.
Set brightness to a lower level.
Use a dark / black theme
Don't play games all day
Try other tweak, for example;
If you are using Project Zhana Balanced, try using Battery option...
JOIN OUR SLACK CHANNEL FOR TESTING BETA TWEAKS
VOTE FOR YOUR FAVORITE PROFILE
I'll keep this post updated with new information, so make sure to subscribe to it.:good:
The Profiles:
=================================================================================================
Introducing Advanced Kernel Tweaks [A·K·T] | All-in-one Project
All the profiles will be featured there, some make sure to check it out!
Over here
=================================================================================================
Project Zhana & X.A.N.A v4.2: (Everybody should try it!!)
Go to this post for the full lenght explanation.
This tweak has all the new discovery voltages and some other new techniques, giving us great battery life without losing performance
The battery could be even better than FairPark *14 h SOT*
GhostPepper:
Uses a quantized, frequency-aligned parametric curve to influence low core clock rates while providing extremely smooth transitions from each clock rate and exceptional battery life
Really well-defined clock speed escalation for a good battery and performance.
FairPark:
There have been a lot of controversy about this tweak lately. So after you complain, this will NOT work for all of you guys.
For me, it works perfectly and it accomplished all that I'm going to state, but maybe you guys will experiment lags.
This tweak is not for everyone.
Probably the most battery efficient tweak ever created, fantastic battery with extremely smooth performance even playing games as Clash Royale or Pok?mon GO.
You can easily get 10 hours SOT or even more (If you don't play any games) just texting, browsing and so on could give you even 12 hours SOT.
HawkPepper:
As you might notice by the name is the union of the 2 tweaks above, GhostPepper for the Big cluster and HawkTail for the Little cluster, as GhoostPepper is highly optimized for the Big cluster and HawkTail for the Little.
Performance wise should be as good as GhostPepper but in terms of battery should be considerably better.
EOL Profiles:
You can still use them, but I won't give further support for them
HawkTail:
An advanced, modern profile that is both battery efficient and highly performant
It should be as battery efficient as GhostPepper but giving that extra performance for "high-end" games, as that was the only complaint on GhostPepper
Ketrel:
Really battery efficient tweak but only for light usage, when comes to playing games and some heavy multitasking the battery drain will increase exponentially
DOWNLOADS:
~ [AKT] Profiles ~
Old profiles:
Project Zhana & X.A.N.A
GhostPepper
HawkTail
HawkPepper
FairPark
Kestrel
Changelog:
Code:
27/10/16: Updated all the profiles. Applying the new discoveries about voltages and so on.
02/11/16: Adding Project Zhana v3.0
15/11/16: Adding Project X.A.N.A v3.1 | Updating to Project Zhana to version 3.1
10/12/16: Project Zhana & X.A.N.A v3.3
02/01/17: [A·K·T] + Project Zhana & X.A.N.A v4.0 + EOL Profiles
22/01/17: [A·K·T] v1.2 + Project Zhana & X.A.N.A v4.2
FAQs:
Does this tweaks works with X ROM / X Kernel; OB10, Custom ROM, OOS4.0...??
YES, YES, YES. All the tweaks featured her works with ALL the available Kernels and ALL available ROMs for the OP3. So yes OBs(9,10,11....), yes custom ROMs, yes OOS 4.0
Will this work on my device?
[*]These tweaks are intended for the One Plus 3, although it should work on any device which features the Snapdragon 820 ( Moto Z, Xperia XZ, S6 ...)
HTC 10 Here is why and Here is the HTC10 Thread
Support for the OP3T and other Snapdragon 821 devices will come soon! Read more about it here.
My device Lags/Uses to much Battery/Is not longer smooth/It's really slow!! What do I do??
[*]Everything it's explained on the OP. I quote the part where that's explained
Asiier said:
MY DEVICE LAGS!!! WHY?!?!
First of all, it's a "normal" thing, as I have stated before, all these tweaks have been done for fit my usage or certain usage which is most likely not the same as yours. Because this, when the are put on a certain scenario the might stutter or lag just a bit (If you are experimenting huge lags, you have done something wrong)
And yes, this can be fixed. We have a couple of ways of fixing it:
First of all, Check If the tweaks have been applied correctly
Our first one is modifying the Input boost (not touchboost) most of our tweaks have an already established Input boost clock speeds and time, you can incise does too a bit. For example, we have 960(Mhz) for all the CPU at 40ms you could bump it up to ~1036(Mhz) and 42ms, don't modify too much this values since it will potentially increase your battery drain.
Our second tool for fixing lags is min_sample_time , my recommendation is to increase the value by 5000 each time till you no longer suffer any stutter or lag.
Try another tweak, for example;
If you are using Project X.A.N.A Battery, try using Balanced option...
Still having lag?
Get rid of unnecessary (background-)apps
Try a different IO-Scheduler
Try another profile
My phone still uses too much battery
First of all, Check If the tweaks have been applied correctly
Make sure that you have disabled touchboost.
Set brightness to a lower level.
Use a dark / black theme
Don't play games all day
Try other tweak, for example;
If you are using Project Zhana Balanced, try using Battery option...
Click to expand...
Click to collapse
Do I have to be rooted?
[*]Yes. See the fourth question and learn more about your device before trying to change things like governor settings!
How do I apply this tweaks?
Go to this post and scroll down till you see the instructions
In case you guys still want to use the old method:
Keep scrolling to the third post, all that you need is there
You can also check this video, as a picture is worth a thousand words - but a video, a million!
My settings don't show up after I reboot! What am I doing wrong??
If you are using [A·K·T] head to this post and scroll to the FAQs over there
If you are using EX Kernel Manager, tap the power icon to the right of the setting after you set it. If you are using a different kernel manager, check with that developer to see how it's implemented. Also, give the kernel manager a few minutes after the device boots. The settings aren't applied immediately, so check back after 3 minutes and you should see the correct values.
Why is one of my CPUs not letting me change a setting or set a certain frequency?
The device may be thermally throttling and had turned off that CPU or limited it. Turn off your device and let it cool for 5 minutes, then try again. (Keep it unplugged and make sure you don't have any apps running that might be trying to use a lot of CPU while the device is off.)
These settings don't work/I'm not getting great screen on time!
You probably haven't disabled touch boost. YOU MUST DISABLE TOUCHBOOST, OR THIS WON'T SAVE YOU JACK SQUAT!!
And keep in mind these tweaks have been tested on certain scenario that is not the same as yours
My kernel editor won't let me set [whatever]Mhz for a value you showed!
Either you have done something wrong, or you're using a kernel/device combo that isn't ElementalX on OP3, for which this guide was written. Follow the instructions in the first post to determine the appropriate settings for your own device!
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Community made Profiles:
Here will feature all the profiles that haven't been made by @patalao, @Mostafa Wael or myself
"Nameless" by @Senthil360
All the information and download link in his post.
LINK TO THE POST
Ok then.
First, thanks to @Asiier for making this thread with a more detailed explanation about the profiles, specially for our SD820.
As @Asiier said the profiles may not work the same for everyone because each one of us uses the phone different, so please take that in mind before filling the thread with questions why it works for Y but not for X.
HOW DID I START
I`ve started by releasing the Fusion Beta profile on Ex Kernel Manager thanks to @flar2.
After seeing almost all profiles from Nexus 5X and Nexus 6P threads i released the first version.
It was a fusion(that's why the name Fusion) of several profiles into one, but using the SD820 frequencies for our device.
After all this time and working alongside with great devs like @Asiier, @Mostafa Wael, @Senthil360 and many other users on our Slack channel i've improved my profiles to the point of releasing 2 new ones called FusionB and FusionP.
This time i've worked on them not just for me but for the entire community of our OP3, taking in mind tests maid by users on Slack channel (our private channel for development of profiles and much more).
Profiles
FusionB
This is a balanced profile.
Working alongside with testers and evolving from previous works i've came across with FusionB, a profile intended to be used out of the box with your phone.
You can expect a smooth experience without compromising battery to much.
This is based on the load percentage of the cpu.
Better than stock values, this profile should use almost all frequencies from little cluster(scale up one by one) and use the big cluster to more heavy duties till 1900 frequency jumping to the highest one just when needed.
FusionP
Based on FusionB this profile brings a more "agressive" way to scale frequencies.
It will scale frequencies sooner(regarding load values from cpu) and will use more the big cluster to provide more performance doing the tasks on hands.
Battery should not take a big hit but using heavy demanding tasks you can expect a higher drain.
Note:This aren't the normal profiles used some time ago.
This are beyond governor settings and go up till HMP values.
This will be provided as a single script on AKT script together with all the profiles from @Asiier, @Mostafa Wael and @Senthil360.
Older versions are still available below on hided content but won't be updated(at least some time soon).
Releases:
FusionB and FusionP ( 02 / 01 / 2017 )
Changelog:
New year,new start.
This will be first release.
Next updates will have changelogs accordling.
Download Section
AKT
Want to know what AKT means?
ALL IN ONE PROJECt
Installation:
#Download the tweak
#Enter into Recovery and flash the tweak
#Boot to system
#Open your terminal app and introduce:
#Code:
su
AKT
#Select the section you want ( Battery/Balanced/Performance)
#Select the profile you prefer
#Done!
OLD VERSIONS:
This are the old one's and will still be available on my AFH but won't be updated.
There are 3 categories of profiles.(maybe more will come)
Thunder
This was made thinking only on a very fluid experience
It is set for speed, not battery.
It`s a performance profile and intended more for 3D Gaming and for those apps that needs more "power" to have a fluid experience.
Fusion
Set for a balanced between performance and battery this one should be what most of users want.
It should give you more or less the same performance as stock but with an improvement on battery.
This is what you should expect more or less for the new Fusion(depending on many factors this could be or not achived by you):
Icecold
Set for extreme battery saving this one should suit those wich use the device for low end tasks.
This is an underclocked profile and because of that it isn't suitable for all.
Download Section
All said, you can get the profiles here:
Fusion
Thunder
Icecold
How to use a profile with Ex Kernel Manager App
How to use a profile?
1-You need Ex Kernel Manager App
2-Download the desired profile and rename it removing ". txt"
3-Move the profile to sdcard/ElementalX/gov_profiles.
4-Before using any profile please uncheck all "set on boot" in Ex kernel manager and then reboot.
5-After reboot load the profile and then set on boot the following:
For all the profiles including mine, @Asiier and @Mostafa Wael
On CPU tab:
Governor settings
Input boost frequencie and input boost milliseconds
Touchboost
Because my profiles (and future @Asiier profiles) have more than governor settings this is what you also need to set on boot on mine and @Asiier profiles:
Memory tab:
Low memory killer
Adaptive low memory killer
Dirty ratio
Dirty background ratio
Min free kbytes
Vfs cache pressure
On Miscellaneous tab:
I/O Scheduler
Advanced I/O options
Read ahead kb
Tcp congestion algorithm
On tools/user settings tab:
Swappiness (add this /proc/sys/vm/swappiness)
For Icecold profile set this extra to be applied on boot:
Cpu tab:
Max CPU frequencie (Big Cluster)
Graphics Tab:
Max GPU frequencie
Credits:
All credits goes for all the users that shared their own profiles on Nexus 5X and Nexus 6P respective threads and of course for Me @Asiier, @Mostafa Wael and @Senthil360 for bringing this ones to our device.​
Introducing...
Shotgun!​
Strategy​This profile's main goal is to provide absolute maximum performance when needed, but lies low quite well. You see, some times I see the CPU hitting some of the high freqs of 1190 while making something as simple as watching YouTube or playing some spotify tracks needlessly, and sometimes I feel it is a bit slower than it should be in things like brute multitasking. Most profiles do aim at bringing a mid-ground to rest on. But with the sensible words of one of my favourite idols Jeremy Clarkson, he says 'Power solves everything' and right he is. By eliminating the mid freqs of the Little cluster and efficiently using some specific frequency steps, you get some power savings by staying on lower freqs as much as possible, and even on brutal tasks you get the job done faster as well, since the CPU will give you all the power to finish the job as fast as it can, and hit back to idle faster. Some may be worried about the power consumption with that turbo policy, but as it can be viewed from @Asiier OP's graphs and info, the difference in the voltage is not that high to make you that worried at all, and even numbers say it. I got a mighty 7.5 hours SOT over more than a day on OOS 3.2.7 with Mono kernel (tbh i used to get that value, but now I get it so easily without any extra battery conservation techniques) and i get better performance as to my usage patterns. As for the big cluster, I chose to stick with the stock Big cluster settings for better efficiency with slight tweaks to make it a little bit more bursty and lie low quicker. @Asiier I must point out something there. In your OP you advised (sort of) to tweak the big Kryos to be acting in a bursty manner. Well that is partially right, coz these big Kryos are no A57s where they heat up badly if engaged, rather their sustainable performance is quite lovely, and the fact that as much as the little cluster being in charge of most of your tasks as the 'main cluster', it is not being relied on as much as it was in the S810, and the big cores take charge of the load much more than it was in the S810. So it is a bit tricky to tweak now, coz you don't want it to be very dormant like the A57 coz that will sacrifice performance and smoothness noticeably.
Also take that into consideration
Mostafa Wael said:
Also another thing that I want to clarify for everyone, what has the largest footprint in rendering some profiles laggy/more battery consuming or very efficient/lagfree is the ROM. You see, when you test the 'nominal' freq for a certain task, it also depends on the ROM. A quick example, if you wanted to see which is the nominal freq for scrolling a simple webpage or even a normal page without lags, by locking the freq to a certain step to test, while you do the scrolling test, there are background processes that inevitably take place whenever you use the phone. A stock OOS for instance potentially has more background processes running than say CM, and CM nightlies specially when they introduce a highly experimental change, can have some more background process (most likely you see the 'CyanogenMod system' ranking highest in your battery consumer apps) than a more stable nightly, and an AOSP may be having even less. A carefully debloated OOS can have less background services going on as well. Not to say a ROM is better than the other, but each ROM behaves uniquely and therefore when you scroll the webpage on say CM, it may be a tad smoother than when doing the same task on OOS with a specific profile, coz the frequency that is set to be used when scrolling the webpage, by any means, actually has to do the work of scrolling AND handle the background services running (be it a needless wakelock or a necessary service for some system apps or user apps, hence changing a CM nightly can actually cause some weird issues)
Now why don't you see this with the stock interactive governor settings? Coz it is like 'generic' settings that obeys these wakelocks and background services, and they will ramp up the freq readily with no 'restrictions', unlike custom settings profiles like mine, where I limit the CPU to use some certain freqs and cap the others, or Asiier's with whatever philosophy he uses.
In my opinion, the ROM has more effect on performance with each profile than a kernel. Of course a certain Kernel can have some battery tweaks or performance tweaks undergone, but they have the same effect as on the stock generic settings, in other words, these optimisations can already be felt even on stock settings and hence I sort of exclude it from the equation, since your target is to improve upon the stock governor settings
Click to expand...
Click to collapse
I suggest as always to turn off touchboost and use low input boost freqs for more time as always, but if you feel the need to use Touchboost or increase the input boost parameters, no problem at all. My usage is typing, reading, gaming for an hour or maybe slightly more, lots and lots of YouTube streaming and video playback, Spotify, WhatsApp and Telegram, XDA checking of course and some off-screen music playback. This profile has been tested on OOS 3.2.7 + Mono/Boeffla kernel, Arter97's CM13 + Arter97's custom kernel, OrionOS 11 Oct with its stock kernel
Downloads​ Shotgun_v1.0 EXKM profile here
init.d script here
Shotgun_v1.6 EXKM profile here
Shotgun_v1.7.6 EXKM profile here
->It is not 100% true that a newer version is better for you, but 99% it is <-
Changelist​
Shotgun v1.0
initial release
Shotgun v1.6
-> eliminated more freqs for both little and big clusters, big cluster should be a little bit more dormant. Should be much
smoother AND more battery friendly
Shotgun v1.7.6
-> should be working fine without ANY Touchboost/Input boost/Bob boost settings (yes set input_boost freq to 0 freq for
litte and big cores anf for 0 ms to turn it off)
-> more smooth and battery friendly
>>>Shotgun is EOL after v1.7.6<<<
Burnout PR​ -> Burnout PR1, make sure to apply the gears here
-> Burnout PR2 Golden!. No gears needed, this is the absolute performance you can get! Gamers be cautious, this is NOT intended for gaming at all. Heavy browsing might be a bit warmer than your taste too. I have added some changes that work well with AOSP/CM LineageOS?/CAF Nougat but it seems that OB9 does NOT work as well as I expected.
Legacy: (imo Burnout PR2 moved leaps after that, but i never delete my trials since we are not the same
An intermediate profile has been cooked as well, dubbed as Burnout_Extreme. Learn more about it here
People who fail to automatically load the settings after booting even though the slider has been set to apply the settings on boot please notify me. Hope it does not fail you! Big thanks to @weeka89 and everybody here on this thread and the slack group for testing, couldn't have been that great or refined without your help and time, very much appreciated :good:
Pcsx2006 said:
Guys forgive me but can these profiles be used on stock rom OOS 3.2.7?
Sent from my ONEPLUS A3003 using Tapatalk
Click to expand...
Click to collapse
Yes, but you need custom kernel and app for changing tunables.
No custom kernel needed.
Just needs Interactive governor wich all of them brings.
patalao said:
No custom kernel needed.
Just needs Interactive governor wich all of them brings.
Click to expand...
Click to collapse
True. But there are also schedulers (zen) tuned in your profiles that are not found in stock kernel?
Yes, but if there`s no other tweaks in the kernel like the stock one it will only change governor settings and all other settings will remain untuched.
So I just need EX Kernel Manager app and load profile and good to go?
Sent from my ONEPLUS A3003 using Tapatalk
That`s it.
Just load the profile you want and enjoy it.
Pretty intresting. What values do u lads recommend for touchboost? Im on hawkpeper.
You could try 1036 to start.
If it runs well try with a lower value,if not rump up a bit between 1113/1228 for little cluster and 1112/1248 for big cluster.
Which kernel do you use daily? Personally been using Elementalx but from what I can see Blu seems to be a bit better with FairPark which I use daily
Great information! I look forward to seeing what comes of this. Now if we can just quantify load during certain things like browsing and other scenarios, that would give your values per freq more weight. Now I am unsure but I remember that Linaro used some tools** to work out Energy Aware Scheduling (EAS) for the 5x. Would be cool to gather such info and tie it in with your current findings.
** I believe they made changes in the kernel to quantify load and giving values a weight. But I would think there was more needed to create and EAS profile of the SD808 processor.
MrPhilo said:
Which kernel do you use daily? Personally been using Elementalx but from what I can see Blu seems to be a bit better with FairPark which I use daily
Click to expand...
Click to collapse
I use ElementalX kernel.
Didn`t try any of other`s.
There`s still INT3NSE kernel for OOS if you want to try.
RenderBroken said:
Great information! I look forward to seeing what comes of this. Now if we can just quantify load during certain things like browsing and other scenarios, that would give your values per freq more weight. Now I am unsure but I remember that Linaro used some tools** to work out Energy Aware Scheduling (EAS) for the 5x. Would be cool to gather such info and tie it in with your current findings.
** I believe they made changes in the kernel to quantify load and giving values a weight. But I would think there was more needed to create and EAS profile of the SD808 processor.
Click to expand...
Click to collapse
It`s hard to know the load of different scenarios because they are constanly changing.
We can estimate it but it won`t be very accurate.
For example:
Loading a web page full of pictures/videos will take a high load instead of a web page just with text.
MrPhilo said:
Which kernel do you use daily? Personally been using Elementalx but from what I can see Blu seems to be a bit better with FairPark which I use daily
Click to expand...
Click to collapse
You have to try, whatever works for you
That was just an example on how certain tweak behave in certain way, for you EX Kernel might give you better battery, you have to test
Will this work on OrionOS ? Caf Kernel no ElementX
Gesendet von meinem ONEPLUS A3003 mit Tapatalk
Yes, it will work on any rom/kernel that as interactive governor.
Awesome thread! Im gonna test GhostPepper with SultanCM13 + EX 0.32

Interactive governor highly efficient profile for SmartPack Kernel - Android N/O/P

Hello all.
After about a month of researching and testing with the Galaxy S5, I'm finally happy with my SmartKernel profile, with the interactive governor carefully tuned, using known resources and countless trials and errors, as well as other various tweaks, like VM and I/O scheduler, and decided to publish on it's own thread.
The main resources I've used for the Interactive governor tuning includes the well known:
Android Modders Guide;
[GUIDE] Advanced Interactive Governor Tweaks; Buttery smooth and insane battery life! for Nexus 5X; and it's twin
[GUIDE] Advanced Interactive Governor Tweaks; Buttery smooth and insane battery life! for HTC Evo 4G.
First of all, this tweaks should be a little sensible to the ROM, kernel, apps, and other tweaks your using. Like, I just found out that Havoc pie style quicktile settings use way more juice then if I turn it off and go back to Oreo default. Bellow you will see the apps I mainly crafted this profile in mind.
For reference: I have a klte with latest Oreo Havoc installed, nano OpenGapps, Magisk and the SmartPack kernel. For apps I use Facebook lite, cause the normal app is just a big hog, whatsapp and instagram social apps. Chrome. I don't use the Google App or Greenify(uninstall/delete velvet). And play lots of games like Clash Royale, Star Wars Force Arena and Arena of Valor. BetterBatteryStats.
And a lot of random apps that normally don't stay on the background.
DESCRIPTION
On the SmartPack manager profile:
. HIghly Efficient Interactive Governor Tunables (most important part);
. No Touchboost or any other boost, only the governor dictates to CPU in which clock it should to be;
. Overclock disabled, but can be enabled at you will;
. No underclock, I do undervolt my CPU but this you need to find your specific device numbers, mine won't cut;
. LazyPlug Hotplug with all 4 cores on all the time (better performance while using and battery savings while at idle);
. I/O Schedulers: ZEN (the L-Speed profile complement this part, with it's scheduler tunables);
. READ-AHEAD internal 1024kb (for 16GB or more) and external 512 kb (for my 8GB SDCard, adjust accordingly to yours SD Card size conform described here
. Adreno Idler disabled: it doesn't make any effect;
. Speaker Driver Leakage disabled and Boeffla Sound enabled with 0 gain as it does make a difference, at least with ViperFX magisk module installed;
. Screen minimum RGB set to 1 (0 won't stick), for a darker dark on our AMOLED, plus some tweaks;
. Led blinking fade enable;
. VM tweaks: dirty_ratio 30 and dirty_background_ratio 15; for minor battery improvement, with a perceptible lower termperature/cpu usage and almost imperceptible performance hit;
. VM tweaks: page-cluster 1; for better multitasking/memory management
. VM tweaks: oom_dump_tasks 0; disable depuration of dumping tasks, less cpu needed.
. LMK values: 32 48 64 128 176 208 (MBs)
L-Speed Profile
. Logging and I/O stats disabled;
. Animations speed set to 0.25x;
. System battery save trigger at 20%;
If you need to provide or read logs, enable logging and i/o stats back on l speed; i/o stats and oom_dump_tasks 1 on smartpack manager
INSTALLATION
Unzip the attached file and import with SmartPack Manager:
The attached profile should be imported, applied and marked as to run "On Boot" to make effect. It will only work with SmartPack Manager and Kernels for both Nougat and Oreo, maybe even Pie. Just try it, and report back. If you wanna fine tune it. You need to use an app or enable the "show cpu clocks" option if your rom supports it (like Havoc, RR and many more), and monitor at which frequencies the lags happens, while doing the jobs you want the CPU to be efficient at. And mainly tweak the target_load according, maybe above_high_speed delays of 1,7GHz clock and above. You need to read the guides more in-dept too see exactly how to do it, but I'll paste here the most important parts on how to tweak this settings more to your Galaxy S5, with your particularly apps and ROM:
soniCron said:
Optimize Idle Frequency
Now that you've got the base configuration, we need to tweak it so that the CPU stays at your efficient idle frequency (384Mhz in this case) without spontaneously jumping when your phone is actually idle. To do this, open a CPU monitor that displays the current core frequencies (I like CoolTool, but you can use what you like as long as it doesn't significantly impact the CPU use--you're best off using a passive monitor and checking the results after 30-60 seconds of no activity), watch the frequencies and see how often they go above your efficient idle frequency when you're not doing anything at all, and adjust the following:
timer_rate - If your idle frequency is not being exceeded much, adjust this downward in increments of 5000 until it is, then increase it by 5000. If your idle frequency is being exceeded often, adjust this upward in increments of 5000 until your CPU primarily stays at or below your desired idle frequency.
above_highspeed_delay - Only if your timer_rate has matched or exceeded 50000 and still won't stay at or below your desired idle frequency most of the time, set timer_rate to 50000 and adjust the "20000" portion of the value upwards in increments of 5000 until the idle frequency has stabilized.
The lower these two values are, the more snappy/lag free your system will be. So try to get them as low as possible without the idle frequency being exceeded too much, as this inversely affects the snappiness and efficiency of your phone when you're not doing anything. Lower = snappier but uses more CPU when you're not doing anything (such as reading a webpage); higher = less snappy but stays in a power saving state more often reducing CPU use when you're not interacting with the device. These are the most critical in determining your idle power savings, so keep that in mind if you want the most battery life!
Enhance Task Responsiveness
Now use the efficiency and nominal clock rate correlations you made for your master clock rate list in the section above and adjust your frequencies to suit your usage patterns. For example, I had web page scrolling as my 710Mhz/864Mhz rates, so I will open a web page and scroll and see how everything feels. If it feels sluggish, I will increase all the references to "710000" in both above_highspeed_delay and target_loads upwards to the next available clock rate until that task is smooth. What you are looking for is constant poor/sluggish performance when the task you're testing for is using its highest CPU use. If the task becomes sluggish/stuttery as it winds down (such as a scrolling webpage slowing to a stop), we will address that next, so do not take that behavior into consideration as you adjust these values! If the task is smooth until (or after) it slows down, then you have reached your optimal clock rate and can move on.
If you need to exceed your nominal clock rate for a particular task, first measure it again just to be sure you had it correct. If you did indeed have it correct, leave it at your nominal clock rate and adjust the value after the colon next to the task frequency you're tuning downward in increments of 5. For example, if my setting of "864000:80" is still not sufficient, I will adjust it first to "864000:75", then "864000:70", and so on until the task is smooth. However, it almost certainly won't come to this, but if you reach ":50" and the task still isn't performing how you want, set it back to ":80" and increase the clock step once more, then decrease the ":80" until it is smooth.
Do the same for each other frequency in your master clock rate list until you are satisfied. If you have chosen to use more than 2 primary clock rates, add them and use ":##" values between the two surrounding frequency values.
Fix Stuttering
Now that you have adjusted your frequencies for optimal high CPU use in each given task, you may notice some stuttering as the task winds down. (Such as a scrolling webpage slowing to a stop.) If this bothers you, you can tweak this at the expense of some (minor) battery life by adjusting min_sample_time up in increments of 5000 until you are satisfied.
If you have exceeded a value of 100000 for the min_sample_time setting and still are not satisfied, change it back to 40000 and increase (and re-optimize) your idle frequency by one step. This will impact battery life more, but less than if you were to keep increasing the value of min_sample_time.
Adjust High Load Clock Rates
You're almost done! Now you can leave everything as is and be satisfied with your amazing, buttery smooth, snappy experience, or you can optionally tweak things further to either increase the responsiveness of high load tasks (such as loading image previews in Gallery) or increase battery life somewhat.
Adjust the final delay value in above_highspeed_delay to suit your needs. The default ("150000") means that the CPU load at the highest set frequency (default "1026000") will have to be sustained for 150ms before it allows the load to go above that frequency. Increasing this value will prevent the CPU from reaching higher frequencies (which may be unnecessary) as often, saving battery life. This will come at the expense of burst-type high CPU load tasks. Reducing it will allow the CPU to reach higher frequencies more often, at the expense of battery life. However, adjusting this is probably unnecessary, as it will most likely not yield any perceptible difference in performance. It is recommended to leave this value at its default.
Click to expand...
Click to collapse
Besides CPU Voltage and Battery, all tabs on the manager are modified and tuned to achieve best performance, while having best efficiency possible. Is not a battery or a performance, but a efficiency profile.
Refer to this thread if you wanna undervolt your device with a well know secure margin for the CPU Snapdragon 801 2.5ghz MSM8974AC, which our Galaxy S5 contains:
[GUIDE] Snapdragon 805/801/800/600 Clock & Voltage (PVS bin) guide by HD2Owner I've managed to achieve much lower voltages then PSV15+ devices (refer to the sheets).
I also attached the excel spreadsheet I've made with all this thread information, both governor guide equations on target loads, undervolting guide findings, and made my own base calculations and settings. Feel free to use, modify, and discuss it with me. You will see that I based the most efficient clocks in an original thought about which ones are the most efficient, instead of plotting the differentials between voltages of each clocks, I did plotted the difference of the clock divided by voltage, which on itself should be how much voltage 1 mhz uses, on each clock rate. So, the higher the number, more speed each clock rate give us by voltage used. It's kinda complicated and idk if I explained it the right way, and even if it really makes sense under scrutiny, but I couldn't think why not myself, so, any inputs are welcome.
I own my thanks to all the following XDA fellows, without them, I could not have achieved this:
@sunilpaulmathew for the SmartPack Kernel which is the only kernel for the S5 that can turn that damned MPDecision off and SmartPack Manager;
@soniCron for both of the governos Guides;
@Saber for the Android Modders Guide which is immensely helpful.
CHANGELOGS
L-Speed Profile (download the app on PlayStore):
011118 lspeed profile
- first release
031118 lspeed profile
- Removed most tweaks, only left minor stuff, refer to the OP.
L Speed profile is not really needed, SmartPack will do 99% of the job.
SmartPack Manger Profile (download the kernel and the app here):
301018
- first release.
011118 smartpack profile:
- A few Interactive governor tweaks;
- Removed Virtual Memory and LMK tweaks, let it on default or use L-Speed to optimize, as it does a much better job then me.
031118 smartpack profile:
- Governor tunning: better high load management;
- Included back only 3 sane VM configurations, no more freezing, better cooling (less cpu needed, while performance barely took a hit)
- Sane LMK configurations, kills apps not being used faster, retain some multitasking while not let it slow down the device
081118 smartpack profile:
- target_load (no changes up to 1497600) ...1728000:89 1958400:91 2265600:95 -> ...1728000:88 1958400:90 2265600:95
- above_hispeed 20000 1190400:60000 1497600:64000 1728000:77000 1958400:84000 2265600:130000 -> 20000 1190400:60000 1728000:68000 1958400:79000 2265600:110000
- external storage read-ahead from 512 -> 2048 (because I've gone from a 8GB to a 32 GB SDCard, ADJUST YOURS ACCORDINGLY TO https://androidmodguide.blogspot.com/p/io-schedulers.html)
- cleaned unused and already default values from profile
101118 smartpack profile:
- Turned Alucard off, accidentally activated it with Lazyplug also enabled, not good!
- Managed to go 1 point higher on freq 1497 MHz, the 2 hotplugs enabled were messing with me trying to test this change before, also 1 point lower on the idle freq 268 MHz for smoother scrolling while still staying at freq 268 while idle. And some more high load optimizations now that I only got 1 hotplug enabled as it should always be.
- target_loads from 268800:29 ... 1497600:86 1574400:5 1728000:88 1958400:90 2265600:95 to -> 268800:28 ... 1497600:87 1574400:5 1728000:89 1958400:91 2265600:94
- above_hispeed 20000 1190400:60000 1728000:68000 1958400:79000 2265600:110000 -> 20000 1190400:60000 1728000:74000 1958400:82000 2265600:120000
- dirty_background_ratio 15 -> 10
221118 smartpack profile:
. Reverted new SmartPack Kernel v14r4 changes to Virtual Memory back to original default configurations, if you've have had reboots this should fix it, please report back here and/or the kernel's thread;
. More changes to Interactive governor aiming to optimize high load scenarios according to the profile philosophy:
. above_hispeed_delay 20000 1190400:60000 1728000:74000 1958400:82000 2265600:120000 -> 20000 1190400:60000 1728000:74000 1958400:80000 2265600:105000;
. Enabled fast charge configurations, set at 1200 mhA as I found it's a good charging speed without heating the phone too much on my hot city, nothing you can't change at your will.
241218 smartpack profile:
. Restored missing min_sample_time tunable since 081018 profile
. dirty_ratio 30 -> 25
. General cleanup
. Tested on Pie
@justjr
Nice work friend. Great to see that your finally open a place to share your findings. In my opinion, your profile should work on any klte device with minimum kernel support. I haven't seen much SmartPack specific stuff in your profile except some hotplug related things. So, if you make it as a shell script instead of KA/SP-Kernel Manager profile, it shall be beneficial for everyone. Anyway, as usual, I'll kang your changes to my kernel default profile
sunilpaulmathew said:
@justjr
Nice work friend. Great to see that your finally open a place to share your findings. In my opinion, your profile should work on any klte device with minimum kernel support. I haven't seen much SmartPack specific stuff in your profile except some hotplug related things. So, if you make it as a shell script instead of KA/SP-Kernel Manager profile, it shall be beneficial for everyone. Anyway, as usual, I'll kang your changes to my kernel default profile
Click to expand...
Click to collapse
I think this profile should work on original Kernel Adiutor, or any fork of it, shouldn't it?
It should work on any other kernel if the changes really stick, and uses the same paths, but MPDecision will mess with frequencies all the time. It would still follow the governor tunables anyway, but it will interfere with it and in the end will not gain too much efficiency out of it.
Actually I only state it is for SmartPack specifically because of the fact that is the only one I can disable MPDecision on our device, and because I included all the tweaks other then just governor tweaks.
Actually I'm kinda lazy right now, but I could do a shell script if any demand for it shows up.
justjr said:
I think this profile should work on original Kernel Adiutor, or any fork of it, shouldn't it?
It should work on any other kernel if the changes really stick, and uses the same paths, but MPDecision will mess with frequencies all the time. It would still follow the governor tunables anyway, but it will interfere with it and in the end will not gain too much efficiency out of it.
Actually I only state it is for SmartPack specifically because of the fact that is the only one I can disable MPDecision on our device, and because I included all the tweaks other then just governor tweaks.
Actually I'm kinda lazy right now, but I could do a shell script if any demand for it shows up.
Click to expand...
Click to collapse
Well, official KA (free version) doesn't allow to import profiles (paid feature), but all other mods does.
and yes, it is supposed to work on every klte device as long as the sysfs paths exist. Means it should work on any custom Kernel with lazyplug support (most of the other stuff are actually included in the stock kernel itself). Of course, the default settings provided by the kernel devs might conflict. e.g., as you said, MPDecision, although the line "stop mpdecison" in your profile will disable it. By the way, I'm not the only one who disabled mpdecision and relay on other hotplugs in this klte community
sunilpaulmathew said:
Well, official KA (free version) doesn't allow to import profiles (paid feature), but all other mods does.
and yes, it is supposed to work on every klte device as long as the sysfs paths exist. Means it should work on any custom Kernel with lazyplug support (most of the other stuff are actually included in the stock kernel itself). Of course, the default settings provided by the kernel devs might conflict. e.g., as you said, MPDecision, although the line "stop mpdecison" in your profile will disable it. By the way, I'm not the only one who disabled mpdecision and relay on other hotplugs in this klte community
Click to expand...
Click to collapse
Oh, really? Which one? I must had missed it. I've tested all kernels I could find. At least all the remotely up-to-date, like venom, tuned and boeffla kernels. I didn't see any option to change hotplugs on any. There were hotplug profiles, to keep cores online and stuff, but everyone of them keep changing min and max frequency at MPDecision will.
justjr said:
Oh, really? Which one? I must had missed it. I've tested all kernels I could find. At least all the remotely up-to-date, like venom, tuned and boeffla kernels. I didn't see any option to change hotplugs on any. There were hotplug profiles, to keep cores online and stuff, but everyone of them keep changing min and max frequency at MPDecision will.
Click to expand...
Click to collapse
Boeffla and Venom largely depends on MPDecision. However, as I remember correctly (on the basis of the code review, not from my experience, I never used it by myself), the Tuned kernel by @fbs disabled MPDecision upon booting to work well with its own Tuned hotplug.
sunilpaulmathew said:
Boeffla and Venom largely depends on MPDecision. However, as I remember correctly (on the basis of the code review, not from my experience, I never used it by myself), the Tuned kernel by @fbs disabled MPDecision upon booting to work well with its own Tuned hotplug.
Click to expand...
Click to collapse
I tested it too. And although he claims he uses hes own hotplug, it behave the same as boeffla and venom, it has the same profiles, and it does changes min and max freq out of my control.
justjr said:
I tested it too. And although he claims he uses hes own hotplug, it behave the same as boeffla and venom, it has the same profiles, and it does changes min and max freq out of my control.
Click to expand...
Click to collapse
no it doesn't change any freqs
it works by disabling or enabling cores, just that.
if any cpu reaches the maximum frequency, it enables one more core (as the other ones are already giving their best)
if any cpu reaches the minimum frequency too many times, it disables it (as it doesn't seem to be needed)
so in any moment you can have all 4 cores enabled or only 1. even with display on or off, it doesn't matter
mpdecision will NEVER let you use just 1 core, and it doesn't react as fast: battery hog
fbs said:
no it doesn't change any freqs
it works by disabling or enabling cores, just that.
if any cpu reaches the maximum frequency, it enables one more core (as the other ones are already giving their best)
if any cpu reaches the minimum frequency too many times, it disables it (as it doesn't seem to be needed)
so in any moment you can have all 4 cores enabled or only 1. even with display on or off, it doesn't matter
mpdecision will NEVER let you use just 1 core, and it doesn't react as fast: battery hog
Click to expand...
Click to collapse
Alright, sorry then, it seems my memories got clouded or something, as I've tested it about a month ago. I might go back any day just to test that. Thanks for giving us one more kernel option! :good:
UPDATE OP WITH
Description
Changelogs
New profile 011118, changelog:
. Few governor tweaks
. Removed Virtual Memory and LMK tweaks, let it on default or use L-Speed to optimize, it does a much better job then me
Also uploading the L-Speed profile I use so those who want to use it like I do, but you can choose any VM and LMK profile that fits your needs on the app. Just don't use the governor tuner because it will mess with my tunings, and l-speed governor tuning is a generic one for all devices, VM and LMK is OK to use generic tweaks, but not on governor.
@sunilpaulmathew I took a look at l-speed virtual memory and lmk profiles and they make incredible sense, take a look yourself, they may be what you need to put o that spectrum profiles, because above all they are device independent and do make a noticeable difference.
Is it valide for stock rom (6.0)?
lollazzo said:
Is it valide for stock rom (6.0)?
Click to expand...
Click to collapse
What kernel? It should work if the kernel have lazyplug or alucard hotplug, if is the late you just have to enable it.
Updates
SmartPack Manager Profile 031118:
. Governor tunning: better high load management;
. Included back only 3 sane VM configurations, no more freezing, better cooling (less cpu needed, while performance barely took a hit)
. Sane LMK configurations, kills apps not being used faster, retain some multitasking while not let it slow down the device
LSpeed Profile 031118:
. Removed most tweaks, only left minor stuff, refer to the OP.
L Speed profile is not really needed, SmartPack will do 99% of the job.
OP: descriptions for both profiles updated.
New profile.
I returned to Nougat, RR 5.8.5, same configs works awesomely and the device is cooler/faster then with Oreo. But still will works the same with both N/O and even Pie, not tested.
I also reinstalled Hearthstone as a high load app so I could tune the governor better for it, and up to 1490 MHz nothing is changed, and changed a bit target_loads and above_hispeed of the clocks above it so Hearthstone (and any other high load apps, or, using split screen with youtube) runs smoother/without lags and tasks like opening an app will finish faster, and also go back to a lower clock faster because of that. So, in the end it stays most of the time at lower clocks anyway, only difference is that it will jump faster when needed for less waiting time/lag.
Just to clarify, this is not suppose to waste battery, or drain it faster. As an efficiency profile the goal is to do the job you the want faster the possible, ramping up to the clocks that the jobs demands, without lags (or minimal lags) and go back to idle/lower clocks as soon as high clocks aren't needed anymore, so it don't overstay at a higher clocks then it's needed, very simple.
So, going to a high clock doesn't mean less battery life, finishing a job fast and going back to idle is the key to achieve more battery life, specially during deep sleep, when you really want your device go back to deep sleep fast, but also at any other time. Watching youtube, browsing and using low demand apps still uses the same clocks.
Also, on top of that you will spend more time USING the device instead of WAITING for it to finish a job. Battery life is very subjective, and SoT doesn't mean nothing IRL, I mean, are you spend that SoT waiting for a job to finish or to actually use the device?
081118 smartpack profile:
- target_load (no changes up to 1497600) ...1728000:89 1958400:91 2265600:95 -> ...1728000:88 1958400:90 2265600:95
- above_hispeed 20000 1190400:60000 1497600:64000 1728000:77000 1958400:84000 2265600:130000 -> 20000 1190400:60000 1728000:68000 1958400:79000 2265600:110000
- external storage read-ahead from 512 -> 2048 (because I've gone from a 8GB to a 32 GB SDCard, ADJUST YOURS ACCORDINGLY TO https://androidmodguide.blogspot.com/p/io-schedulers.html)
- cleaned unused and already default values from profile
File attached on OP.
I don't use SD card so what do I do?
razor17 said:
I don't use SD card so what do I do?
Click to expand...
Click to collapse
In that case nothing is needed, the configurations related to the absent sd card will not be applied.
Ok guys. I was wondering why my device was heating a lot more these last 2 days. Turns out both Alucard and Lazyplug were accidentally activated on 081119 profile. Turn one of them off and everything will be a lot better. Sorry for that. I will upload a new profile very soon.
edit:
101118 smartpack profile:
- Turned Alucard off, accidentally activated it with Lazyplug also enabled, not good!
- Managed to go 1 point higher on freq 1497 MHz, the 2 hotplugs enabled were messing with me trying to test this change before, also 1 point lower on the idle freq 268 MHz for smoother scrolling while still staying at freq 268 while idle. And some more high load optimizations now that I only got 1 hotplug enabled as it should always be.
- target_loads from 268800:29 ... 1497600:86 1574400:5 1728000:88 1958400:90 2265600:95 to -> 268800:28 ... 1497600:87 1574400:5 1728000:89 1958400:91 2265600:94
- above_hispeed 20000 1190400:60000 1728000:68000 1958400:79000 2265600:110000 -> 20000 1190400:60000 1728000:74000 1958400:82000 2265600:120000
- dirty_background_ratio 15 -> 10
I will give this a try. Hope it works well...
Yeah.
You know, try it and report back. I don't see any reports, so I assume is working well for people.
Any reports are welcome.
lentm said:
I will give this a try. Hope it works well...
Click to expand...
Click to collapse
Enviado de meu SM-G900M usando o Tapatalk
justjr said:
Yeah.
You know, try it and report back. I don't see any reports, so I assume is working well for people.
Any reports are welcome.
Enviado de meu SM-G900M usando o Tapatalk
Click to expand...
Click to collapse
No problems so far...greats for daily use..scrolling smoother than default..but pubg still laggy on lower res...may i know which rom are u using?

[KERNEL][11] Placebo Kernel - LOS 18.1 Undervolting

Changelog:
2021-06-06
-Merge to 54ffccbf053b5b6ca4f6e45094b942fab92a25fc
Disclaimer: I have no idea what I'm doing, I just copy pasted some stuff together and compiled the kernel. This kernel was only momentarily tested on an SM-G900T (klte). If there's a compatibility problem you will probably boot loop until you fix it. Undervolting can cause issues. You have been warned!
This is the LOS 18.1 kernel from https://github.com/LineageOS/android_kernel_samsung_msm8974/ with the KTOONSEZ undervolting control mods from https://github.com/alaskalinuxuser/...mmit/37664e51977ccd27563458526463f53c6be0490a
The gcc version is a 4.9 I got from this GitHub page:
https://github.com/Duhjoker/arm-linux-androideabi-4.9
Intro:
This kernel allows tweaking CPU voltages. We're interested in undervolting the CPU so it uses less voltage to operate. The extent you can undervolt your CPU is based on luck. While your CPU will run more efficiently with an undervolt, real-world benefits are sometimes hard to tell. For example, your phone may compensate for cooler operation by running at a higher speed more often. Any battery life benefits to undervolting this one part of the phone are ambiguous, it's really hard to test.
Prerequisites:
You will need root on your phone! If you don't have root you can get it by installing Magisk. First install Magisk's apk file in Android. Then rename the apk so it has a .zip file extension and leave it in your phone's storage.
Releases · topjohnwu/Magisk
The Magic Mask for Android. Contribute to topjohnwu/Magisk development by creating an account on GitHub.
github.com
Instructions:
0. Keep a copy of Magisk's .zip on your phone!
1. Download the latest *boot.img and place it in your phone's storage
2. Boot to TWRP recovery or the recovery you use
3. Tap Install -> Tap "Install Image" to toggle the button
4. Select boot.img and FLASH TO YOUR BOOT PARTITION
4a. If you use Magisk it's broken now. Tap "Install Zip" to toggle the button and flash Magisk's zip
5. Reboot
6. Install SmartPack Kernel Manager OR Kernel Adiutor and grant it root privileges. You may now tweak your CPU voltage in the app. Once you are happy with your settings use the "Apply on Boot" to make the settings permanent.
https://f-droid.org/en/packages/com.smartpack.kernelmanager/
https://f-droid.org/en/packages/com.nhellfire.kerneladiutor/
Note: The kernel does not persist. You will need to reinstall it after every LOS update.
(Not) Optional: Consider making a TWRP backup of your phone. Unstable undervolting can result in data loss.
Help, I'm boot looping/can't boot because of unstable undervolt:
Download your phone's particular LineageOS zip from https://download.lineageos.org/ and unzip it. Put the boot.img file on your phone and flash it to the BOOT partition in recovery.
Undervolting guide:
Not all two phones are the same. Look at your stock voltages or old forum posts for reference. The S5's SoC is the MSM8974PRO/MSM8974AC, marketed as the Snapdragon 801. Also see the binning info at the bottom of this guide to learn your phone's binning.
Open SmartPack and go to CPU Voltage in the menu. It will display a big list of CPU clock speeds and voltages. These are your stock voltages. Your goal is to lower them some amount without your phone crashing. On the top part of the app you can scroll to "Global Offset" and enter one number to lower all the voltages at once.
I recommend trying a -30 mV or -40 mV global offset first, it seems like most phones can handle this. After you set your undervolt you should test for stability before making it permanent. Here are some ideas:
-Use your phone as you normally would.
-Keep playing videos on your phone
-Try the stress test in the bottom of this guide
Do not daily drive your phone for work until you're reasonably sure your undervolt is stable. You don't want it to crash when doing something important.
Once you have a good global offset you can start tweaking individual CPU states to lower voltages even more. This can get really annoying since there are so many. If you want to fine-tune I recommend only giving special attention to the top speed (2457), the middle speeds (1574 in particular, but include everything up to 1267 if you have to), and the lowest speed (300.)
The average phone tends to spend the most time in those states so focusing on those will help save your sanity.
To set your undervolt permanently enable "Apply on Boot" and SmartPack will set the values when your phone starts.
Spotting an unstable undervolt:
If one or more CPU states are unstable your phone will suddenly hang, hard reboot, fast reboot or other anomalies. You will probably also see CPU problems in the logs. Do "su; dmesg" in a Terminal or "su;logcat" to see. The cure for a bad undervolt is not undervolting so much. It can be hard to tell which CPU states are unstable unfortunately, you may have to adjust all of them to be sure,
Tips:
-Undervolts can be hard to test for stability, so try to leave some overhead if you don't have all day. SmartPack/Kernel Adiutor lets you set a global offset if you only want a small UV!
-You can set unusually low voltages for 300 MHz. Its stock voltage is about 750-800 mV but it will usually work on 650 mV and go as low as 600 mV if you're lucky.
-Low freqs are usually better at getting undervolted than the top freqs
-Not all cores will run at the same freqs/voltages. Disabling most of your cores is a good way to prevent your phone from heating up during stress tests but may lead to instability when you reactivate all of your cores.
-Your phone's battery draining may spontaneously cause your undervolt to become unstable. Unfortunately you just have to make the UV less aggressive if this happens.
-Try not switch the governor. To change CPU behavior go to Settings > Battery >Battery Saver and Performance > Performance Profile and toggle the slider as you see fit.
I recommend using Balanced and switching to Quick when you need your phone to be faster.
Performance is very energy inefficient. It prevents all cores from parking and tries to peg at least some of them to top speed. One core performance can be better than quick but multi-core makes it very easy for the phone to throttle.
LOS uses Qualcomm's MPDecision hotplugger. Switching governors causes glitches MPDecision and prevent CPU cores from parking. If you really want to try out governor tweaks, you should disable MPDecision in SmartPack first. Disabling MPDecision will incur a battery life penalty since your CPU will no longer park.
Synthetic stress test:
Install Termux and run this one-liner to stress one core:
Code:
while true; do openssl speed -evp aes-256-gcm; sleep 15s; done
For 4 cores:
Code:
while true; do openssl speed -multi 4 -evp aes-256-gcm; sleep 15s; done
You can also use this test to compare performance or to observe thermal throttling. OpenSSL will return a performance score after each run.
Sample stock/undervolt values from my speed3-pvs9-bin-v1 SM-G900T:
{
"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"
}
Very minor LOS power saving tweaks that don't help very much but they're funny:
-Search "Backlight" in the settings and turn off the backlight for the Menu and Back keys.
-The battery/notification LED can be adjusted down to about 7% brightness
-LOS has several settings for turning off haptic feedback/vibrations. I turned them off for the touch keyboard and the Menu/Back keys.
SoC Binning Information:
Your phone's SoC is tested for quality and assigned a PVS number at the factory. For S5, it ranges from PVS0 (low quality) to PVS15 (high quality). Higher quality have lower stock voltages. Check by running these in a terminal:
Code:
su
cat /sys/module/clock_krait_8974/parameters/table_name
You can compare the bins here
boot loop
vlad3647 said:
boot loop
Click to expand...
Click to collapse
Which device do you use?
I left some default undervolts in the PVS tables because they didn't work for me, maybe it's causing the problem. I'll remove them and compile it again later.
Klte
I don't mind boot loop,I reinstall everything
vlad3647 said:
I don't mind boot loop,I reinstall everything
Click to expand...
Click to collapse
You can always fix the boot loop by flashing boot.img from the lineageos zip.
I compiled build PlaceboKernel05072021V2.img without modified PVS tables in the first post. Still works on my phone.
I uploaded a V3 as boot.img, I don't know if this makes a difference. Works on my phone.
I didn't know thanks
Thanks, is working great
Flashed the `boot.img` file itself; verified working on my G900P!
Merged changes (includes the sdcard related ones.)
can't change the values on the voltage. phone keeps on rebooting. using g900t
update: got it to work. testing in progress
Boatshow said:
Changelog:
2021-06-06
-Merge to 54ffccbf053b5b6ca4f6e45094b942fab92a25fc
Disclaimer: I have no idea what I'm doing, I just copy pasted some stuff together and compiled the kernel. This kernel was only momentarily tested on an SM-G900T (klte). If there's a compatibility problem you will probably boot loop until you fix it. Undervolting can cause issues. You have been warned!
This is the LOS 18.1 kernel from https://github.com/LineageOS/android_kernel_samsung_msm8974/ with the KTOONSEZ undervolting control mods from https://github.com/alaskalinuxuser/...mmit/37664e51977ccd27563458526463f53c6be0490a
The gcc version is a 4.9 I got from this GitHub page:
https://github.com/Duhjoker/arm-linux-androideabi-4.9
Intro:
This kernel allows tweaking CPU voltages. We're interested in undervolting the CPU so it uses less voltage to operate. The extent you can undervolt your CPU is based on luck. While your CPU will run more efficiently with an undervolt, real-world benefits are sometimes hard to tell. For example, your phone may compensate for cooler operation by running at a higher speed more often. Any battery life benefits to undervolting this one part of the phone are ambiguous, it's really hard to test.
Prerequisites:
You will need root on your phone! If you don't have root you can get it by installing Magisk. First install Magisk's apk file in Android. Then rename the apk so it has a .zip file extension and leave it in your phone's storage.
Releases · topjohnwu/Magisk
The Magic Mask for Android. Contribute to topjohnwu/Magisk development by creating an account on GitHub.
github.com
Instructions:
0. Keep a copy of Magisk's .zip on your phone!
1. Download the latest *boot.img and place it in your phone's storage
2. Boot to TWRP recovery or the recovery you use
3. Tap Install -> Tap "Install Image" to toggle the button
4. Select boot.img and FLASH TO YOUR BOOT PARTITION
4a. If you use Magisk it's broken now. Tap "Install Zip" to toggle the button and flash Magisk's zip
5. Reboot
6. Install SmartPack Kernel Manager OR Kernel Adiutor and grant it root privileges. You may now tweak your CPU voltage in the app. Once you are happy with your settings use the "Apply on Boot" to make the settings permanent.
https://f-droid.org/en/packages/com.smartpack.kernelmanager/
https://f-droid.org/en/packages/com.nhellfire.kerneladiutor/
(Not) Optional: Consider making a TWRP backup of your phone. Unstable undervolting can result in data loss.
Help, I'm boot looping/can't boot because of unstable undervolt:
Download your phone's particular LineageOS zip from https://download.lineageos.org/ and unzip it. Put the boot.img file on your phone and flash it to the BOOT partition in recovery.
Undervolting guide:
Not all two phones are the same. Look at your stock voltages or old forum posts for reference. The S5's SoC is the MSM8974PRO/MSM8974AC, marketed as the Snapdragon 801. Also see the binning info at the bottom of this guide to learn your phone's binning.
Open SmartPack and go to CPU Voltage in the menu. It will display a big list of CPU clock speeds and voltages. These are your stock voltages. Your goal is to lower them some amount without your phone crashing. On the top part of the app you can scroll to "Global Offset" and enter one number to lower all the voltages at once.
I recommend trying a -30 mV or -40 mV global offset first, it seems like most phones can handle this. After you set your undervolt you should test for stability before making it permanent. Here are some ideas:
-Use your phone as you normally would.
-Keep playing videos on your phone
-Try the stress test in the bottom of this guide
Do not daily drive your phone for work until you're reasonably sure your undervolt is stable. You don't want it to crash when doing something important.
Once you have a good global offset you can start tweaking individual CPU states to lower voltages even more. This can get really annoying since there are so many. If you want to fine-tune I recommend only giving special attention to the top speed (2457), the middle speeds (1574 in particular, but include everything up to 1267 if you have to), and the lowest speed (300.)
The average phone tends to spend the most time in those states so focusing on those will help save your sanity.
To set your undervolt permanently enable "Apply on Boot" and SmartPack will set the values when your phone starts.
Spotting an unstable undervolt:
If one or more CPU states are unstable your phone will suddenly hang, hard reboot, fast reboot or other anomalies. You will probably also see CPU problems in the logs. Do "su; dmesg" in a Terminal or "su;logcat" to see. The cure for a bad undervolt is not undervolting so much. It can be hard to tell which CPU states are unstable unfortunately, you may have to adjust all of them to be sure,
Tips:
-Undervolts can be hard to test for stability, so try to leave some overhead if you don't have all day. SmartPack/Kernel Adiutor lets you set a global offset if you only want a small UV!
-You can set unusually low voltages for 300 MHz. Its stock voltage is about 750-800 mV but it will usually work on 650 mV and go as low as 600 mV if you're lucky.
-Low freqs are usually better at getting undervolted than the top freqs
-Not all cores will run at the same freqs/voltages. Disabling most of your cores is a good way to prevent your phone from heating up during stress tests but may lead to instability when you reactivate all of your cores.
-Your phone's battery draining may spontaneously cause your undervolt to become unstable. Unfortunately you just have to make the UV less aggressive if this happens.
-Try not switch the governor. LOS uses Qualcomm's MPDecision hotplugger. Switching governors will glitch MPDecision and prevent CPU cores from parking. If you really want to try out governor tweaks, you should disable MPDecision in SmartPack first. Disabling MPDecision will incur a battery life penalty since your CPU will no longer park.
Synthetic stress test:
Install Termux and run this one-liner to stress one core:
Code:
while true; do openssl speed -evp aes-256-gcm; sleep 15s; done
For 4 cores:
Code:
while true; do openssl speed -multi 4 -evp aes-256-gcm; sleep 15s; done
You can also use this test to compare performance or to observe thermal throttling. OpenSSL will return a performance score after each run.
Sample stock/undervolt values from my speed3-pvs9-bin-v1 SM-G900T:
View attachment 5302815View attachment 5302817
Very minor LOS power saving tweaks that don't help very much but they're funny:
-Search "Backlight" in the settings and turn off the backlight for the Menu and Back keys.
-The battery/notification LED can be adjusted down to about 7% brightness
-LOS has several settings for turning off haptic feedback/vibrations. I turned them off for the touch keyboard and the Menu/Back keys.
SoC Binning Information:
Your phone's SoC is tested for quality and assigned a PVS number at the factory. For S5, it ranges from PVS0 (low quality) to PVS15 (high quality). Higher quality have lower stock voltages. Check by running these in a terminal:
Code:
su
cat /sys/module/clock_krait_8974/parameters/table_name
You can compare the bins here
Click to expand...
Click to collapse
LMAO imagine undervolting a 7 year old device...
ralovesoc said:
LMAO imagine undervolting a 7 year old device...
Click to expand...
Click to collapse
Are you here just to make a fun of something? That's rude.
Yes, it's a 7 years old 28nm CPU, which is obviously isn't as power efficient as modern ones. 28nm is huge by today's standards.
7 years ago, this phone came in a box with additional battery and a battery charger, because it was an issue even then. What's the problem in undervolting or underclocking the device when performance isn't a priority, to make it last longer?
To change CPU behavior go to Settings > Battery >Battery Saver and Performance > Performance Profile and toggle the slider as you see fit. I think this is how you're supposed to do it because changing governor settings directly causes glitches. Performance preset pegs most cores to top speed.
Garry58 said:
7 years ago, this phone came in a box with additional battery
Click to expand...
Click to collapse
Maybe in some markets but I don't think that was true. Have an ad that didn't age well.
Boatshow said:
Maybe in some markets but I don't think that was true. Have an ad that didn't age well.
Click to expand...
Click to collapse
Maybe only in EU? I don't know. I have 900F model. That ad is just typical Samsung ad. They're openly laughing at iPhone, but literally next year do the same thing with Galaxy S6. At this point, I don't think marketing team has any communication with development team.
Boatshow said:
You can always fix the boot loop by flashing boot.img from the lineageos zip.
I compiled build PlaceboKernel05072021V2.img without modified PVS tables in the first post. Still works on my phone.
I uploaded a V3 as boot.img, I don't know if this makes a difference. Works on my phone.
Click to expand...
Click to collapse
what do you mean V3?
@vlad3647 That was an old post, there is no V3 anymore. Now I name by date. Currently the latest is 06-06-2021_boot.img.
@Boatshow
Are you able to add some hotplug options to the kernel? Without all cpu cores stay online all the time, what of course means unnecessary energy wasting.
@v00d007 Not sure what you mean, the default hotplugger MPDecision still works with the modified kernel. If the cores stop parking it's probably because MPDecision is disabled or a CPU settings change caused it to glitch.
If you're talking about an alternative hotplugger fbs wrote one here. Nobody can compare it to MPDecision because that is closed source. I read several years ago that hotpluggers only save small percents over a few hours so I don't know if testing differences is worth trying.
tuned-kernel-S5/drivers/staging/tuned at ten · bemerguy/tuned-kernel-S5
Contribute to bemerguy/tuned-kernel-S5 development by creating an account on GitHub.
github.com
Maybe a hackjob you can do is compile the tuned plugger (or get the binary from the zip) and swap it out with the MPDecision binary. It should be at /system/bin/mpdecision or somewhere similar.
Boatshow said:
Not sure what you mean, the default hotplugger MPDecision still works with the modified kernel. ...
Click to expand...
Click to collapse
Well, the problem for me is that in kernel adiutor the category "hotplug" doesn't show up. And category "cpu" shows that no core goes offline at any time. If MPDecision was active, 1 or 2 cores should go offline from time to time if there's no load. Normally I use Intelliglug and for me it makes a noticable difference in battery cycles (~10-15%).

Categories

Resources