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.

