perfmonctl man page on CentOS

Man page or keyword search:  
man Server   8420 pages
apropos Keyword Search (all sections)
Output format
CentOS logo
[printable version]

PERFMONCTL(2)		      Linux System Calls		 PERFMONCTL(2)

NAME
       perfmonctl - interface to PMU

SYNOPSIS
       #include <syscall.h>
       #include <perfmon.h>

       long perfmonctl(int fd, int cmd, void *arg, int narg);

DESCRIPTION
       perfmonctl  system call provides an interface to PMU (performance moni‐
       toring unit).  PMU consists of PMD (performance monitoring data) regis‐
       ters  and  PMC  (performance  monitoring	 control) registers, where are
       gathered the hardware statistic.

       perfmonctl will apply a function cmd to input arguments arg.  The  num‐
       ber  of	arguments is defined by input variable narg.  fd specifies the
       perfmon context to operate on.

       The implemented commands cmd are:

       PFM_CREATE_CONTEXT
	      set up a context
	      perfmonctl(int fd, PFM_CREATE_CONTEXT , pfarg_context_t *ctxt, 1);

	      The fd parameter is ignored.  A new context is created as speci‐
	      fied   in	  ctxt	 and   its  file  descriptor  is  returned  in
	      ctxt->ctx_fd.

	      The file descriptor, apart from passing it to perfmonctl, can be
	      used  to	read  event  notifications  (type pfm_msg_t) using the
	      read(2) system call.  Both select(2) and poll(2) can be used  to
	      wait for event notifications.

	      The context can be destroyed using the close(2) system call.

       PFM_WRITE_PMCS
	      set PMC registers
	      perfmonctl(int fd, PFM_WRITE_PMCS , pfarg_pmc_t *pmcs, n);

       PFM_WRITE_PMDS
	      set PMD registers
	      perfmonctl(int fd, PFM_WRITE_PMDS , pfarg_pmd_t *pmds, n);

       PFM_READ_PMDS
	      read PMD registers
	      perfmonctl(int fd, PFM_READ_PMDS , pfarg_pmd_t *pmds, n);

       PFM_START
	      start monitoring
	      perfmonctl(int fd, PFM_START , arg , 1);
	      perfmonctl(int fd, PFM_START , NULL , 0);

       PFM_STOP
	      stop monitoring
	      perfmonctl(int fd, PFM_START , NULL , 0);

       PFM_LOAD_CONTEXT
	      attach the context to a thread
	      perfmonctl(int fd, PFM_LOAD_CONTEXT ,pfarg_load_t *largs,1);

       PFM_UNLOAD_CONTEXT
	      detach the context from a thread
	      perfmonctl(int fd, PFM_UNLOAD_CONTEXT , NULL , 0);

       PFM_RESTART
	      restart monitoring after recieving an overflow notification
	      perfmonctl(int fd, PFM_RESTART , NULL , 0);

       PFM_CREATE_EVTSETS
	      create or modify event sets
	      perfmonctl(int fd, PFM_CREATE_EVTSETS, pfarg_setdesc_t *desc , n);

       PFM_DELETE_EVTSETS
	      delete event sets
	      perfmonctl(int fd, PFM_DELETE_EVTSET, pfarg_setdesc_t *desc , n);

       PFM_GETINFO_EVTSETS
	      get information about event sets
	      perfmonctl(int fd, PFM_GETINFO_EVTSETS, pfarg_setinfo_t *info, n);

RETURN VALUE
       performctl  returns zero when the operation is successful.  On error -1
       is returned and an error code is set in errno.

AVAILABILITY
       This syscall is implemented only on the IA-64 architecture since kernel
       2.6.

SEE ALSO
       gprof(1), The perfmon2 interface specification

Linux				28 August 2006			 PERFMONCTL(2)
[top]

List of man pages available for CentOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net