On Tue, Apr 30, 2013 at 5:31 PM, Carl E. Love <c...@linux.vnet.ibm.com> wrote:
> Stephane
>
> I created the following patch for the IBM Power 7 and Power 7+ systems.
> Please review and if acceptable commit it to the perfmon 2 source code
> tree.  Thank you.
>
>              Carl Love
> -------------------------------------------------------------------------
>
> Power 7, change the code for the PM_RUN_INST_CMPL and PM_RUN_CYC events
>
> The Power 7 processor has four programmable counters and two fixed counters.
> Currently, the codes returned for PM_RUN_INST_CMPL and PM_RUN_CYC are for
> the programmable counters.  This patch changes the returned code to the
> fixed counter code thus freeing up the programmable counters for other
> events.
>
Something not clear to me here.
perf_event in the kernel does the event scheduling. So is it the case that
on Power, it is not able to recognize the event as also being supported
by a fixed counter?

> Signed-off-by: Carl Love <ca...@us.ibm.com>
> ---
>  lib/events/power7_events.h | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/lib/events/power7_events.h b/lib/events/power7_events.h
> index 7bfdf15..a9afffe 100644
> --- a/lib/events/power7_events.h
> +++ b/lib/events/power7_events.h
> @@ -1299,7 +1299,7 @@ static const pme_power_entry_t power7_pe[] = {
>         },
>         [ POWER7_PME_PM_RUN_INST_CMPL ] = {
>                 .pme_name = "PM_RUN_INST_CMPL",
> -               .pme_code = 0x400fa,
> +               .pme_code = 0x500fa,
>                 .pme_short_desc = "Run_Instructions",
>                 .pme_long_desc = "Number of run instructions completed. ",
>         },
> @@ -2613,7 +2613,7 @@ static const pme_power_entry_t power7_pe[] = {
>         },
>         [ POWER7_PME_PM_RUN_CYC ] = {
>                 .pme_name = "PM_RUN_CYC",
> -               .pme_code = 0x200f4,
> +               .pme_code = 0x600f4,
>                 .pme_short_desc = "Run_cycles",
>                 .pme_long_desc = "Processor Cycles gated by the run latch.  
> Operating systems use the run latch to indicate when they are doing useful 
> work.  The run latch is typically cleared in the OS idle loop.  Gating by the 
> run latch filters out the idle loop.",
>         },
> --
> 1.7.12.rc1.22.gbfbf4d4
>
>
>
>
> ------------------------------------------------------------------------------
> Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
> Get 100% visibility into your production application - at no cost.
> Code-level diagnostics for performance bottlenecks with <2% overhead
> Download for free and get started troubleshooting in minutes.
> http://p.sf.net/sfu/appdyn_d2d_ap1
> _______________________________________________
> perfmon2-devel mailing list
> perfmon2-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/perfmon2-devel

------------------------------------------------------------------------------
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with <2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1
_______________________________________________
perfmon2-devel mailing list
perfmon2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/perfmon2-devel

Reply via email to