Re: [PATCH 1/2] cpuidle : auto-promotion for cpuidle states
From: Rafael J. Wysocki
Date: Fri Mar 22 2019 - 05:46:12 EST
On Fri, Mar 22, 2019 at 8:31 AM Abhishek Goel
<huntbag@xxxxxxxxxxxxxxxxxx> wrote:
>
> Currently, the cpuidle governors (menu /ladder) determine what idle state
> an idling CPU should enter into based on heuristics that depend on the
> idle history on that CPU. Given that no predictive heuristic is perfect,
> there are cases where the governor predicts a shallow idle state, hoping
> that the CPU will be busy soon. However, if no new workload is scheduled
> on that CPU in the near future, the CPU will end up in the shallow state.
>
> In case of POWER, this is problematic, when the predicted state in the
> aforementioned scenario is a lite stop state, as such lite states will
> inhibit SMT folding, thereby depriving the other threads in the core from
> using the core resources.
>
> To address this, such lite states need to be autopromoted. The cpuidle-
> core can queue timer to correspond with the residency value of the next
> available state. Thus leading to auto-promotion to a deeper idle state as
> soon as possible.
Isn't the tick stopping avoidance sufficient for that?