Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751299Ab0KYGI6 (ORCPT ); Thu, 25 Nov 2010 01:08:58 -0500 Received: from casper.infradead.org ([85.118.1.10]:54555 "EHLO casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750879Ab0KYGI5 convert rfc822-to-8bit (ORCPT ); Thu, 25 Nov 2010 01:08:57 -0500 Subject: Re: [RFC PATCH 2/3 v2] perf: Implement Nehalem uncore pmu From: Peter Zijlstra To: Lin Ming Cc: Stephane Eranian , Andi Kleen , Ingo Molnar , lkml , Frederic Weisbecker , Arjan van de Ven In-Reply-To: <1290644675.2405.90.camel@minggr.sh.intel.com> References: <1290340877.2245.124.camel@localhost> <8e9ff9280b0c4a059bc82b5c4a629897.squirrel@www.firstfloor.org> <1290348259.2245.172.camel@localhost> <1290361473.2153.39.camel@laptop> <1290644675.2405.90.camel@minggr.sh.intel.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8BIT Date: Thu, 25 Nov 2010 07:09:10 +0100 Message-ID: <1290665350.2072.521.camel@laptop> Mime-Version: 1.0 X-Mailer: Evolution 2.30.3 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2020 Lines: 45 On Thu, 2010-11-25 at 08:24 +0800, Lin Ming wrote: > On Tue, 2010-11-23 at 18:00 +0800, Stephane Eranian wrote: > > On Sun, Nov 21, 2010 at 6:44 PM, Peter Zijlstra wrote: > > > On Sun, 2010-11-21 at 22:04 +0800, Lin Ming wrote: > > >> On Sun, 2010-11-21 at 20:46 +0800, Andi Kleen wrote: > > >> > > > > >> > > 2. Uncore pmu NMI handling > > >> > > > > >> > > All the 4 cores are programmed to receive uncore counter overflow > > >> > > interrupt. The NMI handler(running on 1 of the 4 cores) handle all > > >> > > counters enabled by all 4 cores. > > >> > > > >> > Really for uncore monitoring there is no need to use an NMI handler. > > >> > You can't profile a core anyways, so you can just delay the reporting > > >> > a little bit. It may simplify the code to not use one here > > >> > and just use an ordinary handler. > > >> > > >> OK, I can use on ordinary interrupt handler here. > > > > > > Does the hardware actually allow using a different interrupt source? > > > > > It does not. It's using whatever you've programmed into the APIC > > LVT vector, AFAIK. Uncore interrupt mode is enabled via > > IA32_DEBUGCTL. Regarless of sampling or not, you need the interrupt > > to virtualize the counters to 64 bits. > > If only counting(perf stat) makes sense for uncore events, do we still > need an interrupt handler? Yep, I see no reason to dis-allow sampling. Sure its hard to make sense of it, but since there are people who offline all but one cpu of a package, I bet there are people who will run just one task on a package as well. Just because it doesn't make sense in general doesn't mean there isn't anybody who'd want to do it and actually knows wth he's doing. > 48 bits counter is not that easy to overflow in practice. Still.. -- 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/