From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S942418AbcJSOaX (ORCPT ); Wed, 19 Oct 2016 10:30:23 -0400 Received: from mail-qt0-f174.google.com ([209.85.216.174]:35396 "EHLO mail-qt0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932833AbcJSOaU (ORCPT ); Wed, 19 Oct 2016 10:30:20 -0400 Date: Wed, 19 Oct 2016 15:38:33 +0200 From: Ingo Molnar To: Arnaldo Carvalho de Melo Cc: Sukadev Bhattiprolu , Andi Kleen , Jiri Olsa , Wang Nan , Namhyung Kim , Linux Kernel Mailing List Subject: Re: [GIT PULL] Vendor events file/dir names Message-ID: <20161019133833.GA18917@gmail.com> References: <20161017190438.GU12815@kernel.org> <20161018075901.GB21544@gmail.com> <20161018153618.GV12815@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20161018153618.GV12815@kernel.org> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org * Arnaldo Carvalho de Melo wrote: > Em Tue, Oct 18, 2016 at 09:59:01AM +0200, Ingo Molnar escreveu: > > * Arnaldo Carvalho de Melo wrote: > > > Ingo pointed out to me that in the kernel sources we do not use > > > file/dir names with uppercase chars (look, for instance, at arch/), so I > > > mostly scripted a conversion to lowercase and what I got is at: > > > > git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git perf/vendor_events > > > > Please let me know if you have any technical argument against > > > this move, > > > > Looks good to me! > > So I've made this signed tag available with just what is in this branch, > that was based off tip/perf/urgent, please pull it into the most convenient > branch at this time, > > Thanks, > > - Arnaldo > > tag perf-vendor_events-for-mingo-20161018 Ok, I tried this out, and I like it mostly - the event files hierarchy looks good and the 'perf list' output looks good, but I found a couple of usability problems when trying to actually navigate and search the new hw events: 1) How do I query individual hw event groups? 'perf list' output is really long now, and for example it gives me: cache: l1d.replacement [L1D data line replacements] ... If I knew that I'm interested in cache related events, I'd have expected to be able to do: perf list cache or at least: perf list cache: or something similar to list just - but it does not seem to do the right thing. 2) Another problem I found is that there does not appear to be an easy way to get the long description of events. For example: triton:~/tip> perf list longest_lat_cache.miss List of pre-defined events (to be used in -e): cache: longest_lat_cache.miss [Core-originated cacheable demand requests missed LLC] But the event table actually includes the following as well: "PublicDescription": "This event counts each cache miss condition for references to the last level cache.", which is not printed anywhere. I tried the obvious 'perf list -v longest_lat_cache.miss'. 3) If I come with an event from the vendor world, say "LONGEST_LAT_CACHE.MISS", and try to list it, 'perf list' does not recognize it: triton:~/tip> perf list LONGEST_LAT_CACHE.MISS List of pre-defined events (to be used in -e): I believe the searching of events in perf list should be case insentitive in general. Event parsing correctly recognizes it: triton:~/tip> perf stat -e longest_lat_cache.miss -e LONGEST_LAT_CACHE.MISS -e LoNgEsT_lAt_CaChE.MisS sleep 1 Performance counter stats for 'sleep 1': 2,669 longest_lat_cache.miss 2,669 LONGEST_LAT_CACHE.MISS 2,669 LoNgEsT_lAt_CaChE.MisS Thanks, Ingo