libpfm_mips_74k(3) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | ENCODINGS | MODIFIERS | AUTHORS | COLOPHON

LIBPFM(3)               Linux Programmer's Manual              LIBPFM(3)

NAME         top

       libpfm_mips_74k - support for MIPS 74k processors

SYNOPSIS         top

       #include <perfmon/pfmlib.h>

       PMU name: mips_74k
       PMU desc: MIPS 74k

DESCRIPTION         top

       The library supports MIPS 74k processors in big or little endian
       modes.

ENCODINGS         top

       On this processor, what is measured by an event depends on the
       event code and on the counter it is programmed on. Usually the
       meaning of the event code changes between odd and even indexed
       counters. For instance, event code 0x2 means 'PREDICTED_JR31'
       when programmed on even-indexed counters and it means
       'JR_31_MISPREDICTIONS' when programmed on odd-indexed counters.
       To correctly measure an event, one needs both the event encoding
       and a list of possible counters.

       When pfm_get_os_event_encoding() is used with PFM_OS_NONE to
       return the raw PMU encoding, the library returns two values: the
       event encoding as per the architecture manual and a bitmask of
       valid counters to program it on. For instance, for
       'JR_31_MISPREDICTIONS' The library returns codes[0] = 0x4a,
       codes[1]= 0xa (supported on counter 1, 3).

       The encoding for a specific kernel interface may vary and is
       handled internally by the library.

MODIFIERS         top

       The following modifiers are supported on MIPS 74k.

       u      Measure at user level. This corresponds to PFM_PLM3.  This
              is a boolean modifier.

       k      Measure at kernel level. This corresponds to PFM_PLM0.
              This is a boolean modifier.

       e      Measure at exception level. This corresponds to PFM_PLM2.
              This is a boolean modifier.

       s      Measure at supervisor level. This corresponds to PFM_PLM1.
              This is a boolean modifier.

              It should be noted that those modifiers are available for
              encoding as raw mode with PFM_OS_NONE but they may not all
              be present with specific kernel interfaces.

AUTHORS         top

       Stephane Eranian <[email protected]>

COLOPHON         top

       This page is part of the perfmon2 (a performance monitoring
       library) project.  Information about the project can be found at
       ⟨http:https://perfmon2.sourceforge.net/⟩.  If you have a bug report for
       this manual page, send it to
       [email protected].  This page was obtained
       from the project's upstream Git repository
       ⟨git:https://git.code.sf.net/p/perfmon2/libpfm4 perfmon2-libpfm4⟩ on
       2023-12-22.  (At that time, the date of the most recent commit
       that was found in the repository was 2023-09-28.)  If you
       discover any rendering problems in this HTML version of the page,
       or you believe there is a better or more up-to-date source for
       the page, or you have corrections or improvements to the
       information in this COLOPHON (which is not part of the original
       manual page), send a mail to [email protected]

                             September, 2011                   LIBPFM(3)