Re: [PATCH -tip] perf_counter/x86: Correct some event and umaskvalues for Intel processors
From: Yong Wang
Date: Fri Jun 12 2009 - 04:32:26 EST
On Wed, Jun 10, 2009 at 12:42:42PM +0200, Ingo Molnar wrote:
> * Yong Wang <yong.y.wang@xxxxxxxxxxxxxxx> wrote:
> > On Tue, Jun 09, 2009 at 04:16:21PM +0200, Ingo Molnar wrote:
> > >
> > > * Yong Wang <yong.y.wang@xxxxxxxxxxxxxxx> wrote:
> > >
> > > > Correct some event and UMASK values according to Intel SDM.
> > >
> > > Very nice, thanks!
> > >
> > > were you able to test the Atom ones by any chance?
> > >
> > You bet I was as I'm working on Moblin ;-) [...]
> Heh :-)
> > [...] However, some work while some do not. I'll take a look at
> > the problematic ones. With the previous event and umask values,
> > the pmc does not count at all for some events, like l1d-write-ops.
> Interesting. I had a good look at the Atom details in the docs but
> couldnt find anything suspicious. There's various umask level
> extensions (sometimes cflags level ones) like whether to measure the
> core or the thread, but the defaults (zero) seem to have OK
> semantics for most of the events.
> Btw., when mapping out event tables there's one little trick i used
> to 'scan' an event, using 'perf stat' and raw event numbers:
> for ((i=0;i<256;i++)); do \
> perf stat -e $(printf "r%02x%02x\n" $i 0xc0) true 2>&1 | \
> grep -w raw | grep -vw 0; \
> This scans all 256 umask values for the main event code of 0xc0, and
> displays the umask values where the counter show some activity.
> ( if it's some rare event then you might want to run something else
> that excercises that event, not /bin/true. )
Just took a look at the problematics ones and found that the fixed
function PMCs do not work on current Atom processors. I tested on 3 Atom
netbooks and the results are the same. Just sent a quirk patch for that.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/