[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAJZ5v0iGKZH_Zg1M_pXSizoPMHt5fuZOPbDeWhmXHatimjZBCQ@mail.gmail.com>
Date: Fri, 16 Jan 2026 13:29:24 +0100
From: "Rafael J. Wysocki" <rafael@...nel.org>
To: Christian Loehle <christian.loehle@....com>
Cc: "Rafael J. Wysocki" <rafael@...nel.org>, Linux PM <linux-pm@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>, Doug Smythies <dsmythies@...us.net>
Subject: Re: [PATCH v1 0/5] cpuidle: governors: teo: Wakeup events
classification change and some refinements
On Fri, Jan 16, 2026 at 12:52 PM Christian Loehle
<christian.loehle@....com> wrote:
>
> On 1/14/26 19:42, Rafael J. Wysocki wrote:
> > Hi All,
> >
> > This material has been in my local queue for almost a full development cycle,
> > so time to post it.
> >
> > The motivation for the changes in this series is mostly theoretical, but I do
> > see some idle power improvements from patch [4/5], for example, but nothing
> > specifically worth reporting.
> >
> > The first patch simply prevents idle states with zero-size bins from being
> > selected sometimes when teo_select() runs with stopped tick.
> >
> > Patch [2/5] avoids counting tick wakeups as intercepts unless there are
> > sufficiently many intercepts within the tick period range to assume that
> > the tick wakeup may have clobbered a genuine intercept.
> >
> > Patch [3/5] simply updates a coefficient in one of the inequalities to be
> > somewhat easier to interpret (this should be a cosmetic change).
> >
> > Patch [4/5] changes the criteria used for classifying wakeup events as hits
> > or intercepts to (hopefully) make the classification work better for large
> > state bins.
> >
> > Patch [5/5] refines the idle state lookup based on intercepts to first
> > consider the state with the maximum intercepts metric, so that state is
> > always taken into consideration.
> >
> > Please see the individual patch changelogs for details.
> >
> > Thanks!
> >
> >
Hi Christian,
> Hi Rafael,
> I'll do the in-depth review, but have run some tests already.
> They are attached, platform is the usual rk3399.
> "teo" is mainline, "teo-$i" is with patches 1..$i applied.
Thanks for testing!
> There's a regression on teo-4 visible on the intercept heavy IO workloads,
> for idle misses that isn't strong enough to reflect in score changes except
> for the very slow mtdblock device.
> interestingly though there also seems to be a regression in
> mapper/dm-slow (dm device with 51ms delay on each IO), which is not
> intercept heavy.
> Looking at the state residencies it overuses the deepest state2 in
> where state1 was preferred for the other teo variants.
> I've attached that too for reference.
> I'm assuming that is because of the new intercept-logic-exclusion clause.
So can you please restore that clause to its previous form, while
keeping the other changes in patch 4, and see if the regression is
still there?
> teo-5 seems to be slightly better than teo-4 here, but still a regression
> from the others.
I see.
Powered by blists - more mailing lists