yashsingh1/xdaforums huggingface dataset:
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] joshuous:
I used to enable Westwood on my past kernels. These days I look at every feature sceptically and ask what meaningful difference does it makes, and whether we have more conclusive reasons to justify adding it. If my guess is right, I'm sure you've read that blog that compares IO schedulers, TCP Congestion Algos, Governors, etc. It isn't really a good source to make such decisions because it lacks sufficient depth. There are other academic articles comparing TCP Algos, and Westwood doesn't really provide enough of a benefit to justify adding it. Perhaps you can take a look at several sources and let me know, as I'm open to reading up on them

Also, for wq_power_savings, I'm open to this. I spent the past hour looking at the code and reading a lot about unbound workqueues. I still don't have a firm grasp on it yet

Yeah
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] RogerF81:
Thank you for your kind response :) I understand your explanation. I will see if I'll find something interesting!
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] prajnay:
Excited for vertex os on op5.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Mostafa Wael:
Absolutely agree with every single word. Hence I regard you as one of the greatest mentors I have ever come across. And with that said, I would like to announce the

-hopefully- imminent release of my kernel based on yours with some additions, as an endeavour to further improve the user experience. I am pretty darn sure [MENTION=7003898]RogerF81[/MENTION] knows what I am talking about exactly :highfive:

Hopefully I can manage the time to release it pretty soon.

Needless to say, I am very looking forward to how things will evolve with the release of the Pixel 2, which seemingly has a newer revision of EAS implemented (r1.4)

Keep up the good work!
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] RenderBroken:
[MENTION=6745491]joshuous[/MENTION] explained about westwood but I will go into more depth on PEWQ. It is really unnecessary imo. Especially since we are already doing energy comparisons on the different scheduling classes/tasks. We are also letting the scheduler dictate what CPU to run different tasks. I believe it would introduce latency issues for very little energy efficiency gain. For a really nice writeup that is current, look here:

https://lwn.net/Articles/731052/

I would think so but this is [MENTION=6745491]joshuous[/MENTION] 's area whereas the kernel is mine. I would think so but not before other obligations are met.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] RogerF81:
https://lwn.net/Articles/548281/

https://lwn.net/Articles/731052/ Here are some nice readings about the wq_power_savings.

Haha [MENTION=5438598]RenderBroken[/MENTION] :D You were a minute earlier here than me :D Ok I understood your explanation!
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] joshuous:
[MENTION=5438598]RenderBroken[/MENTION], my understanding is that power efficient workqueues (aka unbound workqueues) enables the Scheduler to choose which cpu to wake the work on. Having it disabled, causes it to wake up on the cpu that scheduled it (ie Scheduler has no say). We're talking about workqueues here, which I believe are different from processes. Looking quite deep into the thread discussions, it seems that this may be beneficial in terms of power usage for work that runs for longer periods of time (e.g. Audio playback, which the commit author tested on). It would make less sense for a one-off work, since the performance trade-off is something to raise eyebrows about.

BUT it doesn't affect all queued work, only those by which we explicitly ask to run on power efficient workqueues. Franco has a lot of commits to queue work on power efficient workqueues. Since we don't pick those commits, the effect (lower power drain and higher latency) of power efficient workqueues might probably be negligible, I dunno. We really just need to first look at which existing works are currently placed on power efficient workqueues. So this feature isn't saying that all work has become unbound, just the ones that have explicitly been marked (with system_power_efficient_wq) to run on power efficient workqueues. In this case, I'm more open to it.

I'm also proposing we perform a test and evaluate the number of cache misses for a certain workload, to have a better idea of how big of a deal it is

Anyway, my niggle is that the Pixel doesn't enable it, which is why I am being extra wary. Thoughts?
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] joshuous:
Second link is great, thanks! Looks like they're heading in the direction of letting EAS decide where to make placements. It has gotten me more agreeable with the idea of including it
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] RogerF81:
No problem! :) And great to hear, I'm curious if the tests you mentioned are positive :)
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] joshuous:
Just wanted to say that exciting things are coming in the next release :>

One of them being a seriously improved Dynamic Stune Boost. The other will be more exciting.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] MrPepperino:
Looking forward. Thanks for the heads up
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] ipredatorv:
You're teasing us, making it harder to wait :silly: haha

Already pretty excited.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] joshuous:
Performance should be improved on the next release. I've long been keeping track of frame drops in com.android.systemui using dumpsys gfxinfo command. Previously, I used to get around 20-ish % dropped frames. Now it's consistently hovering around 15% (fewer frame drops). [MENTION=5438598]RenderBroken[/MENTION] can confirm it as well
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Konskl:
Is the next release going to be synced with pixel 2 sources / energy model???
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Mostafa Wael:
Time will tell.

Patience is a virtue.

Just keep an eye on the thread.

You won't regret it :good:
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] prajnay:
Any chance that you are going to add spectrum support to this kernel?
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] ipredatorv:
For the best results in terms of battery life, would you recommend using stock OOS? Does xXx make a lot of a difference in terms of battery drain, although its based on OOS? Have you tried it?

Thanks for your input :)
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] maddes1402:
I use xXx for several months with this kernel and the battery life is as good as stock.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Mostafa Wael:
I would be lying if I said I tried xXx ROM. Till now I am using OOS 4.5.10. I just flashed the official stock zip from OnePlus. Haven't tried other ROMs, till now.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] RenderBroken:
RenderZenith for OOS-N: V1.7.0 is here!!!

Things to note:

This is a taste of things to come for RenderZenith. We have been able to get ahold of the Pixel 2 Energy Model among a few other things. Performance is top notch and only going to get better. UI is much more fluid now as well. Test and let us know!
[MENTION=6745491]joshuous[/MENTION] has reworked Dynamic Stune even further and now we are actually boosting top-app tasks. Doing it this way will also bias the scheduler in how these tasks get worked as well as boost frequency for these tasks like before.

A Few other updates. Check changelog below!

Download

Changelog

Also note:

With the Pixel 2 release comes new EAS source and related changes. We will be starting work on new builds based on Pixel changes from here on.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Mostafa Wael:
Dynamic SchedTune Boosting v2

Couple of weeks ago, Joshuous wrote a new feature, namely Dynamic SchedTune Boosting, that’s been incorporated in recent RenderZenith kernel builds, which essentially alters the value of schedtune.boost for the top-app cgroup dynamically on touch events, to conserve battery. But still, the solution was not that flawless, since it didn’t migrate the task to the big cores when essential as Joshuous previously explained. A quick workaround was to increase the value of /dev/stune/top-app/schedtune.boost to 1 (at least) to allow the utilization of the big cores when required. Many of you may be wondering why that was necessary. Well, hopefully I can break it down a bit for you.

Given the task that needs processing, the find_best_target() function – that is responsible for placing the tasks on the suitable cluster – iterates firstly on the big cluster when the SchedTune boost value is greater than 0, whereas the little cluster will be iterated firstly, should the value of SchedTune boost be equal to or less than 0, to save power. What SchedTune boost does is inflating the task and CPU utilisation fed to the scheduler, and therefore impacting the OPP selection and allowing the task to be placed on the big core(s) if needed. What the older version of Dynamic SchedTune Boosting did was rather inflating the value of utilisation going into Schedutil governor, that is then used to determine the frequency step to be selected for the task via a linear formula, which consequently increases the calculated frequency. But since the value of utilisation going into the scheduler is not inflated, the placement of the task on the corresponding core(s) won’t be impacted and therefore, the task won’t be moved to a big core instead. In essence, the older version would only increase the frequency and not impact the tasks placement on the cores. This caused a drastic performance difference compared to what you get when setting the SchedTune Boost value statically.

With the new v2 version, Dynamic SchedTune Boosting will directly change the value of /dev/stune/top-app/schedtune.boost directly, addressing the issue of only inflating the utilisation data going to the schedutil governor, and therefore the tasks should be able to move to the big cluster when demanded as well as increasing the CPU frequency. This will allow us to safely leave the value of /dev/stune/top-app/schedtune.boost at 0 and save some power for low-medium workload scenarios, since the tasks will be moved to the big cluster on touch with no issues.

-TDK
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] stoyanovvitalii:
Thank you so much!!!

Any special settings now?

Or flash and forget?
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] GjorgiDxc:
For anyone that's going to ask 1080p60fps and 720p60fps videos on YouTube still stutter
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] RenderBroken:
Thanks! I would just use it right out the box

Thanks. Yea its something we are still working on, it doesnt always happen for me and there is not any real leads but we have a few things that we have looked into, a couple more to go though.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] joshuous:
Very well explained Mostafa :)

And thanks for saving me the time

To add on, don't be alarmed to see /dev/stune/top-app/schedtune.boost having the same value as dynamic_stune_boost when you want to edit it because your touches trigger the boosting. Just write the value you want into the file and save. It will automatically update the default stune boost value when the boosting stops. To confirm it, you can connect your phone to computer and do

adb shell cat /dev/stune/top-app/schedtune.boost

to confirm that it has changed. You gotta wait a second or so before you issue that command.

I would recommend keeping the /dev/stune/top-app/schedtune.boost at 1 or higher if you want lower latency when Dynamic Stune Boost kicks in. Reason being that default stune boost of 1 somewhat ensures that most of the top-app tasks are already on Big cluster so that we don't have to suddenly migrate too many tasks from Little to Big when Dynamic Stune Boost kicks in.

If you don't type much, and watch videos or listen to music mostly, then setting default stune boost to zero may save you more battery
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Mostafa Wael:
That's what happens when the code is traced and you ask the Devs about it ;)

Really no need to thank me.

And thank you for sacrificing so much of your sleep to make sure everything works right :highfive:

Cheers!
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Mostafa Wael:
Initial impressions: everything seems to be kicked up by a notch. Noticeably less dropped frames now and I think app loading is slightly faster as well. Battery drain rate is now lower too. For the same usage pattern, active drain rate is now less than what I used to get before by 2%/hr. Still haven't gotten to observe any noticeable changes in idle drain rate. You should be really enjoying this release :good:
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] ipredatorv:
Youtube stuttering also happens for me [MENTION=921577]1080P[/MENTION]60 and 720p60 since I believe version 1.5.

Could I provide a log or be useful in another way to help you guys?

Other than that YouTube issue, I'm thoroughly enjoying this Kernel ;) thanks a lot for your work, time and effort put into it.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] joshuous:
No need, if it's easily reproducible [MENTION=5438598]RenderBroken[/MENTION] and I know how to get it ourselves :)
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] RogerF81:
So far, first battery circle respectively first day on 1.7.0, and my conclusion: Great! Performance is even better than before, battery is about the same, perhaps slightly better. Again, everything seems super-stable, just awesome! Thanks for this! :)
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Stupifier:
I'm happy too :)
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] mutleyPT:
Hands down for this EAS implementation. Excellent job guys.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] xxBrun0xx:
Was an avid Franco kernel user for a while, but eventually switched back to stock. This performs noticeably better than stock. Battery seems to be pretty close to stock, which is fantastic imo. Everything seems MUCH more stable than some of the early EAS builds. Awesome job, definitely my new daily driver.

Update: had Bluetooth randomly disconnect while driving (I Bluetooth tether to my head unit). Also get freezes on camera portrait mode and camera crashes.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] char101:
With 1.7.0 I have a lof of these lines in logcat.

10-25 11:20:17.266 680 4496 E ANDR-PERF-OPTSHANDLER: Failed to read /proc/sys/kernel/sched_boost
10-25 11:20:17.267 680 4496 E ANDR-PERF-RESOURCEQS: Failed to apply optimization [3, 0]
10-25 11:20:18.570 680 4496 E ANDR-PERF-OPTSHANDLER: Failed to read /proc/sys/kernel/sched_boost
10-25 11:20:18.570 680 4496 E ANDR-PERF-RESOURCEQS: Failed to apply optimization [3, 0]

OnePlus5:/ # cat /proc/sys/kernel/sched_boost
sh: cat: /proc/sys/kernel/sched_boost: No such file or directory
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] stoyanovvitalii:
I have a lot "failed to apply optimisation"
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Konskl:
What top-app schedtune boost and dynamic schedtune boost values do you suggest for lag/stutter free experience? I really value your opinion when it comes to performance since you had made in the OP3 days the shotgun profile. I'm looking primarily for performance and smoothness all around.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Mostafa Wael:
Well I am using all stock settings, just the top-app boost reduced to 0 and it is still very smooth - and the battery savings are pretty much considerable. If you aim at very lag free experience, bump up dynamic stune boost to something like 25 and keep top-app boost set to 1 (default value in RenderZenith kernel). I would also increase the duration of CPU boost to 3000-5000 ms. Other than that, there is not that much to fiddle with. :good:

---------- Post added at 09:15 AM ---------- Previous post was at 09:08 AM ----------

That relates to the perfd binary in OOS. Simply said, it is a binary that dynamically alters some settings to provide better experience and basically boosting the CPU in tough situations like when you open the app or something. However, that binary is tailored to dynamically alter some HMP-specific settings (CPU governor and scheduler settings most likely). And since EAS settings are completely different than those of HMP (governor settings for instance is just the rate_limit tunables, compared to Interactive's loads of governor settings like target_load and whatnot. Same applies to the CPU scheduler - the settings are completely different), the perfd binary fails to dynamically change those HMP-specific value because the settings are simply not found (in /proc/sys/kernel) to change their values, hence the errors. A solution for that would be stopping perfd via EXKM or via Terminal Emulator app (by typing su, followed by "stop perfd" - without the quotes). But I don't believe it will make that much of a significant difference to your experience. You can give it a try and tell us if you notice any difference in how smooth the UI is with perfd enabled and disabled.

---------- Post added at 09:16 AM ---------- Previous post was at 09:15 AM ----------

Check my previous reply ^^

---------- Post added at 09:19 AM ---------- Previous post was at 09:16 AM ----------

Well I have provided the required log file (Systrace) earlier here on the thread, and I am sure a solution will be found soon. I am already digging in deep and trying to find the culprit with the help of others as well.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Rhathaway:
Anyone else losing Wi-Fi? Installed straight after a dirty flash of stock OOS and doesn't work. I'm unrooted if that's an issue, but haven't seen it on previous versions (using custom roms)
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] ipredatorv:
Root with Magisk, should fix the WiFi. This has been reported multiple times in other threads, and people said missing rooting is the "root" of this problem.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] joshuous:
Just in case anyone is interested, the Pixel devices (v1 and 2) use a 'dynamic' stune boost of 50 and a regular /dev/stune/top-app/schedtune.boost of 10, which is one of the major reasons why they are so smooth. I'm testing atm and gonna observe battery drain
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Stupifier:
Jeez.....overkill much. I mean, I guess if battery is unaffected by such high values, I'd do it
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] prajnay:
Is it normal that the big cluster is running 2.4 GHz 96% of the time
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] sleepwalking0593:
Definitely not. Unless you are doing very heavy gaming.

Regards ??
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] ipredatorv:
In EXKM, go to the CPU options. Change the min CPU (Big Cluster) frequency back to 300.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] prajnay:
I rebooted my phone now it is stuck in a boot loop it just vibrates at random intervals
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] joshuous:
Please dirty flash OOS before you flash the kernel
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] prajnay:
I did do that But doesn’t seem to work . Flashing just the stock rom with nothing else didn’t work.I had to wipe system setting in the stock oxygen recovery to make the phone boot.

edit:i will explain the issue in more detail later , so as of right now just ignore this .
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Ankit Kabeer:
So how does it feels??
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Spencervb256:
It was 2 hours ago he said he was testing, I'm sure he will update us on his findings! Patience is a virtue
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] joshuous:
Or you guys can just experience it for yourselves too :p
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Spencervb256:
Haha I already actually changed it and have been making my own discoveries?
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Ankit Kabeer:
Actually I downloaded the kernel and was going to flash it but I was on different kernel so I flashed the stock OOS kernel ( I generally dirty flash OOS but I didn't had zip file of OOS) and after that phone wasn't just booting so I had a zip of rom I was meaning to try for sometime so flashed it and its kinda nice so gonna stock to it for while

Hence the question. But I'll try it myself this weekend
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] halkoliiteri:
How can you change different value to top-app and dynamic stune? Dynamic stune boost - value overrides allways the top app - value on Ex Kernel Manager. Wanna test to lower top app to 1 but it keeps on 15 which is dynamic boost value. If I change top app value to higher than dynamic value then it stays. 1.7 changed that function but I don't understand how.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Stupifier:
Read here....straight from the Dev.

https://xdaforums.com/showpost.php?p=74272093&postcount=621
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Konskl:
And what's the duration of the dynamic stune boost in pixels? Wanna try that setup....
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Freak07:
As far as I know 1500ms.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] addicted1900:
I am curious to try renderzenith. I am currently using Franco's kernel. Can someone who changed from Franco to renderzenith tell me, if the battery life is on the same level here? That's the only aspect which is currently holding me away from flashing :)

Thanks in advance
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Stupifier:
Read post #629 for your direct answer
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] Spencervb256:
Is there any chance I can disable Snapchat spectacles service wakelock?
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] ScRuFFy7:
Previously discussed. Short answer, no.

Informative video regarding wakelocks.
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] char101:
Instead of disabling the perfd service, I tried using the perfd from https://github.com/EAS-Project/blobs, and so far I don't get the Failed to apply optimization message, only some occasional

ANDR-PERF-MPCTL: Unable to create control service (stage=2, rc=-1)
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] joshuous:
On the Pixel 2 it is 1400ms for touches and rises to a max of 5650ms for flings, depending on how hard you fling.

They also boost frequencies on both clusters to 1100Mhz
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] joshuous:
Did you use the libqti-perfd-client as well? And which device are you on? Those binaries are not compatible with SD835 SOC

Are you building a ROM with it or just trying to replace?
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] char101:
Thanks for the info, I thought only the voxpopuli parts are processor specific. It does not seem to run now that I check the service status

OnePlus5:/ # getprop | grep perfd
[init.svc.perfd]: [restarting]
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] RogerF81:
Well, that's weird. The phone was fully stable for two days since the release of 1.7.0. And now suddenly, from out of nowhere, it restarted several times until it once restarted, but the screen stayed black. Are there any logs I can grab after this or what would you need to have a look at this?
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] laulau42400:
No problem for me.

Envoyé de mon ONEPLUS A5000 en utilisant Tapatalk
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] joshuous:
Next time it happens, get the contents of /sys/fs/pstore/, and share it :)
[OnePlus 5 ROMs, Kernels, Recoveries, & Other Devel] RogerF81:
Ok, I will do so! :)

(I attached the files I grabbed the last time this happened a few days ago, perhaps this helps? [MENTION=6745491]joshuous[/MENTION] )