Re: [PATCH V3 0/2] sched/fair: Fallback to sched-idle CPU in absence of idle CPUs

From: Wanpeng Li
Date: Sun Dec 08 2019 - 22:50:25 EST


On Wed, 26 Jun 2019 at 13:07, Viresh Kumar <viresh.kumar@xxxxxxxxxx> wrote:
>
> Hi,
>
> We try to find an idle CPU to run the next task, but in case we don't
> find an idle CPU it is better to pick a CPU which will run the task the
> soonest, for performance reason.
>
> A CPU which isn't idle but has only SCHED_IDLE activity queued on it
> should be a good target based on this criteria as any normal fair task
> will most likely preempt the currently running SCHED_IDLE task
> immediately. In fact, choosing a SCHED_IDLE CPU over a fully idle one
> shall give better results as it should be able to run the task sooner
> than an idle CPU (which requires to be woken up from an idle state).
>
> This patchset updates both fast and slow paths with this optimization.
>
> Testing is done with the help of rt-app currently and here are the
> details:
>
> - Tested on Octacore Hikey platform (all CPUs change frequency
> together).
>
> - rt-app json [1] creates few tasks and we monitor the scheduling
> latency for them by looking at "wu_lat" field (usec).
>
> - The histograms are created using
> https://github.com/adkein/textogram: textogram -a 0 -z 1000 -n 10
>
> - the stats are accumulated using: https://github.com/nferraz/st

Hi Viresh,

Thanks for the great work! Could you give the whole commad-line for us testing?

Wanpeng