Weird behaviour with some cpu governors - One (M8) Q&A, Help & Troubleshooting

I am currently on RR with the m8 kernel.
I am seeing a very bizarre behavioural pattern where powersaving governors and hotplugs such as alucard have ha huge battery consumption whereas interactive governors such as yankactive or intelliactive consume way less.
For example my current settings are smartmax_eps governor with msm_hotplug,
Code:
CPU Maximum Frequency 1267Mhz
CPU minumum Frequency 268Mhz
Sync threshold disabled
Input boost frequency disabled
For my hotplug I have the MSM Hotplug
Code:
all defaults
For GPU governor
Code:
Max Frequency 462Mhz
GPU governor powersave
I have also enabled vomer accurich in screen settings, but I don't think it should have any bearings on the battery life.
and it still consumes more than Intelliactive with the MSM Hotplug and 2 Boosted cores. and max boost frequency 2419MHz.
I don't even want to talk abour zzmoove that has an incredible power drain when I have enabled the zzmoove all hotplugs disabled and zzmoove native hotplug enabled (23%/h).
Am I doing something wrong or are some of my configurations wrong? I have tasker and wanted to have the best powersaving experience while on the go and then switch over to a good interactive governor when playing some games sometimes. I am missing the power saving profile with great battery life.
Does here someone have a better configuration profile or an idea of what the problem might be or the thing that I am missing?

Alucard, arteractive and SavagedZen use more 2.4GHz(max freq). I noticed that, and I don't know why mentioned governors do that.
That's on Team M8 kernel.

@Zile995
What is the reasoning behind using max freq so much? Isn't it so that 4 slow cores tend to be more energy effiecient than 2 fast ones?
What is the setup you are using if I may ask?

Nyquis said:
@Zile995
What is the reasoning behind using max freq so much? Isn't it so that 4 slow cores tend to be more energy effiecient than 2 fast ones?
What is the setup you are using if I may ask?
Click to expand...
Click to collapse
This http://forum.xda-developers.com/showthread.php?p=68121297
+ intelli_plug
They have bugs, I don't know why.

Related

[Q] SETCPU GOvernOrs

okay i have a huge question about this... PLease Share YOUR Thoughts and experiences TOoOO!
we are using custom kernels right? but sometimes the developer/creator of the kernel doesnt mention on what recommended usage of the main profile and profile..
so i decided to put some description about this governs that i have gathered around in XDA FORUM so we can share our knowledge on this GOverns.
okay first.. i found this..
smartass governor - is based on the concept of the interactive governor.
I have always agreed that in theory the way interactive works - by taking over the idle loop - is very attractive. I have never managed to tweak it so it would behave decently in real life. Smartass is a complete rewrite of the code plus more. I think its a success. Performance is on par with the "old" minmax and I think smartass is a bit more responsive. Battery life is hard to quantify precisely but it does spend much more time at the lower frequencies.
Smartass will also cap the max frequency when sleeping to 352Mhz (or if your min frequency is higher than 352 - why?! - it will cap it to your min frequency). Lets take for example the 528/176 kernel, it will sleep at 352/176. No need for sleep profiles any more.
ondemand
Available in most kernels, and the default governor in most kernels. When the CPU load reaches a certain point (see "up threshold" in Advanced Settings), ondemand will rapidly scale the CPU up to meet demand, then gradually scale the CPU down when it isn't needed. - SetCPU website
conservative
Available in some kernels. It is similar to the ondemand governor, but will scale the CPU up more gradually to better fit demand. Conservative provides a less responsive experience than ondemand, but can save battery. - SetCPU website
performance
Available in most kernels. It will keep the CPU running at the "max" set value at all times. This is a bit more efficient than simply setting "max" and "min" to the same value and using ondemand because the system will not waste resources scanning for the CPU load. This governor is recommended for stable benchmarking. - SetCPU website
powersave
Available in some kernels. It will keep the CPU running at the "min" set value at all times. - SetCPU website
userspace
A method for controlling the CPU speed that isn't currently used by SetCPU. For best results, do not use the userspace governor. - SetCPU website
interactive
Advantages:
+ significantly more responsive to ramp cpu up when required (UI interaction)
+ more consistent ramping, existing governors do their cpu load sampling in a workqueue context, the 'interactive' governor does this in a timer context, which gives more consistent cpu load sampling.
+ higher priority for cpu frequency increase, rt_workqueue is used for scaling up, giving the remaining tasks the cpu performance benefit, unlike existing governors which schedule rampup work to occur after your performance starved tasks have completed.
SOURCES:
http://forum.xda-developers.com/showthread.php?t=969477
https://github.com/CyanogenMod/cm-kernel/commit/255f13bf41f368aa51638a854ed69cfc60f39120
Nice thread. I am new to this stuff (I learned just yesterday what governors are) and all this will be very usefull for people like me. Thanx.
In the SetCPU app, if you press About and then click the link you can get all this info there too
So Guys,
Im using Buzz 1.3.5 kernel at 1.2 Ghz (1.6 Ghz max), with ARHD rom.
What the best processor type to battery life \ performance ?
Any kind of values to screen of and temp > 50º or 40º ?
Thank you , lets share our configurations and post results !
so how do we get smartass? Im currently trying out interactive.
So guys, no one can put here some configurations?
Like, screen off values, > 50º temp, and others ?
Come on, share pls..

[Q] ondemand vs InteractiveX

Hi guys!
i was wondering if interactiveX governor is more "battery Friendly" than Ondemand....what do you think about it?
Which min.Freq is reccomended in DoomKernel for GB ( using x-gamer 1.8 rom)??
Happy reading - http://forum.xda-developers.com/showthread.php?t=1663809
tnx, i've already readed the post but i'm interested to a direct comparison between the 2 governors (if anyone can do it) from the battery point of view....because teorically InteractiveX should guarantee better performance/battery experience =)
Try it, the best way to find out.
InteractiveX Governor: Created by kernel developer "Imoseyon," the InteractiveX governor is based heavily on the Interactive governor, enhanced with tuned timer parameters to better balance battery vs. performance. The InteractiveX governor's defining feature, however, is that it locks the CPU frequency to the user's lowest defined speed when the screen is off.
Ondemand Governor: This governor has a hair trigger for boosting clockspeed to the maximum speed set by the user. If the CPU load placed by the user abates, the OnDemand governor will slowly step back down through the kernel's frequency steppings until it settles at the lowest possible frequency, or the user executes another task to demand a ramp.
Read-->test-->report

{KERNEL}[JB][TWRP+CWM]Trinity Ultimate Kernel V2.2 - FiXed - UltraKernelX - <OTA> -XT

{KERNEL}[JB][TWRP+CWM]Trinity Ultimate Kernel V2.2 - FiXed - UltraKernelX - <OTA> -XT
~ Trinity Ultimate Kernel RipJawsZ Edition V2.2A TUX ~
{
"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"
}
INTRODUCTION -
I NOW Present you the Best Of the Best Trinity Ultimate Vengeance Kernel V2.2 TUX, I Assure you the Best Performance and Battery Life, In Your Phones Xperia S / SL, This is Based On the Official JB Sourced.. And This Kernel Have More than 12+ Optimization and Tweaks.. To Have the Best I/O And The Best Score in your Benchmark! For Now Ive Use LINARO or Code Sourcery
DOWNLOADS - STABLE
Main Server Download / Website - 2.2 =
Standard Scores - More Battery - Version
1.7Ghz Capped Freq :http://bit.ly/12QYz6f
1.9Ghz Capped Freq :http://bit.ly/1c9xm5y
High Scores - Less Battery and More Battery - Version
1.7Ghz Capped Freq : Soon!
1.9Ghz Capped Freq : Soon!
Donate To Me TrinityHaxxorX : >> TrinityHaxxorX <<
" @mericon and @TrinityHaxxorX , We Don't Allow Other Devs to Use the TWRP That We Create, Its A Unique Feature in Our Kernel, Respect Use We Respect You "
​
" NOTE AFTER FLASHING JUST REBOOT AND ITS OKAY! "
Press thanks when you download, just once, if every person that have downloaded TVRx ROMs since the start had pressed the thanks button I would have more than 10000000 Thanks , and if every person that have downloaded TVRx ROM since the start, had donated well you know the sentence, I would be really rich , so please :
KERNEL SECTION DONORS
Thomas Rush - 10$
AnTuTu: OC To 1.7Ghz Both | Sometimes You Get Low Score Because Of Dif. Governor and Scheduler
V1 = Trinity - 9621 V2 = 10K+
Doom - 9286
Other Kernel : N/A
Kernel Source : http://bit.ly/10Y0uF3
Proof or Vouch -
almost 22 min on battery didnt lost 1% coooool BEST WITH ALL JB ROMS! Specially My ROM! - By @sparxx4
Hello Trinity! Im just posting to say thank you for you're work. Im using your kernel in combination with ur rom. Very very good work. Kernel is very stable imo and the rom is very snappy. Buttersmooth experience, increased battery life and very good benchmark/games performance. Thumbs up @Michielwashier
Dear Trinity, I think this version is the best kernel that you've created!
Works very good for me Thank you And it's seem dancedance performance is very good in this version Did you tweaked it? It's really dancing mate Wheatley is nice too Both is my favorite And I can confirm cpu1 jumping freq is gone @LLy_BosHi
Changelog -
V2.1A | 2.2B ( Re-Fixed and Re-Vamped Version )
Added CRT Hack
Kernel 3.4.20 Thanks To @Forzaferrarileo For Commit
Added New TCP Congestion Control Thanks To @Forzaferrarileo For Commit
Weak WiFi Tweak
Switched To Forza. OC Table Thanks To @Forzaferrarileo For Commit
Simple KGSL
Re-Enabled CONFIG_TRINITY_CHANGE ~ Easy 1.7 To 2.0 Ghz
eMMC in Sleep mode before suspend
Increased DMA size To 1 * 16
Enable AFTR Feature
Added Frandom
Added SLQB Memory Allocator
Revamped VMDirty
Revamped VM
Revamped PageWriteBack
Fix Benchmark Score Output
Initial 2 BootSplash - Waiting For @mericon Bootsplash
Enabled Group Scheduling
Reverted 30 Touch Gestures
Added Conservative Governor
Added CPU1 Fix V1.3 - Revamped
Added New Mpdecision - Revamped
Added Stable 2.0Ghz OC
Added Stable Voltage
Increased ReadAHead
Added CPU1 and CPU0 Info
Added Workaround To Link CPU0 and CPU1
Added Initial File for 1.7Ghz and 2.0Ghz - CONFIG_TRINITY_CHANGER=y For 2.0 and =N for 1.7
Revamped Fastcharge
Revamped I/O
Added -O3 Optimization
Increased I/O Float
Added NTFS Support Again
Removed Old Mpdecision Replaced with CPU1 Work
Frandom V1.1
Added Initial Files For ZRAM 1.1
Added Initial Files For Snappy Google Compression
Stat For CPU1 Mpdecision Should Update From Time To Time
V2.0 - Uploaded
Using Newest TWRP
Re-Enabled Color Control
FastCharge V1.3
Smooth Cpufreq Scrolling - From galaxy s2
Re-Enabled MSM_Thermal_Management 8x60 | 8960
GPU OC (?) - What is "(?)" In A Possibility That I Won't Be Added
Added SMARTMAX
Added BADASS
Added Wheatley
msm : rpm-smd : Configure WQ for High Priority
Added LIONHEART
Added Fiops
Added ROW
Added FiFo
Added Conservative
Added I/O Tweak V1.3
Added Ondemand Tweak
Possible Fix For cpu core #1
V1.9 - Uploaded
Using 1.5 Kernel Source
Using Linaro
New VR
New SIO
New CFQ
New Dancedance
Added Mpdecision V2.0
Battery Tweak
mpdecision
ZRAM
Force To Charge At Unsupported Chargers
Optimized Build Flags
msm: cpufreq: Configure WQ for higer priority
msm_fb: display: Use spinlock instead of mutex in vsync timer handler
lib/memcopy: use glibc version
switch do_fsync() to fget_light()
Lowered Swap
Tweaked Page Write Back
JIT For Default
Update Topology V1
Added XZ Compression
Boost I/O Performance
LOAD_FREQ (4*HZ+61) avoids loadavg More
random: add new get_random_bytes_arch() function
block/deadline: tweaked for better performance on android
Reduced Android Logger RAM usage
mm.c Tweak
Drivers Tweak
I/O Tweak
msm: cpufreq: Add API to allow limiting of min and max cpu frequencies
Increased Battery Capacity
V1.8 - Uploaded
OC Upto 2.0Ghz
Patched Freq to 1.5Ghz
Fixed All Freq Except Cpu1
Revamped All Governor Except Ondemand
V1.7 - Uploaded
Added Source Added AOSP Source Defconfig
Increased 2D and 3D
Compiled With code sourcery
Fastcharge V2
remove 64Bit
I/O Tweak
Tweaked Lionheart
Tweaked Ondemand
Tweaked Dancedance
Tweaked Mpdecision
Tweaked UV
Added Battery tweak V2 Alpha
V1.6 - Uploaded
BB Installer Thanks to @letama
Exp Version
TWRP
Added @mericon to my Team.
Added New Bootsplash
Added New 3D OC
AROMA Installer
Kernel 3.4.49 with SoD Fix, Memory Leak Fix, And FPS Drop Fix - WIP -
2D OC Scallable - Upto 310Mhz
Fixed Missing Config Of Governors
Improve ADB file push/pull performance
msm: iommu: Synchronize access to IOMMU cfg port
msm: kgsl: Synchronize access to IOMMU cfg port
msm: kgsl: Make the GPU device aware of the next pending event
Improve MTP File Transfer Performance
V1.5 - Uploaded
Added Fiops
Added Smoothass
Added Lagfree
Added BrazillianWax
SuperStamina Support Beta #1 @ 1.7
driver/thermal: create kernel MSM thermal management for MSM8x60
mpdecision
msm: cpufreq: Configure WQ for higer priority
msm_fb: display: Use spinlock instead of mutex in vsync timer handler
lib/memcopy: use glibc version
switch do_fsync() to fget_light()
LOAD_FREQ (4*HZ+61) avoids loadavg More
random: add new get_random_bytes_arch() function
block/deadline: tweaked for better performance on android
Reduced Android Logger RAM usage
msm: cpufreq: Add API to allow limiting of min and max cpu frequencies
Increased Battery Capacity
Increased Charging Current - Higher is Better FTW!
V1.4- Uploaded
REMOVED DOOMLORD NEW RAMDISK VIOLATES I READ OP ALREADY. Thanks Re-Uploading
Reverted To the OLD Freq. Table
Remove Frequency Table Based On Fer. Kernel
Removed Native GPU OC That I Made
LINARO Compiled
ZRAM
Force To Charge At Unsupported Chargers
Optimized Build Flags
Added Lagfree - Not In Kernel In Defconfig It Will Be Available @ 1.5
Added BrazilianWax - Not In Kernel In Defconfig It Will Be Available @ 1.5
Remove Wheatly
Added Smoothass - Not In Kernel In Defconfig It Will Be Available @ 1.5
Fix Leak Memory
Fix Frequency Boot-up
V1.3 - Skipped Private Testing For 24hrs
V1.2 - Uploaded!
Voltage Control
New Build Flag
I/O Tweak V2
New Bootsplash By @Yakandu
GPU OC 2D/3D
GPU Control
New Frequency Table
Battery Tweak
FastCharge V1 Port from NOVA
V1.1 - Uploaded!
Increased I/O Performance x2
SIO Tweak
Compiled with Linaro Cortex
Linaro Optimization
Added Wheatly
Added SIO
Added HotPlug
Increased Entropy
Lowered Swap
Tweaked Page Write Back
JIT For Default
Update Topology V1
Added XZ Compression
Boost I/O Performance
V1.0
DoomLord RAMDISK
Pre-Rooted
Busybox
Compiled With Linaro ToolChain
Snapdragon Optimization
mm.c Tweak
Drivers Tweak
I/O Tweak
VM_READHEAD Tweak Increased
Battery Charge Tweak
dancedance Governor
Overclocking Support
Undervolting Support
Future Plan -
TWRP Recovery
Add Fugeswap
Arm: Allow CPU-supported unaligned accesses
CS ToolChain
O3 Optimization
SuperStamina Support
All Governors
USB OTG Support
USB Fast Charge
Nightmare Governor - TEST
Trinity Governor Based On - Dancedance
Tweak audio buffers for Beats
Complete I/O Scheduler
Many More That Is My Plan For 1.2 To 1.5
What Is A Kernel?
Android (like many other Smartphone operating systems) runs on the Linux kernel. The Linux kernel was created in the early 1990’s by a gentleman named Linus Torvalds in Helsinki Finland. It’s incredibly stable, incredibly friendly, and incredibly difficult for the layman to understand and modify. Thankfully it’s also very popular so it has been ported on to a multitude of hardware, including our Android devices.
Think of the kernel as an interface layer between the hardware and software on your device. The kernel decides when things happen, such as the LED indicator gets lit. An application sends a request to the operating system to blink the LED. The operating system then sends the request to the kernel, which makes the light flash for the amount of time requested by the OS.
What sounds like a round-about way to get things done is also what makes the system so scalable and robust. Application developers only have to code in a way the operating system understands and the kernel makes it work on the hardware. This also keeps the application running in it’s own user-space and separate from the kernel. That means when you run the latest uber-cool app that wasn’t designed for your particular OS version, or is still very beta and it crashes, the kernel gives you the option to Force Close the application and the kernel can run untouched.
In a standard Android ROM (we will leave developer images and the like for another discussion) the kernel is bundled along with a set of instructions that tell the device how to load the kernel and the OS during boot. This is the boot.img that you see inside a zipped ROM that you're not able to easily open. The device knows to extract this image to internal memory (the ramdisk) and follow a series of scripts (init scripts) to load the kernel and then the other portions of the OS. That’s what’s happening while you’re watching the boot animation. Interestingly enough this is done the same way for a PC, your smartphone, an Android tablet, or even a smart Linux powered toaster. If you’re feeling exceptionally geeky, plug your Android phone into the USB port on your PC and let the PC boot from the USB device. No, it doesn’t actually load, but you can watch the animation while it tries to match up the hardware support with what’s inside your PC. As I said, Linux is amazingly scalable and as a result so is Android.
​ Credits -
DooMLord
Sony
XDA
BitBucket
!THREAD UNDER CONSTRUCTION!​
Mpdecision and Sweep2Wake @ 1.5 Kernel SooN!
What is msm_mpdecision?​
100% kernel based multi core decision! (should cpu1 be online or not?)
This replaces your /system/bin/mpdecision binary which is renamed by the installer to mpdecision_backup.
Check /sys/kernel/msm_mpdecision/conf/ for the configuration.
startdelay = time until mpdecision starts doing it's magic (70000)
delay = time between checks (500)
pause = if something else plugs in the cpu, fall asleep for 10000
scroff_single_core = if the screen is off, don't plug in cpu1 (1)
nwns_threshold_up = runqueue threshold, if this is reached cpu1 will be hotplugged (35)
nwns_threshold_down = runqueue threshold, if this is reached cpu1 will be unplugged (5)
twts_threshold_up = time threshold, this amount of time must have passed (250)
twts_threshold_down = same as above (250)
enabled = enable(1) or disable(0) mpdecision. This does not affect scroff_single_core!
idle_freq = a value against that will be checked if a core +/- is requested. (486000)
If cpu0 is below that value and a core up of cpu1 is requested, nothing will happen.
If cpu1 is above that value and a core down of cpu1 is requested, nothing will happen. (otherwise it would now put down cpu1 even though it is still working)
Click to expand...
Click to collapse
GOVERNORS
----
Official Governors to Be Added In My Kernel
----
I) MANUAL:
These are the 19 governors we're talking about.
1) Ondemand
2) Ondemandx
3) Conservative
4) Interactive
5) Interactivex
6) Lulzactive
7) Lulzactiveq
8) Smartass
9) SmartassV2
10) Intellidemand
11) Lazy
12) Lagfree
13) Lionheart
14) LionheartX
15) Brazilianwax
16) SavagedZen
17) Userspacce
18) Powersave
19) Performance
NOTE: Info on Samsung's own multi-core aware governor - Pegasusq is here
1) Ondemand:
Default governor in almost all stock kernels. One main goal of the ondemand governor is to switch to max frequency as soon as there is a CPU activity detected to ensure the responsiveness of the system. (You can change this behavior using smooth scaling parameters, refer Siyah tweaks at the end of 3rd post.) Effectively, it uses the CPU busy time as the answer to "how critical is performance right now" question. So Ondemand jumps to maximum frequency when CPU is busy and decreases the frequency gradually when CPU is less loaded/apporaching idle. Even though many of us consider this a reliable governor, it falls short on battery saving and performance on default settings. One potential reason for ondemand governor being not very power efficient is that the governor decide the next target frequency by instant requirement during sampling interval. The instant requirement can response quickly to workload change, but it does not usually reflect workload real CPU usage requirement in a small longer time and it possibly causes frequently change between highest and lowest frequency.
2) 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.
3) Conservative:
A slower Ondemand which scales up slowly to save battery. The conservative governor is based on the ondemand governor. It functions like the Ondemand governor by dynamically adjusting frequencies based on processor utilization. However, the conservative governor increases and decreases CPU speed more gradually. Simply put, this governor increases the frequency step by step on CPU load and jumps to lowest frequency on CPU idle. Conservative governor aims to dynamically adjust the CPU frequency to current utilization, without jumping to max frequency. The sampling_down_factor value acts as a negative multiplier of sampling_rate to reduce the frequency that the scheduler samples the CPU utilization. For example, if sampling_rate equal to 20,000 and sampling_down_factor is 2, the governor samples the CPU utilization every 40,000 microseconds.
4) Interactive:
Can be considered a faster ondemand. So more snappier, less battery. Interactive is designed for latency-sensitive, interactive workloads. Instead of sampling at every interval like ondemand, it determines how to scale up when CPU comes out of idle. The governor has the following advantages: 1) More consistent ramping, because existing governors do their CPU load sampling in a workqueue context, but interactive governor does this in a timer context, which gives more consistent CPU load sampling. 2) Higher priority for CPU frequency increase, thus giving the remaining tasks the CPU performance benefit, unlike existing governors which schedule ramp-up work to occur after your performance starved tasks have completed. Interactive It's an intelligent Ondemand because of stability optimizations. Why??
Sampling the CPU load every X ms (like Ondemand) can lead to under-powering the CPU for X ms, leading to dropped frames, stuttering UI, etc. Instead of sampling the CPU at a specified rate, the interactive governor will check whether to scale the CPU frequency up soon after coming out of idle. When the CPU comes out of idle, a timer is configured to fire within 1-2 ticks. If the CPU is very busy between exiting idle and when the timer fires, then we assume the CPU is underpowered and ramp to max frequency.
5) Interactivex:
This is an Interactive governor with a wake profile. More battery friendly than interactive.
6) Lulzactive:
This new find from Tegrak is based on Interactive & Smartass governors and is one of the favorites.
Old Version: 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.
New Version: Three more user configurable parameters: inc_cpu_load, pump_up_step, pump_down_step. Unlike older version, this one gives more control for the user. We can set the threshold at which governor decides to scale up/down. We can also set number of frequency steps to be skipped while polling up and down.
When workload greater than or equal to inc_cpu_load, governor scales CPU pump_up_step steps up. When workload is less than inc_cpu_load, governor scales CPU down pump_down_step steps down.
Example:
Consider
inc_cpu_load=70
pump_up_step=2
pump_down_step=1
If current frequency=200, Every up_sampling_time Us if cpu load >= 70%, cpu is scaled up 2 steps - to 800.
If current frequency =1200, Every down_sampling_time Us if cpu load < 70%, cpu is scaled down 1 step - to 1000.
7) Lulzactiveq:
Lulzactiveq is a modified lulzactive governor authored by XDA member robertobsc and is adapted in Siyah kernel for GS2 and GS3. Lulzactiveq aims to optimize the second version of luzactive from Tegrak by a) providing an extra parameter (dec_cpu_load) to make scaling down more sensible, and b) incorporating hotplug logic to the governor. Luzactiveq is the first ever interactive based governor with hotplugging logic inbuilt (atleast the first of its kind for the exynos platform). When CPU comes out of idle loop and it's time to make a scaling decision, if load >= inc_cpu_load CPU is scaled up (like original luzactiveq) and if load <dec_cpu_load, CPU is scaled down. This possibly eliminates the strict single cut-off frequency for luzactiveq to make CPU scaling decisions. Also, stand hotplug logic runs as a separate thread with the governor so that external hotplugging logic is not required to control hotplug in and out (turn On and Off) CPU cores in multi core devices like GS2 or GS3. Only a multi core aware governor makes real sense on muti-core devices. Lulzactiveq and pegasusq aims to do that.
8) Smartass:
Result of Erasmux rewriting the complete code of interactive governor. Main goal is to optimize battery life without comprising performance. Still, not as battery friendly as smartassV2 since screen-on minimum frequency is greater than frequencies used during screen-off. Smartass would jump up to highest frequency too often as well.
9) SmartassV2:
Version 2 of the original smartass governor from Erasmux. Another favorite for many a people. The governor aim for an "ideal frequency", and ramp up more aggressively towards this freq and less aggressive after. It uses different ideal frequencies for screen on and screen off, namely awake_ideal_freq and sleep_ideal_freq. This governor scales down CPU very fast (to hit sleep_ideal_freq soon) while screen is off and scales up rapidly to awake_ideal_freq (500 mhz for GS2 by default) when screen is on. There's no upper limit for frequency while screen is off (unlike Smartass). So the entire frequency range is available for the governor to use during screen-on and screen-off state. The motto of this governor is a balance between performance and battery.
10) Intellidemand:
Intellidemand aka Intelligent Ondemand from Faux is yet another governor that's based on ondemand. Unlike what some users believe, this governor is not the replacement for OC Daemon (Having different governors for sleep and awake). The original intellidemand behaves differently according to GPU usage. When GPU is really busy (gaming, maps, benchmarking, etc) intellidemand behaves like ondemand. When GPU is 'idling' (or moderately busy), intellidemand limits max frequency to a step depending on frequencies available in your device/kernel for saving battery. This is called browsing mode. We can see some 'traces' of interactive governor here. Frequency scale-up decision is made based on idling time of CPU. Lower idling time (<20%) causes CPU to scale-up from current frequency. Frequency scale-down happens at steps=5% of max frequency. (This parameter is tunable only in conservative, among the popular governors )
To sum up, 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.
11) Lazy:
This governor from Ezekeel is basically an ondemand with an additional parameter min_time_state to specify the minimum time CPU stays on a frequency before scaling up/down. 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.
12) Lagfree:
Lagfree is similar to ondemand. Main difference is it's optimization to become more battery friendly. Frequency is gracefully decreased and increased, unlike ondemand which jumps to 100% too often. Lagfree does not skip any frequency step while scaling up or down. Remember that if there's a requirement for sudden burst of power, lagfree can not satisfy that since it has to raise cpu through each higher frequency step from current. Some users report that video playback using lagfree stutters a little.
13) Lionheart:
Lionheart is a conservative-based governor which is based on samsung's update3 source. Tweaks comes from 1) Knzo 2) Morfic. The original idea comes from Netarchy. See here. 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.
14) LionheartX
LionheartX is based on Lionheart but has a few changes on the tunables and features a suspend profile based on Smartass governor.
15) Brazilianwax:
Similar to smartassV2. More aggressive ramping, so more performance, less battery.
16) SavagedZen:
Another smartassV2 based governor. Achieves good balance between performance & battery as compared to brazilianwax.
17) Userspace:
Instead of automatically determining frequencies, lets user set frequencies.
18) Powersave:
Locks max frequency to min frequency. Can not be used as a screen-on or even screen-off (if scaling min frequency is too low).
19) Performance:
Sets min frequency as max frequency. Use this while benchmarking!
So, Governors can be categorized into 3/4 on a high level:
1.a) Ondemand Based:
Works on "ramp-up on high load" principle. CPU busy-time is taken into consideration for scaling decisions. Members: Ondemand, OndemandX, Intellidemand, Lazy, Lagfree.
1.b) Conservative Based:
Members: Conservative, Lionheart, LionheartX
2) Interactive Based:
Works on "make scaling decision when CPU comes out of idle-loop" principle. Members: Interactive, InteractiveX, Lulzactive, Luzactiveq, Smartass, SmartassV2, Brazilianwax, SavagedZen.
3) Weird Category:
Members: Userspace, Powersave, Performance.
Thank To Droiphile
Which are the linaro beneficts? I heard a lot about it months ago...
megamarini said:
Which are the linaro beneficts? I heard a lot about it months ago...
Click to expand...
Click to collapse
Here you Go Buddy http://forum.xda-developers.com/showthread.php?t=1371044
TrinityHaxxorX said:
Here you Go Buddy http://forum.xda-developers.com/showthread.php?t=1371044
Click to expand...
Click to collapse
Thank you mate... and what about dance dance governor??? something really new??? i'm not able to find it on Google,...
we win a great devolper here ,, great job man you making alot of things in short time
keep up the good work
megamarini said:
Thank you mate... and what about dance dance governor??? something really new??? i'm not able to find it on Google,...
Click to expand...
Click to collapse
Yeah Its New...
TrinityHaxxorX said:
Yeah Its New...
Click to expand...
Click to collapse
It's battery friendly or performance?
sparxx4 said:
we win a great devolper here ,, great job man you making alot of things in short time
keep up the good work
Click to expand...
Click to collapse
Not A Shorttime lol I Worked 8-14Hrs For my ROM / Kernel Since Im Out of gaming Like MW3 and LOL So I Focus Development
megamarini said:
It's battery friendly or performance?
Click to expand...
Click to collapse
For my Opinion Yes... I'll Add the dancedance Info Later Im Still In my Friend house
@megamarini Thats Why Ive Default that as My Governor Its Likely Deepsleep Much better and the Performance is in the Core kernel or source files
It's Snuzzo's own creation. It's based on conservative, but with higher ramp rates (similar to lionheart) and better sleep routines (similar to wheatley).
TrinityHaxxorX said:
@megamarini Thats Why Ive Default that as My Governor Its Likely Deepsleep Much better and the Performance is in the Core kernel or source files
It's Snuzzo's own creation. It's based on conservative, but with higher ramp rates (similar to lionheart) and better sleep routines (similar to wheatley).
Click to expand...
Click to collapse
It looks very interesting... Thank you for your work!!:victory:
megamarini said:
It looks very interesting... Thank you for your work!!:victory:
Click to expand...
Click to collapse
Its Okay Just Give Feedback Later or Sooner
Oh yeah new kernel! XD
btw was the kernel boot up screen are SONY logo or?
jimRnor said:
Oh yeah new kernel! XD
btw was the kernel boot up screen are SONY logo or?
Click to expand...
Click to collapse
Cause I Dont have any Custom Bootsplash yet lol
yes its sony logo
___
almost 22 min on battery didnt lost 1% coooool
sparxx4 said:
yes its sony logo
___
almost 22 min on battery didnt lost 1% coooool
Click to expand...
Click to collapse
What Governor
ondemand
just flashed the kernel and didnt touch any thing
26 min on battery for 1% its roock dude with brightness almost 50% you can get more great job
sparxx4 said:
ondemand
just flashed the kernel and didnt touch any thing
26 min on battery for 1% its roock dude with brightness almost 50% you can get more great job
Click to expand...
Click to collapse
Good Use dancedance soon and give feedback
Future Plan -
TWRP Recovery
Add Fugeswap
Arm: Allow CPU-supported unaligned accesses
CS ToolChain
O3 Optimization
SuperStamina Support
All Governors
USB OTG Support
USB Fast Charge
Nightmare Governor - TEST
Trinity Governor Based On - Dancedance
Tweak audio buffers for Beats
Complete I/O Scheduler
Many More That Is My Plan For 1.2 To 1.5

[Q] GT-i9195 SET CPU your settings?

Ok so I am experimenting with Set CPU app
Can you guys tell me what Profiles you run or prefer
Thanks
EwOkie said:
Ok so I am experimenting with Set CPU app
Can you guys tell me what Profiles you run or prefer
Thanks
Click to expand...
Click to collapse
I don't use SetCPU (way over complicated for no good reason) but Kernel Tweaker. With my experience on the F4k kernel:
JB - Interactive
KK - Smartass V2
IO Scheduler: normal phone use ROW. If you have some regular write operation, CFQ. I've tried SIO, ZEN and NOOP, overrated. While NOOP and ZEN feels really responsive (like mininium lag) but it unstable. As for SIO I don't see what people see in it. It not particularly faster, and nor battery friendly. At least that what I saw on my S3 with Pegasus governor. And I don't use benchmark, this is a pure observe from normal day-to-day use on open app, multi-tasking, browsing, etc. I've tried all mention governor for at least a week.
As for UV, I've done -1.5V (yes, not a typo) on my phone. Again, I don't bench or play games, just regular day-to-day email, browsing, photo, etc.
I'm on JB 4.2.2 Stock and using SmartAssV2 + ROW. Max freq. on 2.05Ghz. Working fine so far.
Check out this thread: http://forum.xda-developers.com/showthread.php?t=2686845 for undervolting results part (I'm guessing it's in your SET CPU too).
jorgeealdunate said:
I'm on JB 4.2.2 Stock and using SmartAssV2 + ROW. Max freq. on 2.05Ghz. Working fine so far.
Click to expand...
Click to collapse
wich kernel do you have bro?
blake2893 said:
wich kernel do you have bro?
Click to expand...
Click to collapse
I'm using f4ction kernel 1.3.0 with 90hardlimit_2.05Ghz.zip flashed after the kernel with TWRP.
Also, i like CPU Control, which is very easy to use.
I don't need set cpu anymore. I turn on air plane mode at night so battery life can be longer.
And checked on cpu's cores, system automaticly control frequences.
Using SetCPU the Charging with USB takes ages
Do I need to set a profile as I have tried other apps to change stuff but this seems to be the only option for me with a modified Stock Rom
Have used these settings so far with no lags or issues .. can someone pease clarify if this is ok...
SET SCREEN OFF
CPU - 810 - 384 Gov: Interactive / Priority 100
SCREEN ON
CPU - 1566 -384 Gov : OnDemand / Deadline / Priority 52
BATTERY <45
CPU - 1026 - 394 Gov: OnDemand / CFQ / Priority 50
SLEEP 00:45 - 08.25
CPU - 584 - 384 Gov: Powersave / CFQ / Priority 49
What about Battery or CPU Temp?
EwOkie said:
Using SetCPU the Charging with USB takes ages
Do I need to set a profile as I have tried other apps to change stuff but this seems to be the only option for me with a modified Stock Rom
Have used these settings so far with no lags or issues .. can someone pease clarify if this is ok...
SET SCREEN OFF
CPU - 810 - 384 Gov: Interactive / Priority 100
SCREEN ON
CPU - 1566 -384 Gov : OnDemand / Deadline / Priority 52
BATTERY <45
CPU - 1026 - 394 Gov: OnDemand / CFQ / Priority 50
SLEEP 00:45 - 08.25
CPU - 584 - 384 Gov: Powersave / CFQ / Priority 49
What about Battery or CPU Temp?
Click to expand...
Click to collapse
Powersave governor is a governor that locks on the lowest possible speed provide by the kernel. No point on setting a speed range since it doesn't dynamically switch between them.
Well as I mention above, I don't recommend using schedule beside ROW or CFQ. If anyone still thinks SIO, NOOP, Deadline is significantly faster/better than CFQ this is a very interesting test: http://www.phoronix.com/scan.php?page=article&item=linux_iosched_2012

[Q] Devil Kernel Settings

I'm using Conch Republic Edition 3D without F2FS and was having some issues with my phone locking up occasionally (pull battery to fix) and audio slowing to a stutter when the screen was off using the default settings. I found a post with some one recommending some changes for an S3, which have alleviated my issues, but I was guessing these weren't ideal since it was a different device. I was hoping to get pointers on getting the best performance/ battery life balance. Also wondered if there was a place that outlined the IO scheduler and CPU governor differences so I can learn more.
Current Settings:
IO sched: row
Governor: devilq 200-1600 mhz
Gpu steps: 266-440-533-640-700
Gpu steps voltages: 925-1000-1050-1075-1100 mv
Cpu voltages: -50 on all frequencys.
Zram and swappines off.
Thanks!
zenmatt said:
I'm using Conch Republic Edition 3D without F2FS and was having some issues with my phone locking up occasionally (pull battery to fix) and audio slowing to a stutter when the screen was off using the default settings. I found a post with some one recommending some changes for an S3, which have alleviated my issues, but I was guessing these weren't ideal since it was a different device. I was hoping to get pointers on getting the best performance/ battery life balance. Also wondered if there was a place that outlined the IO scheduler and CPU governor differences so I can learn more.
Current Settings:
IO sched: row
Governor: devilq 200-1600 mhz
Gpu steps: 266-440-533-640-700
Gpu steps voltages: 925-1000-1050-1075-1100 mv
Cpu voltages: -50 on all frequencys.
Zram and swappines off.
Thanks!
Click to expand...
Click to collapse
the s3 and the n2 are very similar

Categories

Resources