Re: [RFC PATCH] sched: select_idle_core should select least utilized core

From: Peter Zijlstra
Date: Fri Jun 09 2017 - 03:53:30 EST


On Thu, Jun 08, 2017 at 03:06:39PM -0700, subhra mazumdar wrote:
>
>
> On 06/08/2017 12:59 PM, Peter Zijlstra wrote:
> > On Thu, Jun 08, 2017 at 03:26:32PM -0400, Subhra Mazumdar wrote:
> > > Current select_idle_core tries to find a fully idle core and if it fails
> > > select_idle_cpu next returns any idle cpu in the llc domain. This is not optimal
> > > for architectures with many (more than 2) hyperthreads in a core. This patch
> > > changes select_idle_core to find the core with least number of busy
> > > hyperthreads and return an idle cpu in that core.
> > Yeah, I think not. That makes select_idle_siblings _vastly_ more
> > expensive.
> I am not sure if the cost will increase vastly. Firstly I removed the
> select_idle_cpu for archs that have SMT.

But you still do an unconditional scan of the full cache domain, that
alone is too expensive.