Annotation of researchv10dc/man/adm/man3/monitor.3, revision 1.1.1.1

1.1       root        1: .TH MONITOR 3
                      2: .CT 2 debug_tune
                      3: .SH NAME
                      4: monitor \(mi prepare execution profile
                      5: .SH SYNOPSIS
                      6: .nf
                      7: .B monitor(lowpc, highpc, buffer, bufsize, nfunc)
                      8: .B int (*lowpc)(), (*highpc)();
                      9: .B short buffer[];
                     10: .fi
                     11: .SH DESCRIPTION
                     12: An executable program created by
                     13: .L
                     14: cc -p
                     15: automatically includes calls for
                     16: .I monitor
                     17: with default parameters;
                     18: .I monitor
                     19: needn't be called explicitly
                     20: except to gain fine control over profiling.
                     21: .PP
                     22: .I Monitor
                     23: is an interface to
                     24: .IR profil (2).
                     25: .I Lowpc
                     26: and
                     27: .I highpc
                     28: are the addresses of two functions;
                     29: .I buffer
                     30: is the address of a (user supplied)
                     31: array of
                     32: .I bufsize
                     33: bytes.
                     34: .I Monitor
                     35: arranges to record a histogram of
                     36: periodically sampled values of the program counter,
                     37: and of counts of calls
                     38: of certain functions, in the buffer.
                     39: The lowest address sampled
                     40: is that of
                     41: .I lowpc
                     42: and the highest is
                     43: just below
                     44: .IR highpc .
                     45: At most
                     46: .I nfunc
                     47: call counts can be kept; only calls of functions
                     48: compiled with the profiling option
                     49: .B -p
                     50: of
                     51: .IR cc (1)
                     52: are recorded.
                     53: For the results to be significant,
                     54: especially where there are small, heavily
                     55: used routines,
                     56: it is suggested that the buffer be no more
                     57: than a few times smaller than the range
                     58: of locations sampled.
                     59: The default values for
                     60: .I bufsize
                     61: and
                     62: .I nfunc
                     63: are
                     64: (\f2highpc\fP\-\f2lowpc\fP)/8
                     65: and 300 respectively.
                     66: .PP
                     67: To profile the entire program, use
                     68: .PP
                     69: .nf
                     70: .ft L
                     71:        extern etext();
                     72:        . . .
                     73:        monitor((int (*)())2, etext, buf, bufsize, nfunc);
                     74: .ft P
                     75: .fi
                     76: .PP
                     77: .I Etext
                     78: lies just above all the
                     79: program text, see
                     80: .IR end (3).
                     81: For the highest resolution profiling on the VAX, use
                     82: .B
                     83: bufsize = ((int)highpc)-((int)lowpc)+12+8*nfunc\fR.
                     84: .PP
                     85: To stop execution monitoring and write the results
                     86: on the file
                     87: .I mon.out,
                     88: use
                     89: .PP
                     90: .L
                     91:        monitor((int (*)())0);
                     92: .LP
                     93: then
                     94: .IR prof (1)
                     95: can be used
                     96: to examine the results.
                     97: .SH FILES
                     98: .TP
                     99: .F mon.out
                    100: .SH "SEE ALSO"
                    101: .IR prof (1), 
                    102: .IR profil (2), 
                    103: .IR cc (1)

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.