smonitor(3C)smonitor(3C)NAMEsmonitor() - prepare execution profile
SYNOPSISDESCRIPTION
is an interface to sprofil(2) for collecting sampling information for
execution profiles.
To use link in the library by specifying on the linker command line or
on the compiler command line. See gprof(1).
For any application compiled with the option, the library collects pro‐
filing sampling information. But if an application requires finer con‐
trol over profiling, the library yields control to an application that
uses
To stop the collection of sampling information, use:
Use gprof(1) to examine the results.
Parameters
is an array of structures describing the regions to be profiled. It is
defined in header The structure has the following fields:
The fields are as follows:
is the start address of the text segment of the load module.
is the end address of the text segment of the load module.
is the name of the load module (not the path name). The name of
the load module should be the same as recorded in the executable
by
is the number of elements in the array regions.
is the starting address a buffer to collect sampling information.
is the length of is the only memory region used by to collect profiling
information, so it should be big enough for all specified regions.
does not initialize With more than one call to in the same process,
dumps the sampling information collected with the last call. does not
discard the information collected in previous calls if it is present in
the buffer passed to last call of
is unused and kept for future usage.
is used to choose 16-bit or 32-bit buckets to collect sampling informa‐
tion. If is set to treats the buffer as an array of 16-bit buckets; if
set to treats the buffer as an array of 32-bit buckets. For more
information refer to sprofil(2).
EXTERNAL INFLUENCES
Environment Variables
The behavior of is controlled by the environment variable. See
gprof(1). behaves with different settings of as follows:
does not set up the buffers to collect sampling information.
It is expected that will be called explicitly to collect the
sampling information. So it is the ideal case to call the
explicitly.
sets up the sampling buffer for all the load modules and starts
to collect the sampling information. Now if is invoked explic‐
itly, is stopped, the buffer allocated by is deallocated, and
all the sampling information collected prior to calling is lost.
uses the buffer passed as an argument and starts again.
sets up the sampling buffer for the load modules
ldm1 and ldm2 and starts to collect the sampling information.
Now if is invoked explicitly, is stopped, the buffer allocated
by is deallocated, and all the sampling information collected
prior to calling is lost. uses the buffer passed as an argument
and starts again.
If is not set, behaves as though
FILESSEE ALSOcc(1), gprof(1), sprofil(2).
smonitor(3C)