From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751758AbbC0FHl (ORCPT ); Fri, 27 Mar 2015 01:07:41 -0400 Received: from g4t3425.houston.hp.com ([15.201.208.53]:28926 "EHLO g4t3425.houston.hp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751046AbbC0FHk (ORCPT ); Fri, 27 Mar 2015 01:07:40 -0400 Message-ID: <1427432841.2788.10.camel@j-VirtualBox> Subject: Re: [PATCH V2] sched: Improve load balancing in the presence of idle CPUs From: Jason Low To: Wanpeng Li Cc: Preeti U Murthy , peterz@infradead.org, mingo@kernel.org, riel@redhat.com, daniel.lezcano@linaro.org, vincent.guittot@linaro.org, srikar@linux.vnet.ibm.com, pjt@google.com, benh@kernel.crashing.org, efault@gmx.de, linux-kernel@vger.kernel.org, iamjoonsoo.kim@lge.com, svaidy@linux.vnet.ibm.com, tim.c.chen@linux.intel.com, morten.rasmussen@arm.com, jason.low2@hp.com Date: Thu, 26 Mar 2015 22:07:21 -0700 In-Reply-To: <20150327021201.GA4491@kernel> References: <20150326130014.21532.17158.stgit@preeti.in.ibm.com> <20150327021201.GA4491@kernel> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.2.3-0ubuntu6 Content-Transfer-Encoding: 7bit Mime-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 2015-03-27 at 10:12 +0800, Wanpeng Li wrote: > Hi Preeti, > On Thu, Mar 26, 2015 at 06:32:44PM +0530, Preeti U Murthy wrote: > > > >1. An ILB CPU was chosen from the first numa domain to trigger nohz idle > >load balancing [Given the experiment, upto 6 CPUs per core could be > >potentially idle in this domain.] > > > >2. However the ILB CPU would call load_balance() on itself before > >initiating nohz idle load balancing. > > > >3. Given cores are SMT8, the ILB CPU had enough opportunities to pull > >tasks from its sibling cores to even out load. > > > >4. Now that the ILB CPU was no longer idle, it would abort nohz idle > >load balancing > > I don't see abort nohz idle load balancing when ILB CPU was no longer idle > in nohz_idle_balance(), could you explain more in details? Hi Wanpeng, In nohz_idle_balance(), there is a check for need_resched() so if the cpu has something to run, it should exit nohz_idle_balance(), which may cause it to not do the idle balancing on the other CPUs.