* Arnaldo Carvalho de Melo <[email protected]> wrote:

> Em Tue, Oct 18, 2016 at 09:59:01AM +0200, Ingo Molnar escreveu:
> > * Arnaldo Carvalho de Melo <[email protected]> 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

Reply via email to