Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752956Ab2BEMGc (ORCPT ); Sun, 5 Feb 2012 07:06:32 -0500 Received: from mail-vx0-f174.google.com ([209.85.220.174]:48252 "EHLO mail-vx0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751205Ab2BEMGb convert rfc822-to-8bit (ORCPT ); Sun, 5 Feb 2012 07:06:31 -0500 MIME-Version: 1.0 X-Originating-IP: [212.179.42.66] In-Reply-To: References: <1327572121-13673-1-git-send-email-gilad@benyossef.com> <1327591185.2446.102.camel@twins> <1328117722.2446.262.camel@twins> <20120201184045.GG2382@linux.vnet.ibm.com> <20120201201336.GI2382@linux.vnet.ibm.com> <4F2A58A1.90800@redhat.com> <20120202153437.GD2518@linux.vnet.ibm.com> <4F2AB66C.2030309@redhat.com> <20120202170134.GM2518@linux.vnet.ibm.com> Date: Sun, 5 Feb 2012 14:06:29 +0200 Message-ID: Subject: Re: [v7 0/8] Reduce cross CPU IPI interference From: Gilad Ben-Yossef To: Christoph Lameter Cc: "Paul E. McKenney" , Avi Kivity , Peter Zijlstra , linux-kernel@vger.kernel.org, Chris Metcalf , Frederic Weisbecker , linux-mm@kvack.org, Pekka Enberg , Matt Mackall , Sasha Levin , Rik van Riel , Andi Kleen , Mel Gorman , Andrew Morton , Alexander Viro , Michal Nazarewicz , Kosaki Motohiro , Milton Miller Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2089 Lines: 58 On Thu, Feb 2, 2012 at 7:25 PM, Christoph Lameter wrote: > On Thu, 2 Feb 2012, Paul E. McKenney wrote: > >> Frederic's work checks to see if there is only one runnable user task >> on a given CPU. ?If there is only one, then the scheduling-clock interrupt >> is turned off for that CPU, and RCU is told to ignore it while it is >> executing in user space. ?Not sure whether this covers KVM guests. >> >> In any case, this is not yet in mainline. > > Sounds great. Is there any plan on when to merge it? Where are the most up > to date patches vs mainstream? > Frederic has the latest version in a git tree here: git://github.com/fweisbec/linux-dynticks.git nohz/cpuset-v2-pre-20120117 It's on top latest rcu/core. I've been playing with it for some time now. It works very well, considering the early state - there are a couple of TODO items listed here: https://tglx.de/~fweisbec/TODO-nohz-cpusets and I've seen an assert from the RCU code once. Also, there is some system stuff "in the way" so to speak, of getting the full benefits: I had to disable the clock source watchdog (I'm testing in a KVM VM, so I guess the TSC is not stable), the vmstat_stats work on that CPU and to (try to) fix what looks like a bug in the NOHZ timer code. But the good news is that with these hacks applied I managed to run a 100% CPU task with zero interrupts (ticks or otherwise) on an isolated cpu. Disregarding TLB overhead, you get bare metal performance with Linux user space manageability and debug capabilities. Pretty magical really: It's like eating your cake and having it too :-) Gilad -- Gilad Ben-Yossef Chief Coffee Drinker gilad@benyossef.com http://benyossef.com "If you take a class in large-scale robotics, can you end up in a situation where the homework eats your dog?" ?-- Jean-Baptiste Queru -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/