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

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 <>

COLOPHON         top

       This page is part of the perfmon2 (a performance monitoring library)
       project.  Information about the project can be found at 
       ⟨⟩.  If you have a bug report for this
       manual page, send it to  This
       page was obtained from the project's upstream Git repository
       ⟨git:// perfmon2-libpfm4⟩ on
       2018-04-30.  (At that time, the date of the most recent commit that
       was found in the repository was 2018-04-26.)  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

                               September, 2011                     LIBPFM(3)