From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932665AbeASRfF (ORCPT ); Fri, 19 Jan 2018 12:35:05 -0500 Received: from mail-it0-f44.google.com ([209.85.214.44]:44291 "EHLO mail-it0-f44.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932631AbeASRew (ORCPT ); Fri, 19 Jan 2018 12:34:52 -0500 X-Google-Smtp-Source: ACJfBotw7LQTRl+KeZjn3Bs8krx6qFLWs7S6gs+R6debsx8a0sHq+K8WrFsIrIcy/M2/fg+8dS4cvJy6VDdk7ZS+7cI= MIME-Version: 1.0 In-Reply-To: <20180119171929.GZ2228@hirez.programming.kicks-ass.net> References: <1516042629-387021-1-git-send-email-kan.liang@intel.com> <1516042629-387021-4-git-send-email-kan.liang@intel.com> <20180118133248.GC2249@hirez.programming.kicks-ass.net> <37D7C6CF3E00A74B8858931C1DB2F07753801FEF@SHSMSX103.ccr.corp.intel.com> <20180119130731.GQ2228@hirez.programming.kicks-ass.net> <37D7C6CF3E00A74B8858931C1DB2F077538025E7@SHSMSX103.ccr.corp.intel.com> <20180119171929.GZ2228@hirez.programming.kicks-ass.net> From: Stephane Eranian Date: Fri, 19 Jan 2018 09:34:50 -0800 Message-ID: Subject: Re: [PATCH V5 4/8] perf/x86/intel/uncore: add new data structures for free running counters To: Peter Zijlstra Cc: "Liang, Kan" , "tglx@linutronix.de" , "mingo@redhat.com" , "linux-kernel@vger.kernel.org" , "acme@kernel.org" , "ak@linux.intel.com" Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Jan 19, 2018 at 9:19 AM, Peter Zijlstra wrote: > > On Fri, Jan 19, 2018 at 03:15:00PM +0000, Liang, Kan wrote: > > > > > > On Thu, Jan 18, 2018 at 05:43:10PM +0000, Liang, Kan wrote: > > > > In the uncore document, there is no event-code assigned to free running > > > counters. > > > > Some events need to be defined to indicate the free running counters. > > > > The events are encoded as event-code + umask-code. > > > > > > > > The event-code for all free running counters is 0xff, which is the > > > > same as the fixed counters. > > > > > > Is it possible to count the same things using the generic counters? > > > > > > > Yes, there are events for generic counters to count bandwidth and > > utilization. > > > > The reasons of introducing free running counters are > > - To provide highly valuable information (bandwidth and utilization) > > which most of the customers are interested in > > - To save on the precious generic counters > > _IF_ the exact same counters are available on the GPs then we must use the > same event code for them and use event scheduling to place them on > fixed/free-running counters when possible. > > That's what we do for the CPU PMU's fixed counters too. > > Don't invent magic event codes just because. I agree with Peter here. The scheduling algorithm should take care of this. There is only one case in the core PMU where we had to invent an event code. That was for UNHALTED_REFERENCE_CYCLES which could only be measured on a fixed counters. But for the other two, the scheduling code takes care of them taking into consideration filter bits.