public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Corey Ashford <cjashfor@linux.vnet.ibm.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: linux-kernel@vger.kernel.org,
	Thomas Gleixner <tglx@linutronix.de>,
	Andrew Morton <akpm@linux-foundation.org>,
	Stephane Eranian <eranian@googlemail.com>,
	Eric Dumazet <dada1@cosmosbay.com>,
	Robert Richter <robert.richter@amd.com>,
	Arjan van de Ven <arjan@infradead.org>,
	Peter Anvin <hpa@zytor.com>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	Paul Mackerras <paulus@samba.org>,
	"David S. Miller" <davem@davemloft.net>,
	Mike Galbraith <efault@gmx.de>
Subject: Re: [announce] Performance Counters for Linux, v6
Date: Sun, 25 Jan 2009 17:06:09 -0800	[thread overview]
Message-ID: <497D0C81.5040406@linux.vnet.ibm.com> (raw)
In-Reply-To: <20090121185021.GA8852@elte.hu>

Ingo Molnar wrote:
> We are pleased to announce version 6 of our performance counters subsystem 
> implementation. The shortlog, diffstat and the combo patch can be found 
> below. The combo patch against latest -git (2.6.29-rc2) can be also found 
> at:
> 
>    http://people.redhat.com/mingo/perfcounters/perfcounters-v6-v2.6.29-rc2.patch
> 
> It's also available in tip/master at:
> 
>    http://people.redhat.com/mingo/tip.git/README
> 
> There are many changes in the v6 release:
> 
>  - PowerPC performance counters support from Paul Mackerras, for POWER6
>    and for the PPC970 family.
> 
>  - ioctl API to disable/enable individual counters and groups without
>    closing their fd. This can be useful for libraries, ad-hoc 
>    instrumentation and PAPI support.
> 
>  - 'pinned' and 'exclusive' counter attributes - for those
>    applications that want to influence counter scheduling explicitly.
> 
>  - The 'perfstat' utility (ex 'timec') has been updated:
> 
>       http://people.redhat.com/mingo/perfcounters/perfstat.c
> 
>  - 'kerneltop' (easy-to-use text mode NMI profiler) has been updated:
>    
>       http://people.redhat.com/mingo/perfcounters/kerneltop.c
> 
>  - Merged to latest mainline
> 
>  - Various fixes and other updates
> 
> 	Ingo

Hi Ingo,

Looking over the latest capabilities of this proposal, I am wondering 
how it can accommodate performance monitor units which have extra 
registers which require user-defined data to be loaded into them.

For example, on the Power architecture, there is an Instruction Matching 
Register which allows the counting of particular instructions. 
Currently, this is unsupported in perfmon2/3, but we have plans to add 
it, and it's pretty straight-forward to imagine how this would be done 
in perfmon.

But I don't see an obvious way to do it with your proposal.  Do you have 
any ideas how Performance Counters for Linux could accommodate this sort 
of PMU functionality?

One thought would be to change the event code to an event descriptor 
structure, which has room for lots of bits, including arch-defined bits 
(in the case of Power, an IMR value, and others).  This might also be a 
way to accommodate unit masks (and enums) as well, which Andi Kleen 
pointed out as an issue in an earlier LKML posting.

Regards,

- Corey

Corey Ashford
Software Engineer
IBM Linux Technology Center, Linux Toolchain
Beaverton, OR
503-578-3507
cjashfor@us.ibm.com


  parent reply	other threads:[~2009-01-26  1:06 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-21 18:50 [announce] Performance Counters for Linux, v6 Ingo Molnar
2009-01-21 19:34 ` Randy Dunlap
2009-01-21 19:56   ` Ingo Molnar
2009-01-21 21:14     ` Randy Dunlap
2009-01-22 11:22 ` Karel Zak
2009-01-22 12:04   ` Karel Zak
2009-01-22 12:06   ` Ingo Molnar
2009-01-26  1:06 ` Corey Ashford [this message]
2009-01-26  9:13   ` stephane eranian
2009-01-26 15:17     ` Ingo Molnar
2009-01-26 16:55       ` stephane eranian
2009-01-26 19:13       ` Corey Ashford
2009-01-26 19:39         ` [perfmon2] " Luck, Tony
2009-01-26 22:10           ` Ingo Molnar
2009-01-26 22:15         ` Ingo Molnar
2009-01-26 23:41           ` Corey Ashford
2009-01-29  2:10 ` Corey Ashford
2009-01-29 12:32   ` stephane eranian
2009-01-29 20:01     ` Corey Ashford
2009-01-29 21:44       ` stephane eranian
2009-02-19 21:53 ` Corey Ashford
2009-02-20  8:10   ` Ingo Molnar
2009-02-20 22:38     ` Corey Ashford
2009-02-20 22:47       ` Peter Zijlstra
2009-02-20 23:04         ` Corey Ashford
2009-02-20 23:24           ` stephane eranian
2009-02-20 23:58         ` Corey Ashford
2009-02-21  0:47 ` Arnd Bergmann
2009-02-26  9:49   ` Paul Mackerras
2009-02-26 13:37     ` Arnd Bergmann
2009-03-09  1:39 ` Robert Richter
2009-03-09 23:01   ` Paul Mackerras
2009-03-10  9:44     ` Robert Richter
2009-03-10 10:29       ` Peter Zijlstra
2009-03-10 11:49       ` Paul Mackerras
2009-03-10 11:53         ` Ingo Molnar
2009-03-10 16:26         ` Robert Richter
2009-03-10 17:27           ` Ingo Molnar

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=497D0C81.5040406@linux.vnet.ibm.com \
    --to=cjashfor@linux.vnet.ibm.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@linux-foundation.org \
    --cc=arjan@infradead.org \
    --cc=dada1@cosmosbay.com \
    --cc=davem@davemloft.net \
    --cc=efault@gmx.de \
    --cc=eranian@googlemail.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=paulus@samba.org \
    --cc=robert.richter@amd.com \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox