kprof man page on Inferno

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

KPROF(3)							      KPROF(3)

NAME
       kprof - kernel profiling

SYNOPSIS
       bind -a #T /dev

       /dev/kpctl
       /dev/kpdata

DESCRIPTION
       The  kprof device provides simple profiling data for the operating sys‐
       tem kernel.   The data accumulates by recording the program counter  of
       the  kernel at each `tick' of a profiling clock. Often this is just the
       system clock, but may be an independent	higher	priority  timer	 which
       allows profiling of interrupt handlers, dependent on implementation.

       The  file kpdata holds the accumulated counts in big-endian byte order.
       The size of the file depends on the size of kernel text, and  the  size
       of  the	individual  counts.  The first six counts are 4 bytes in size,
       and are special. The first holds the total number of ticks, the	second
       the  number  of ticks which fell outside the kernel text, the third the
       number of microseconds per tick, the fourth the number of sample	 buck‐
       ets,  the  fifth the size in bytes of each sample bucket, and sixth the
       log base 2 of the sample bucket size. Typically the sample size	is  4,
       and the log base 2 of the bucket size 3 (8 bytes). The remainder of the
       file holds the sample buckets. The entire file has size	sample	bucket
       size  times  number  of	sample buckets.	 That is, the first six sample
       buckets are replaced with the special numbers.

       The file kpctl controls profiling.  Writing the string start  to	 kpctl
       begins  profiling;  stop	 terminates it.	 The message startclr restarts
       profiling after zeroing the array of counts.

       Kprof(10.1) formats the data for presentation.

EXAMPLE
       The following sh(1) commands define and invoke a function  sample  that
       runs a given test program with kernel profiling enabled, and copies the
       result to a server presumed to be mounted on /n/remote.

       fn sample {
	    echo start >/dev/kpctl
	    $1
	    echo stop >/dev/kpctl
	    cp /dev/kpdata /n/remote/tmp/kpdata
       }
       bind -a '#T' /dev
       sample {cp sound /dev/audio}

       On the server, the kprof(10.1) command is used to analyse the data:
	    kprof /usr/inferno/os/mpc/impc /tmp/kpdata

SOURCE
       /os/port/devkprof.c

SEE ALSO
       kprof(10.1)

BUGS
       It cannot provide times	for  each  node	 in  the  dynamic  call	 graph
       (dynamic profiling).

								      KPROF(3)
[top]

List of man pages available for Inferno

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