lkml.org 
[lkml]   [2013]   [May]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Basic perf PMU support for Haswell v12

* Ingo Molnar <mingo@kernel.org> wrote:

> * Andi Kleen <andi@firstfloor.org> wrote:
>
> > On Tue, May 28, 2013 at 08:29:15AM +0200, Ingo Molnar wrote:
> > >
> > > * Andi Kleen <andi@firstfloor.org> wrote:
> > >
> > > > All outstanding issues fixed I hope. And I added mem-loads/stores support.
> > > >
> > > > Contains support for:
> > > > - Basic Haswell PMU and PEBS support
> > > > - Late unmasking of the PMI
> > > > - mem-loads/stores support
> > > >
> > > > v2: Addressed Stephane's feedback. See individual patches for details.
> > > > v3: now even more bite-sized. Qualifier constraints merged earlier.
> > > > v4: Rename some variables, add some comments and other minor changes.
> > > > Add some Reviewed/Tested-bys.
> > > > v5: Address some minor review feedback. Port to latest perf/core
> > > > v6: Add just some variable names, add comments, edit descriptions, some
> > > > more testing, rebased to latest perf/core
> > > > v7: Expand comment
> > > > v8: Rename structure field.
> > > > v9: No wide counters, but add basic LBRs. Add some more
> > > > constraints. Rebase to 3.9rc1
> > > > v10: Change some whitespace. Rebase to 3.9rc3
> > > > v11: Rebase to perf/core. Fix extra regs. Rename INTX.
> > > > v12: Rebase to 3.10-rc2
> > > > Add mem-loads/stores support for parity with Sandy Bridge.
> > > > Fix fixed counters (Thanks Ingo!)
> > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > > > Make late ack optional
> > > > Export new config bits in sysfs.
> > > > Minor changes
> > >
> > > I reported a pretty nasty regression with the previous version (v10) which
> > > made this series break default 'perf top' on non-Haswell systems - but
> > > it's unclear from this changelog to what extent you managed to reproduce
> > > the bug and fix it, and what the fix was?
> >
> > Thanks for checking.
> > I didn't reproduce it, but I found a problem by code review with the
> > fixed counter constraints.
> >
> > I think I fixed it by adding this hunk:
> >
> > @@ -2227,7 +2313,7 @@ __init int intel_pmu_init(void)
> > * counter, so do not extend mask to generic counters
> > */
> > for_each_event_constraint(c, x86_pmu.event_constraints) {
> > - if (c->cmask != X86_RAW_EVENT_MASK
> > + if (c->cmask != FIXED_EVENT_FLAGS
> > || c->idxmsk64 == INTEL_PMC_MSK_FIXED_REF_CYCLES) {
> > continue;
> > }
> >
> > It would be cleaner to detect the fixed counters in some other way,
> > but that was the simplest fix I could find.
> >
> > Testing appreciated
>
> Fair enough - I'll give it a whirl - that hunk does indeed look like it
> could make a difference.

Ok, I can confirm that this fixed the perf top and perf record regression
I saw on Intel systems.

Thanks,

Ingo


\
 
 \ /
  Last update: 2013-05-30 09:41    [W:0.644 / U:0.372 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site