| The Gaudi Framework v28r2p1 (f1a77ff4)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

Classes | Macros | Typedefs | Functions
perfmon.h File Reference
`#include <sys/types.h>`
`#include <stdint.h>`
`#include "perfmon_v2.h"`
Include dependency graph for perfmon.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes
struct | pfarg_sinfo_t
struct | pfarg_pmr_t
struct | pfarg_pmd_attr_t
struct | pfarg_set_desc_t
struct | pfarg_set_info_t
struct | pfarg_ovfl_msg_t
union | pfarg_msg_t

## Macros
#define | PFM_MAX_PMCS PFM_ARCH_MAX_PMCS
#define | PFM_MAX_PMDS PFM_ARCH_MAX_PMDS
#define | PFM_BPL (sizeof(uint64_t)<<3)
#define | PFM_BVSIZE(x) (((x)+PFM_BPL-1) / PFM_BPL)
#define | PFM_PMD_BV PFM_BVSIZE(PFM_MAX_PMDS)
#define | PFM_PMC_BV PFM_BVSIZE(PFM_MAX_PMCS)
#define | PFM_FL_NOTIFY_BLOCK 0x01 /* block task on user notifications */
#define | PFM_FL_SYSTEM_WIDE 0x02 /* create a system wide context */
#define | PFM_FL_SMPL_FMT 0x04 /* session uses sampling format */
#define | PFM_FL_OVFL_NO_MSG 0x80 /* no overflow msgs */
#define | PFM_REGFL_OVFL_NOTIFY 0x1 /* PMD: send notification on event */
#define | PFM_REGFL_RANDOM 0x2 /* PMD: randomize value after event */
#define | PFM_REGFL_NO_EMUL64 0x4 /* PMC: no 64-bit emulation */
#define | PFM_RW_PMD 1 /* simplified PMD (pfarg_pmr_t) */
#define | PFM_RW_PMC 2 /* PMC registers (pfarg_pmr_t) */
#define | PFM_RW_PMD_ATTR 3 /* extended PMD (pfarg_pmd_attr) */
#define | PFM_NO_TARGET -1 /* no target, detach */
#define | PFM_ST_START 0x1 /* start monitoring */
#define | PFM_ST_STOP 0x2 /* stop monitoring */
#define | PFM_ST_RESTART 0x3 /* resume after notify */
#define | PFM_SETFL_OVFL_SWITCH 0x01 /* enable switch on overflow (subject to individual switch_cnt */
#define | PFM_SETFL_TIME_SWITCH 0x02 /* switch set on timeout */
#define | PFM_MSG_OVFL 1 /* an overflow happened */
#define | PFM_MSG_END 2 /* thread to which context was attached ended */
#define | PFM_VERSION_MAJOR(x) (((x)>>16) & 0xffff)
#define | PFM_VERSION_MINOR(x) ((x) & 0xffff)

## Typedefs
typedef int | os_err_t

## Functions
os_err_t | pfm_create (int flags, pfarg_sinfo_t *sif,...)
os_err_t | pfm_write (int fd, int flags, int type, void *reg, size_t n)
os_err_t | pfm_read (int fd, int flags, int type, void *reg, size_t n)
os_err_t | pfm_set_state (int fd, int flags, int state)
os_err_t | pfm_create_sets (int fd, int flags, pfarg_set_desc_t *s, size_t sz)
os_err_t | pfm_getinfo_sets (int fd, int flags, pfarg_set_info_t *s, size_t sz)
os_err_t | pfm_attach (int fd, int flags, int target)

## Macro Definition Documentation

#define PFM_BPL (sizeof(uint64_t)<<3)

Definition at line 55 of file perfmon.h.

#define PFM_BVSIZE | ( |  | x | ) | (((x)+PFM_BPL-1) / PFM_BPL)

Definition at line 56 of file perfmon.h.

#define PFM_FL_NOTIFY_BLOCK 0x01 /* block task on user notifications */

Definition at line 91 of file perfmon.h.

#define PFM_FL_OVFL_NO_MSG 0x80 /* no overflow msgs */

Definition at line 94 of file perfmon.h.

#define PFM_FL_SMPL_FMT 0x04 /* session uses sampling format */

Definition at line 93 of file perfmon.h.

#define PFM_FL_SYSTEM_WIDE 0x02 /* create a system wide context */

Definition at line 92 of file perfmon.h.

#define PFM_MAX_PMCS PFM_ARCH_MAX_PMCS

Definition at line 48 of file perfmon.h.

#define PFM_MAX_PMDS PFM_ARCH_MAX_PMDS

Definition at line 49 of file perfmon.h.

#define PFM_MSG_END 2 /* thread to which context was attached ended */

Definition at line 214 of file perfmon.h.

#define PFM_MSG_OVFL 1 /* an overflow happened */

Definition at line 213 of file perfmon.h.

#define PFM_NO_TARGET -1 /* no target, detach */

Definition at line 149 of file perfmon.h.

#define PFM_PMC_BV PFM_BVSIZE(PFM_MAX_PMCS)

Definition at line 58 of file perfmon.h.

#define PFM_PMD_BV PFM_BVSIZE(PFM_MAX_PMDS)

Definition at line 57 of file perfmon.h.

#define PFM_REGFL_NO_EMUL64 0x4 /* PMC: no 64-bit emulation */

Definition at line 115 of file perfmon.h.

#define PFM_REGFL_OVFL_NOTIFY 0x1 /* PMD: send notification on event */

Definition at line 113 of file perfmon.h.

#define PFM_REGFL_RANDOM 0x2 /* PMD: randomize value after event */

Definition at line 114 of file perfmon.h.

#define PFM_RW_PMC 2 /* PMC registers (pfarg_pmr_t) */

Definition at line 143 of file perfmon.h.

#define PFM_RW_PMD 1 /* simplified PMD (pfarg_pmr_t) */

Definition at line 142 of file perfmon.h.

#define PFM_RW_PMD_ATTR 3 /* extended PMD (pfarg_pmd_attr) */

Definition at line 144 of file perfmon.h.

#define PFM_SETFL_OVFL_SWITCH 0x01 /* enable switch on overflow (subject to individual switch_cnt */

Definition at line 183 of file perfmon.h.

#define PFM_SETFL_TIME_SWITCH 0x02 /* switch set on timeout */

Definition at line 184 of file perfmon.h.

#define PFM_ST_RESTART 0x3 /* resume after notify */

Definition at line 157 of file perfmon.h.

#define PFM_ST_START 0x1 /* start monitoring */

Definition at line 155 of file perfmon.h.

#define PFM_ST_STOP 0x2 /* stop monitoring */

Definition at line 156 of file perfmon.h.

#define PFM_VERSION_MAJOR | ( |  | x | ) | (((x)>>16) & 0xffff)

Definition at line 216 of file perfmon.h.

#define PFM_VERSION_MINOR | ( |  | x | ) | ((x) & 0xffff)

Definition at line 217 of file perfmon.h.

## Typedef Documentation

typedef int os_err_t

Definition at line 69 of file perfmon.h.

## Function Documentation

os_err_t pfm_attach | ( | int | fd,
|  | int | flags,
|  | int | target
| ) |  |

os_err_t pfm_create | ( | int | flags,
|  | pfarg_sinfo_t * | sif,
|  |  | ...
| ) |  |

os_err_t pfm_create_sets | ( | int | fd,
|  | int | flags,
|  | pfarg_set_desc_t * | s,
|  | size_t | sz
| ) |  |

os_err_t pfm_getinfo_sets | ( | int | fd,
|  | int | flags,
|  | pfarg_set_info_t * | s,
|  | size_t | sz
| ) |  |

os_err_t pfm_read | ( | int | fd,
|  | int | flags,
|  | int | type,
|  | void * | reg,
|  | size_t | n
| ) |  |

os_err_t pfm_set_state | ( | int | fd,
|  | int | flags,
|  | int | state
| ) |  |

os_err_t pfm_write | ( | int | fd,
|  | int | flags,
|  | int | type,
|  | void * | reg,
|  | size_t | n
| ) |  |