From: Ingo Molnar <mingo@elte.hu>
To: Jaswinder Singh Rajput <jaswinder@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>,
Peter Zijlstra <peterz@infradead.org>,
LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 2/2 -tip] perf_counter: parse-events.c introduce alias member in event_symbol
Date: Tue, 23 Jun 2009 10:24:11 +0200 [thread overview]
Message-ID: <20090623082411.GC11181@elte.hu> (raw)
In-Reply-To: <1245700551.6167.5.camel@localhost.localdomain>
* Jaswinder Singh Rajput <jaswinder@kernel.org> wrote:
> On Mon, 2009-06-22 at 16:10 +0200, Ingo Molnar wrote:
> > yeah, somethig like that. I'd suggest to print out the actual
> > measured events:
> >
> > cache-references 10123 events
> > cache-misses 15 events
> >
> > and if something does not appear to be ticking then do something
> > like:
> >
> > cache-misses <inactive>
> >
> > I.e. 'perf test' could be a quick way both to users and to
> > developers to see all possible hw and sw events.
> >
> > Perhaps builtin-test.c should also do specific testcases for certain
> > counters - say intentionally migrate to a CPU and back to see the
> > CPU-migration count.
> >
> > Also, you seem to have copied builtin-stat.c, right? Try to
> > librarize as much of the functionality (into util/*) to make the
> > resulting linecount increase as small as possible.
>
> perf test also need some command to execute otherwise it will also
> show long list of <inactive>
I think what it should do is to execute test-cases _internally_. Not
just execute some random command on the system and hope for events.
> I think better I should support all events in perf stat so user
> can get better information from it and we can all add some other
> testing option to it.
I agree - see my previous mail about how to achieve this better: we
should extend event string parsing with wildcards (regex) and with
'set of events' symbols that act as convenient specifiers for
certain typical uses.
> Anyway currently it looks like this :
>
> [RFC][PATCH] perf_counter tools: introduce perf test to test event for ticks
>
> perf test to Test performance counter events, its output on AMD box :
>
> ./perf test -a -- ls -lR > /dev/null
>
> Performance counter stats for 'ls' -lR:
>
> cycles 1226819954
> instructions 283680441
> cache-references 144893559
> cache-misses 3268438
> branches 37488241
> branch-misses 2464027
> bus-cycles <inactive>
> cpu-clock-msecs 17175506056
> task-clock-msecs 17175086665
> page-faults 488
> minor-faults 488
> major-faults <inactive>
We should try to provoke a real major fault (i.e. a fault with IO)
here. Not sure how though :-)
> context-switches 7956
> CPU-migrations 7
this needs to be provoked intentionally via sched_setaffinity():
first migrate to cpu0, then to cpu1.
> L1-data-Cache-Load-Referencees 398303881
> L1-data-Cache-Load-Misses 3552374
> L1-data-Cache-Store-Referencees 270178
> L1-data-Cache-Store-Misses <inactive>
this is probably inactive due to AMD not having events for that and
the generic cache event being 0 there, right?
> L1-data-Cache-Prefetch-Referencees 611622
> L1-data-Cache-Prefetch-Misses 399730
> L1-instruction-Cache-Load-Referencees 124696447
> L1-instruction-Cache-Load-Misses 2912802
> L1-instruction-Cache-Store-Referencees <inactive>
> L1-instruction-Cache-Store-Misses <inactive>
> L1-instruction-Cache-Prefetch-Referencees 156576
> L1-instruction-Cache-Prefetch-Misses <inactive>
> L2-Cache-Load-Referencees 4312353
> L2-Cache-Load-Misses 470382
> L2-Cache-Store-Referencees 4392945
> L2-Cache-Store-Misses <inactive>
> L2-Cache-Prefetch-Referencees <inactive>
> L2-Cache-Prefetch-Misses <inactive>
> Data-TLB-Cache-Load-Referencees 127076487
> Data-TLB-Cache-Load-Misses 1930048
> Data-TLB-Cache-Store-Referencees <inactive>
> Data-TLB-Cache-Store-Misses <inactive>
> Data-TLB-Cache-Prefetch-Referencees <inactive>
> Data-TLB-Cache-Prefetch-Misses <inactive>
> Instruction-TLB-Cache-Load-Referencees 132768077
> Instruction-TLB-Cache-Load-Misses 6406
> Instruction-TLB-Cache-Store-Referencees <inactive>
> Instruction-TLB-Cache-Store-Misses <inactive>
> Instruction-TLB-Cache-Prefetch-Referencees <inactive>
> Instruction-TLB-Cache-Prefetch-Misses <inactive>
> Branch-Cache-Load-Referencees 58030210
> Branch-Cache-Load-Misses 3257804
> Branch-Cache-Store-Referencees <inactive>
> Branch-Cache-Store-Misses <inactive>
> Branch-Cache-Prefetch-Referencees <inactive>
> Branch-Cache-Prefetch-Misses <inactive>
>
> 8.681671511 seconds time elapsed.
looks nice.
Ingo
next prev parent reply other threads:[~2009-06-23 8:24 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-22 11:13 [PATCH 1/2 -tip] perf_counter: parse-events.c define separate declarations for H/W and S/W events Jaswinder Singh Rajput
2009-06-22 11:14 ` [PATCH 2/2 -tip] perf_counter: parse-events.c introduce alias member in event_symbol Jaswinder Singh Rajput
2009-06-22 11:32 ` Ingo Molnar
2009-06-22 13:00 ` Jaswinder Singh Rajput
2009-06-22 13:23 ` Jaswinder Singh Rajput
2009-06-22 14:10 ` Ingo Molnar
2009-06-22 19:55 ` Jaswinder Singh Rajput
2009-06-22 20:07 ` Jaswinder Singh Rajput
2009-06-23 8:27 ` Ingo Molnar
2009-06-23 8:24 ` Ingo Molnar [this message]
2009-06-23 14:02 ` Jaswinder Singh Rajput
2009-06-24 8:48 ` Ingo Molnar
2009-06-22 11:38 ` [tip:perfcounters/urgent] perf_counter tools: Introduce " tip-bot for Jaswinder Singh Rajput
2009-06-22 11:38 ` [tip:perfcounters/urgent] perf_counter tools: Define separate declarations for H/W and S/W events tip-bot for Jaswinder Singh Rajput
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090623082411.GC11181@elte.hu \
--to=mingo@elte.hu \
--cc=jaswinder@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=peterz@infradead.org \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.