Messages in this thread | | | Date | Fri, 26 Apr 2024 11:15:34 +0100 | Subject | Re: [RFC][PATCH 08/10] sched/fair: Implement delayed dequeue | From | Luis Machado <> |
| |
On 4/25/24 11:42, Peter Zijlstra wrote: > On Wed, Apr 24, 2024 at 04:15:42PM +0100, Luis Machado wrote: > >>> Bisecting through the patches in this series, I ended up with patch 08/10 >>> as the one that improved things overall for these benchmarks. >>> >>> I'd like to investigate this further to understand the reason behind some of >>> these dramatic improvements. >>> >> >> Investigating these improvements a bit more, I noticed they came with a significantly >> higher power usage on the Pixel6 (where EAS is enabled). I bisected it down to the delayed >> dequeue patch. Disabling DELAY_DEQUEUE and DELAY_ZERO at runtime doesn't help in bringing >> the power usage down. > > Hmm, that is unexpected. The intent was for NO_DELAY_DEQUEUE to fully > disable things. I'll go have a prod at it.
I'm running a few more numbers to confirm this situation with the feature switches.
> >> Though I don't fully understand the reason behind this change in behavior yet, I did spot >> the benchmark processes running almost entirely on the big core cluster, with little >> to no use of the little core and mid core clusters. >> >> That would explain higher power usage and also the significant jump in performance. > > ISTR you (arm) has these tools to trace and plot the varioud util > values. This should be readily reflected there if that is the case, no?
Indeed we do, but I'm still in the process of compiling those numbers into a meaningful plot, so I'm afraid I don't have those handy yet, sorry.
> >> I wonder if the delayed dequeue logic is having an unwanted effect on the calculation of >> utilization/load of the runqueue and, as a consequence, we're scheduling things to run on >> higher OPP's in the big cores, leading to poor decisions for energy efficiency. > > Notably util_est_update() gets delayed. Given we don't actually do an > enqueue when a delayed task gets woken, it didn't seem to make sense to > update that sooner. > > I'll go over all that again
| |