documentation

package
v0.0.0-...-1d03baa Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 21, 2013 License: BSD-3-Clause Imports: 0 Imported by: 0

Documentation

Overview

Prof is a rudimentary real-time profiler.

Given a command to run or the process id (pid) of a command already running, it samples the program's state at regular intervals and reports on its behavior. With no options, it prints a histogram of the locations in the code that were sampled during execution.

Since it is a real-time profiler, unlike a traditional profiler it samples the program's state even when it is not running, such as when it is asleep or waiting for I/O. Each thread contributes equally to the statistics.

Usage:

go tool prof -p pid [-t total_secs] [-d delta_msec] [6.out args ...]

The output modes (default -h) are:

-P file.prof:
	Write the profile information to file.prof, in the format used by pprof.
	At the moment, this only works on Linux amd64 binaries and requires that the
	binary be written using 6l -e to produce ELF debug info.
	See http://code.google.com/p/google-perftools for details.
-h: histograms
	How many times a sample occurred at each location.
-f: dynamic functions
	At each sample period, print the name of the executing function.
-l: dynamic file and line numbers
	At each sample period, print the file and line number of the executing instruction.
-r: dynamic registers
	At each sample period, print the register contents.
-s: dynamic function stack traces
	At each sample period, print the symbolic stack trace.

Flag -t sets the maximum real time to sample, in seconds, and -d sets the sampling interval in milliseconds. The default is to sample every 100ms until the program completes.

It is installed as go tool prof and is architecture-independent.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL