yashsingh1/xdaforums huggingface dataset:
[Galaxy S III Android Development] ZaneZam:
allright ok, yeah i read about problems with zzmoove on KK, but i can't say much about it. currently i'm porting boeffla kernel to a KK

version for the Note 8 n5110 device so i can/will check that during that work at least for that device, if there is time i will cross-check this with i777 sources. ;)

Hi Karlo,

you mean what is the best for u? :) ok honestly they all differ not that much in terms of energy consumption

but they differ in terms of performance. maybe zz-bat plus has the most restricted settings so you might face some lags here and then but on the other hand it might give u the most battery saving. yanks settings are more balanced and u should not have any performance drawbacks. but at the end u decide which one is the best for your system/usage (as always thats the most important part of that story!) try them one by one for some time and see... ;)
[Galaxy S III Android Development] Choristav:
Try moderate - it just works.
[Galaxy S III Android Development] habylab:
Hi, I know you haven't released the beta so don't have to update the github, but I'm trying to blend some of your profiles together and noticed my moderate settings from ArchiKernel do not match the ones in the header posted back in March. Have you updated their settings slightly? Would be nice to see that updated, don't want to correct any values if they don't need correcting!

Sent from my Nexus 8 (2015). Running a custom ROM and kernel. My phone is currently a Galaxy S3, end of August an HTC One M8! Tapatalk'd
[Galaxy S III Android Development] ZaneZam:
Hi habylab,

For beta releases you can check out this repo: https://github.com/zanezam/cpufreq-governor-zzmoove-tests

;) and yes in recent beta3 i did a little adjustment in moderate setting but i dunno if that are the same values as archi uses, though.
[Galaxy S III Android Development] habylab:
Thank you! Very helpful.

Sent from my Linaro SM'd CM11 Galaxy S3, with Archi's kernel. A proud Googy Beta tester.
[Galaxy S III Android Development] ZaneZam:
New beta version available!

Hi Guys,

new v0.9 beta4 was just released and information about it added to second post!

in addition updated (merged) profile information in third post and updated links to

the repository which i've merged from three to one for simplicity ;)

so now all previous beta and stable commits are available in the main repository: https://github.com/zanezam/cpufreq-governor-zzmoove and all future commits will land there. new branches in this repo are "i9300" the new merged master branch and "desktop" for the "desktop edition" of zzmoove (which is btw. still WIP and far from stable but it compiles) ;) the test repos were deleted.

i hope u enjoy and sry for the "little repo fiddle" :D

ZZ
[Galaxy S III Android Development] MIKEMON:
good job to a friend

thank you

---------- Post added at 06:04 PM ---------- Previous post was at 05:48 PM ----------

one observation

Zzmoove gov., In Boeffla kernel CPU temperature increases at higher loads

Gov.intelactive keeps temperature at all frequencies almost the same, but the result is

faster discharge of the battery

But many thanks for Zzmoove, great gov. for everyday use
[Galaxy S III Android Development] JustArchi:
Thanks a ton ZZ :good:.

https://github.com/JustArchi/ArchiKernel/commit/c879159898daacca5d58867c8cf5e60d0bdc3a3e

https://github.com/JustArchi/ArchiKernel/commit/a5f8ced03a6cb893ce2bdf319b86c01f28f87d7b
[Galaxy S III Android Development] ZaneZam:
Thx MIKEMON! yeah let's see how this version works, i put in some "wheels" to reduce the useage of higher freq and a temp threshold for keeping the cpu cool (if the kernel supports it) because as u said zzmoove has a bit of a hothead because of it's fast scaling. apropos fast [MENTION=5161352]JustArchi[/MENTION] u are really fast as hell with grabbing stuff i do not dare to make a mistake :D
[Galaxy S III Android Development] JustArchi:
Your governor is too awesome to wait :D.
[Galaxy S III Android Development] MIKEMON:
good luck to a friend

your work is absolutely great
[Galaxy S III Android Development] paludi06:
Sorry if the following questions were already asked, but I didn't find an answer ;)

1) Is there any difference between ZaneZam Optimized and ZaneZam Moderate when used on Galaxy S2 which has only 2 cores?

2) Yank Battery and ZaneZam Optimized/Moderate are 'balanced' in battery/performance, but what is the difference? Which has better performance/battery?

3) Which is the most battery friendly governor of the 3 'performance' governors ZaneZam Performance, ZaneZam InZane and ZaneZam Gaming?

Thanks in advance :good:
[Galaxy S III Android Development] MIKEMON:
yep, that answer only tests

Zzmoove optimum is my favorite gov..ale has, Zzmoove is ideal for moderate battery life and smoothness of the system is very reliable.

But everything is on each device, each is different !!!

Zzmoove suits me best, and a friend with the same settings profile moderate ..

very heavy, must be tested ..
[Galaxy S III Android Development] ZaneZam:
1.) should be just the hotplug thresholds but I would have to check that in particular can't remember what I've changed :)

2.) I would say optimized more performance and moderate more bat saving because of lesser cores online (on quad core cpus) on dual core almost the same

3.) difficult to say but it should be gaming as this one has some restrictions enabled to calm down scaling in mid/high load range

but at the end as often mentioned how much all that applies depends also on other settings in your system and your usage. that's important to know with zzmoove because it actually has much of ondemand behaving ;)

and newest 0.9 beta4 might give u other (hopefully better! *g*) results in terms of bat saving when enabling scaling_proportional tuneable in all settings! - as often with zzmoove: new version new game :)
[Galaxy S III Android Development] paludi06:
Thanks for your fast and detailed answer :good:

To 2): Do you mean optimized should have better performance than moderate or Yank Battery? And moderate is more battery friendly than Yank Battery or optimized? I'm not sure if you compared them to Yank Battery or if you just forgot Yank Battery ;)
[Galaxy S III Android Development] ZaneZam:
Yeah i overread and forgot :) well yank battery settings are very good balanced settings and i used them a long time and were happy with them till someone wanted a moderate 2 core setting :) which i was able to archive with the "moderate" profile and since testing it i only used moderate because it surprisingly gave me the same perf/bat results (maybe even a bit more bat) with just 2 cores online most of the time so i would say here again they will give the same results. at least they did on my system ;)
[Galaxy S III Android Development] paludi06:
Thanks again for the great support :good:

I think I have now enough information to test a little bit for my own ;)
[Galaxy S III Android Development] Simone98RC:
How can I set the minimum number of 2 active cores? It's the only reason to let me using pegasusqplus governor instead.
[Galaxy S III Android Development] ZaneZam:
you mean 2 cores online all the time ? well that's nice :) actually that's a feature i did not merge from ffolkes changes in beta3 because i thought no one might use/need that, obviously a wrong thought :) so will see maybe something to add for 0.9 final. hope u can wait a bit ;) in the meantime i can give u a suggestion for the opposite case - max 2 cores online (most of the time, on high load the others are coming online in addition) with the moderate profile. it's profile number is 7 and u can set it with android tuner or setcpu or via sysfs with the tuneable profile_number. maybe u can give it a try, it works very well for me and has almost every time 2 cores online ;)
[Galaxy S III Android Development] Simone98RC:
Thank you for the answer, probably I'm one of the few users who are running lots of apps [emoji6]

I need two online cores to fix music shuttering, and also for faster wakeups.

I hope you implement them as soon as possible.

Good job [emoji106]
[Galaxy S III Android Development] Facuu:
which one is the most battery friendly here? yank battery extreme, battery plus, or another one?

regards
[Galaxy S III Android Development] gabyif:
I use battery yank and I am very happy with it :)
[Galaxy S III Android Development] ffolkes:
Thanks for using my changes, I'm glad I could be of help. :)

I have run into a bug I think: when overclocked (eg. 1800 MHz on a normal scale of 200-1600) every so often zzmoove gets stuck on 1800 (screen-off will successfully apply it's freq_limit though, but once the screen is back on, it's stuck at 1800 again). It is difficult to debug since it happens rarely, but when it does, it's a problem because the battery dies quickly. I have found a clue in the frequency table:

Debug code in zz_get_next_freq():

// ZZ: feq search loop with optimization
for (i = limit_table_start; (likely(table[i].frequency != limit_table_end)); i++) {
pr_info("[zzmoove] table loop: %d\n", table[i].frequency);

kmsg while stuck at 1800:

<6>[27277.625292] c0 [zzmoove] table loop: 1600000
<6>[27277.625328] c0 [zzmoove] table loop: 1500000
<6>[27277.625366] c0 [zzmoove] table loop: 1400000
<6>[27277.625405] c0 [zzmoove] table loop: 1300000
<6>[27277.625441] c0 [zzmoove] table loop: 1200000
<6>[27277.625477] c0 [zzmoove] table loop: 1100000
<6>[27277.625513] c0 [zzmoove] table loop: 1000000
<6>[27277.625549] c0 [zzmoove] table loop: 900000
<6>[27277.625583] c0 [zzmoove] table loop: 800000
<6>[27277.625618] c0 [zzmoove] table loop: 700000
<6>[27277.625653] c0 [zzmoove] table loop: 600000
<6>[27277.625687] c0 [zzmoove] table loop: 500000
<6>[27277.625720] c0 [zzmoove] table loop: 400000
<6>[27277.625756] c0 [zzmoove] table loop: 300000
<6>[27277.625791] c0 [zzmoove] table loop: 200000
<6>[27277.625826] c0 [zzmoove] table loop: 100000

Why is 100MHz there? 100 MHz is a valid frequency, but policy->min=200. And why have 1800 and 1704 disappeared? What is making zz choose 1600-100 when it was supposed to be 1800-200? Obviously since the current freq is 1800, zz can't find it in the loop so zz_get_next_freq() never works. Setting limits or stop/starting zzmoove will fix the problem. I have put much more debug code in, but haven't had the bug since.
[Galaxy S III Android Development] ZaneZam:
Hi ffolkes,

Thx for making the changes and therefore help to improve the beast :) im always happy to pick up new and good ideas !

Talking about good ideas - nice debug! :) Well yes as u said the reason might be that the freq is out of zzmooves scope and it cant get it at some point. Why that happens actually depents on the used oc implementation because zzmoove uses freq available from current system table. Thats one thing OR something is messed up in the freq search optimisation ;) i cant say it exactly never used 1800mhz with zzmoove only 1704 max and with it i have no problems on two different devices and OC implementations. And yes 100 mhz is also very strange but that reminds me of a cpufreq patch from the boeffla kernel which might help. Will check that when i get to it, thx for the report, will let u know when i found the patch!

EDIT: nevermind patch was related only to sysfs freq reporting! Ok then i have to "see it" will do a test on 1800mhz on my Note8 maybe it comes up but honestly i strongly hope not, lets see :)
[Galaxy S III Android Development] ffolkes:
While this doesn't fix the problem, this simple patch will at least prevent it from getting stuck at an unknown frequency:

return ([B]table[limit_table_start].frequency[/B]);	// ZZ: ...neither here -> freq not found

I have implemented some other things you might find interesting. Check them out when you have a chance. :)

Native Input Booster (there are a few other commits with bugfixes) - This adds input event monitoring to zzmoove so the up_threshold can be changed when there is input. There is also a punch setting to give an immediate speed boost. Both modes have their own threshold settings. People who use my kernel say this works really well. I've found it seems to work especially well when paired with very conservative governor settings (like screen-on up_threshold of 95!) - that way as soon as input stops, battery can be saved, but then as soon as input resumes, everything is smooth.

cpufreq/zzmoove: implement native inputbooster

Hotplug Staggering - Staggering is an idea I had to granularize the way cores are brought on and off line. Some governors have up/down delays (as zzmoove does), but that only delays the decision - a spike in usage still might bring all cores online in one decision. So staggering spaces them out, so only one core can go on or offline per governor cycle. That alone doesn't do much, as 3 cores could be brought online in as little as 300ms (assuming 3*sampling_rate of 100). So each core has its own up/down multiplier (multiplied against hotplug_block_up_cycles). I chose multipliers instead of dedicated values so as not to completely override hotplug_block_up_cycles.

Eg. For speed: you can choose to not stagger up cycles (let it jump to all cores in one decision if it wants to), but choose to stagger down cycles, with each lower core count persisting for a varying amount of time. 4 core = check for hotplug_down immediately (0x multiplier), 3 cores = check in 5 cycles, 2 cores = check in 15 cycles. This example would mean the system would keep cores on even if it wanted to bring them down. The opposite logic can be applied to hotplug_stagger_up for battery savings, as the system will be less likely to turn more cores on if the ones that are on already are given a longer chance to finish their tasks.

cpufreq/zzmoove: add hotplug_stagger_up tuneable

cpufreq/zzmoove: add stagger_down and up/down block multipliers

Hotplug_min_limit updated for a more recent version of zzmoove - I saw someone ask for this, so I thought it might be helpful. cpufreq/zzmoove: readd hotplug_min_limit, hotplug_lock and boosters (there might be bug fixes for this in later commits, I forget)
[Galaxy S III Android Development] ZaneZam:
yeah veeery nice! looks like stuff for a new beta :) thx again ffolkes !:highfive:
[Galaxy S III Android Development] MIKEMON:
Very good work

New beta probably soon
[Galaxy S III Android Development] Facuu:
I want to ask, with dorimanx kernel, how can I use this profiles?
[Galaxy S III Android Development] ZaneZam:
well MIKEMON don't expect it too soon there lies still some work and testing ahead :) but ffolkes definitely activated my curiosity therefore my motivation. Only things that are missing atm. are a "bit" more free time and enough stimulants :D

you mean how u can switch the different profiles? third post has some informations about that. ;)

however dorimanx has made his own zzmoove variant called zzmanx some time ago. I dunno if he has merged the profile feature of recent zzmoove versions and if u even can use it with zzmanx. beside of other features that might be missing in it.

.. oh and that reminds me again of the promised init.d scripts to switch profiles

damn days have too less hours and my brains stack is getting lower :)
[Galaxy S III Android Development] SaschaKH:
You can only use Governors and profiles that are in the kernel.

Gesendet von meinem TPC-9000 mit Tapatalk
[Galaxy S III Android Development] Facuu:
Thanks, didn't know it wasn't the same, maybe choosing zzmam and adjusting parameters as a profile could give the same result.

Keep up the good work !
[Galaxy S III Android Development] Facuu:
[MENTION=3279788]ZaneZam[/MENTION] could you try to give me settings for yank battery profile to manually put those values in zzmanx on dorimanx kernel and see how it goes please? I tried to do it but dori settings are different so I can't fully apply it. As you know more than me, maybe you could tell me what to put to get the yank battery profile on dori.

Regards
[Galaxy S III Android Development] Hbohd:
here it is - > https://github.com/zanezam/cpufreq-governor-zzmoove/blob/i9300/cpufreq_zzmoove_profiles.h

Look for 'ybatt'
[Galaxy S III Android Development] ZaneZam:
Thx Hbohd but I think he meant a settings-merge for zzmanx ;) [MENTION=4133749]Facuu[/MENTION] might be difficult but I will take a look when I have time ;)
[Galaxy S III Android Development] Facuu:
Yeah, I tried to apply what I could, but some things like sampling rates and scaling blocks are missing in stweaks or maybe have a different name, so if you can merge something to approach those profiles, it would be awesome.

Thank you very much

i should tell that i'm on an i9100
[Galaxy S III Android Development] gabyif:
What can I do to prevent cpu from heating using this configuration:zzmove-moderate, zen, Cpu 1.6, Aftr-Lpa,touchboost 800, swappiness 90?
[Galaxy S III Android Development] MIKEMON:
I use Zzmoove optimal

CPU 1400,, scheduler noop,, Idle + LPA and do not increase the temperature

Only when multitasking

and use multiple applications, but in the standard

@ ZaneZam, big thanks to my friend

---------- Post added at 07:55 PM ---------- Previous post was at 07:51 PM ----------

I do not use, but may help

https://play.google.com/store/apps/details?id=com.yanyan.cputemp&hl=cs
[Galaxy S III Android Development] ZaneZam:
ha! glad someone asks finally :D you can use the new build in "temperature throttling" feature (kernel must support it)!!

either use zzmoove "game" setting were all this is pre-adjusted ooor use your desired one and give the tuneables

"scaling_block_temp" for example values from 60-70 (range is 30° to 80°) and the "scaling_block_freq"

for example the value 1000000. this should "hold" the temperature to the given blocking temp.

it works but expect some lags (depending on which block freq u have set) with some games if throttling

starts and don't expect that the temperature will fall fast - the polling interval of the kernel tmu driver

is 10 seconds so it will take a bit. beside of that if u read the bat temperature then it might be that u

still reach higher temps but it takes longer. i've done some testing with asphalt 8 and had very good

results this game gives a sh.. if there are only 1000mhz available, but that doesn't mean that this

applies to every game!

reports appreciated! :)

thx MIKEMON then u are a lucky one (and one who is not overclocking, that's an important point!), as u said

it depends on the usage pattern (i assume with "standard" u mean no gaming and no excessive usage - also an important point!! *g*) and used apps! After finishing a version i used to make my first tempearature test always with this f.. overbloaded facebook app (i wonder what the hell this app does in background *g*) with it i always get higher temps, it's like i'm gaming or benchmarking.. crazy! fortunately i don't "need" this app like other addicted people :)
[Galaxy S III Android Development] MIKEMON:
I have a stock rom / ODEX / from Sammy fully debloat

I do not use FB, G +, only the PC version

no phone required a very triggers wakelock

these applications, very burden the system with synchronization account and other

I like a clean phone

and your zzmoove governor

the phone will last me for two days, under normal use
[Galaxy S III Android Development] ZaneZam:
ZZMoove Version 1.0 beta1 released!

Hi Guys,

i just want to inform u about the yesterday released version 1.0 beta1 of the ZZMoove Governor!

due to an increment in my device family (One Plus One) i was able to bring my next plan called

"outbreak" forward which should let us enjoy this governor also on newer kernel sources than 3.0.x.

Now the main achievement of this version is the compatiblility with 3.4+ kernel sources

(tested on kernel 3.4.0 on the one plus one device only yet) and in gerneral a fixed scaling logic

especially for platforms which uses a descend ordered frequency table like it is on the

qualcomm platfrom. Details as usual in the Test-Changelog in the seconds post.

Enjoy!

ZZ
[Galaxy S III Android Development] MIKEMON:
really great work, my friend
[Galaxy S III Android Development] Hukanawa:
Hi,

Would it be possible to include zzmove in a kernel based on 3.0.8? The model is an xperia go with a novathor chipset. I read a few posts back and the samsung s3 has a 3.0.9 kernel, I was just wondering if it was possible for a 3.0.8 kernel.
[Galaxy S III Android Development] andip71:
Zzmoove works fine on all 3.0.x kernels, as well on 3.4.x.

And s3 standard kernel is on 3.031, while most are upstreamed to 3.0.101.

Andi
[Galaxy S III Android Development] mahe.:
Hi,

using qs-kk2.9 with Boeffla-Kernel 6.1 beta 6. It looks like in UPSM with the zzmoove + battery plus porfile phone getting switchoff after few minutes phone going to standby mode. Any one else seeing this issue ? i have not seen this issue with boeffla 6 beta5 .

Even tested today. It seem like phone getting swithched off in with zzmove + battery plus profile. seems like battery plus profile having issue with 6.1 beta 6
[Galaxy S III Android Development] 1N4148:
I know, not related to i9300 but frequencies from the profiles are set to 0 if there's no matching frequency on the target system (when using this governor on another platform). Maybe a hint for a further version where the next available frequency is choosen instead.
[Galaxy S III Android Development] ZaneZam:
UPSM? please specify :) and with "switched off" u mean a completely powered off device? only thing which would be possible by a governor is a forced reboot due to a kernel crash because of a bug, but switched off? really can't imagine that and beside of that i never had and heard that only one profile has issues. saw many bugs with zzmoove but that must be something else :)

no problem we are here in the zzmoove thread so no relation to any platform needed ;) thx for the info yes that's right the profiles do not have valid frequencies for the used platform then but even though the governor should automatically read the platforms frequency table and all available frequencies can be used in the corresponding tuneables. i would have to adapt all settings for this particular platform like i had to do for the qualcomm plattform. may i ask u on which platform u used zzmoove? but anyway a good idea to use the next available frequency to "build" the profiles automagically! that would be indeed flexible... and that's how i like it! many thx the wheels in my head already begun to turn :good: :D
[Galaxy S III Android Development] mahe.:
Sorry i didn't updated the latest update about the issue. Phone was actually getting switched off in ultra power saving mode (UPSM)few minuses after the standby state. Once i reported the issue i have seen the issue(phone getting switched off ) with pegasusq profile also.. So this issue may not be related to the profile.. i actually did the dirty flash QS-ROM 2.8 to 2.9 and i think that caused the issue. So i did the clean install after clean install issue went away. So i have concluded the power off issue not with the profile instead it is the issue with installation.
[Galaxy S III Android Development] 1N4148:
I'm using your governor also on OMAP4 (Galaxy Tab 2 series) and on a Novathor U8500 (Galaxy S3 Mini). Setting the frequency as tuneable is not the problem, I was more thinking about "adaptive" profiles instead of a lot of #ifdefs in the profile source for frequency tuneables. I've done something similiar in my experimentally modded lulzactiveq where sleep_max, hispeed_freq as well as hotplugging frequencies are calculated from the frequency table. My dream would be a totally adaptive governor which adopts to my "usage" like an automatic gearbox of a modern car is doing.