|
Packit |
577717 |
.TH LIBPFM 3 "September, 2011" "" "Linux Programmer's Manual"
|
|
Packit |
577717 |
.SH NAME
|
|
Packit |
577717 |
libpfm_mips_74k - support for MIPS 74k processors
|
|
Packit |
577717 |
.SH SYNOPSIS
|
|
Packit |
577717 |
.nf
|
|
Packit |
577717 |
.B #include <perfmon/pfmlib.h>
|
|
Packit |
577717 |
.sp
|
|
Packit |
577717 |
.B PMU name: mips_74k
|
|
Packit |
577717 |
.B PMU desc: MIPS 74k
|
|
Packit |
577717 |
.sp
|
|
Packit |
577717 |
.SH DESCRIPTION
|
|
Packit |
577717 |
The library supports MIPS 74k processors in big or little endian modes.
|
|
Packit |
577717 |
|
|
Packit |
577717 |
.SH ENCODINGS
|
|
Packit |
577717 |
On this processor, what is measured by an event depends on the event code and
|
|
Packit |
577717 |
on the counter it is programmed on. Usually the meaning of the event code
|
|
Packit |
577717 |
changes between odd and even indexed counters. For instance, event code \fB0x2\fR
|
|
Packit |
577717 |
means 'PREDICTED_JR31' when programmed on even-indexed counters and it means 'JR_31_MISPREDICTIONS'
|
|
Packit |
577717 |
when programmed on odd-indexed counters. To correctly measure an event, one needs
|
|
Packit |
577717 |
both the event encoding and a list of possible counters.
|
|
Packit |
577717 |
|
|
Packit |
577717 |
When \fRpfm_get_os_event_encoding()\fR is used with \fBPFM_OS_NONE\fR to return the raw
|
|
Packit |
577717 |
PMU encoding, the library returns two values: the event encoding as per the architecture
|
|
Packit |
577717 |
manual and a bitmask of valid counters to program it on. For instance, for 'JR_31_MISPREDICTIONS'
|
|
Packit |
577717 |
The library returns codes[0] = 0x4a, codes[1]= 0xa (supported on counter 1, 3).
|
|
Packit |
577717 |
|
|
Packit |
577717 |
The encoding for a specific kernel interface may vary and is handled internally
|
|
Packit |
577717 |
by the library.
|
|
Packit |
577717 |
|
|
Packit |
577717 |
.SH MODIFIERS
|
|
Packit |
577717 |
The following modifiers are supported on MIPS 74k.
|
|
Packit |
577717 |
.TP
|
|
Packit |
577717 |
.B u
|
|
Packit |
577717 |
Measure at user level. This corresponds to \fBPFM_PLM3\fR.
|
|
Packit |
577717 |
This is a boolean modifier.
|
|
Packit |
577717 |
.TP
|
|
Packit |
577717 |
.B k
|
|
Packit |
577717 |
Measure at kernel level. This corresponds to \fBPFM_PLM0\fR.
|
|
Packit |
577717 |
This is a boolean modifier.
|
|
Packit |
577717 |
.TP
|
|
Packit |
577717 |
.B e
|
|
Packit |
577717 |
Measure at exception level. This corresponds to \fBPFM_PLM2\fR.
|
|
Packit |
577717 |
This is a boolean modifier.
|
|
Packit |
577717 |
.TP
|
|
Packit |
577717 |
.B s
|
|
Packit |
577717 |
Measure at supervisor level. This corresponds to \fBPFM_PLM1\fR.
|
|
Packit |
577717 |
This is a boolean modifier.
|
|
Packit |
577717 |
|
|
Packit |
577717 |
It should be noted that those modifiers are available for encoding as raw mode
|
|
Packit |
577717 |
with \fBPFM_OS_NONE\fR but they may not all be present with specific kernel
|
|
Packit |
577717 |
interfaces.
|
|
Packit |
577717 |
|
|
Packit |
577717 |
.SH AUTHORS
|
|
Packit |
577717 |
.nf
|
|
Packit |
577717 |
Stephane Eranian <eranian@gmail.com>
|
|
Packit |
577717 |
.if
|
|
Packit |
577717 |
.PP
|