.TH BTT 1 "September 29, 2007" "blktrace git\-20070910192508" ""


.SH NAME
btt \- analyse block i/o traces produces by blktrace


.SH SYNOPSIS
.B btt 
.br
[ \-a               | \-\-seek\-absolute ]
.br
[ \-A               | \-\-all\-data ]
.br
[ \-B <\fIoutput name\fR> | \-\-dump\-blocknos=<\fIoutput name\fR> ]
.br
[ \-d <\fIseconds\fR>     | \-\-range\-delta=<\fIseconds\fR> ]
.br
[ \-D <\fIdev;...\fR>     | \-\-devices=<\fIdev;...\fR> ]
.br
[ \-e <\fIexe,...\fR>     | \-\-exes=<\fIexe,...\fR>  ]
.br
[ \-h               | \-\-help ]
.br
[ \-i <\fIinput name\fR>  | \-\-input\-file=<\fIinput name\fR> ]
.br
[ \-I <\fIoutput name\fR> | \-\-iostat=<\fIoutput name\fR> ]
.br
[ \-l <\fIoutput name\fR> | \-\-d2c\-latencies=<\fIoutput name\fR> ]
.br
[ \-L <\fIfreq\fR>        | \-\-periodic\-latencies=<\fIfreq\fR> ]
.br
[ \-m <\fIoutput name\fR> | \-\-seeks\-per\-second=<\fIoutput name\fR> ]
.br
[ \-M <\fIdev map\fR>     | \-\-dev\-maps=<\fIdev map\fR>
.br
[ \-o <\fIoutput name\fR> | \-\-output\-file=<\fIoutput name\fR> ]
.br
[ \-p <\fIoutput name\fR> | \-\-per\-io\-dump=<\fIoutput name\fR> ]
.br
[ \-P <\fIoutput name\fR> | \-\-per\-io\-trees=<\fIoutput name\fR> ]
.br
[ \-q <\fIoutput name\fR> | \-\-q2c\-latencies=<\fIoutput name\fR> ]
.br
[ \-Q <\fIoutput name\fR> | \-\-active\-queue\-depth=<\fIoutput name\fR> ]
.br
[ \-r               | \-\-no\-remaps ]
.br
[ \-s <\fIoutput name\fR> | \-\-seeks=<\fIoutput name\fR> ]
.br
[ \-S <\fIinterval\fR>    | \-\-iostat\-interval=<\fIinterval\fR> ]
.br
[ \-t <\fIsec\fR>         | \-\-time\-start=<\fIsec\fR> ]
.br
[ \-T <\fIsec\fR>         | \-\-time\-end=<\fIsec\fR> ]
.br
[ \-u <\fIoutput name\fR> | \-\-unplug\-hist=<\fIoutput name\fR> ]
.br
[ \-v               | \-\-verbose ]
.br
[ \-V               | \-\-version ]
.br
[ \-X               | \-\-easy\-parse\-avgs ]
.br
[ \-z <\fIoutput name\fR> | \-\-q2d\-latencies=<\fIoutput name\fR> ]
.br
[ \-Z               | \-\-do\-active ]


.SH DESCRIPTION

btt is a post\-processing tool for the block layer IO tracing tool called
blktrace(8).  As noted in its documentation, blktrace 
is a block layer IO tracing mechanism which provides detailed
information about request queue operations up to user space.

btt will take in binary dump data from blkparse, and analyse the events,
producing a series of output from the analysis. It will also build .dat
files containing "range data" \-\- showing things like Q activity (periods
of time while Q events are being produced), C activity (likewise for
command completions), and etc.

Included with the distribution is a simple 3D plotting utility,
\fIbno_plot\fR, which can plot the block numbers btt outputs if the \fI-B\fR
option is specified. The display will display each IO generated, with the time
(seconds) along the X-axis, the block number (start) along the Y-axis and the
number of blocks transferred in the IO represented along the Z-axis.


.SH OPTIONS

.B \-a
.br
.B \-\-seek\-absolute
.RS 4
When specified on the command line, this directs btt to calculate
seek distances based solely upon the ending block address of one IO,
and the start of the next.  By default \fBbtt\fR uses the concept
of the closeness to either the beginning or end of the previous IO. See
the Users Manual for more details about seek distances.
.RE

.B \-A
.br
.B \-\-all\-data
.RS 4
Normally \fBbtt\fR will not print out verbose information concerning
per-process and per-device data.  If you desire that level of detail you can
specify this option.
.RE

.B \-B <\fIoutput name\fR>
.br
.B \-\-dump\-blocknos=<\fIoutput name\fR>
.RS 4
This option will output absolute block numbers to three files prefixed
by the specified output name:
.HP
.I prefix_device_r.dat
.br
All read block numbers are output, first column is time (seconds), second is
the block number, and the third column is the ending block number.
.HP
.I prefix_device_w.dat
.br
All write block numbers are output, first column is time (seconds), second is
the block number, and the third column is the ending block number.
.HP
.I prefix_device_c.dat
.br
All block numbers (read and write) are output, first column is time (seconds),
second is the block number, and the third column is the ending block number.
.RE

.B \-d <\fIseconds\fR>
.br
.B \-\-range\-delta=<\fIseconds\fR>
.RS 4
\fBbtt\fR outputs a file containing Q and C activity, the notion of active
traces simply means that there are Q or C traces occurring within a certain
period of each other. The default values is 0.1 seconds; with this option
allowing one to change that granularity. The smaller the value, the more data
points provided.
.RE

.B \-D <\fIdev;...\fR>
.br
.B \-\-devices=<\fIdev;...\fR>
.RS 4
Normally, \fBbtt\fR will produce data for all devices detected in the
traces parsed. With this option, one can reduce the analysis to one or more
devices provided in the string passed to this option. The device identifiers
are the major and minor number of each device, and each device identifier is
separated by a colon (:). A valid specifier for devices 8,0 and 8,8 would then
be: \fI8,0:8,8\fR.
.RE

.B \-e <\fIexe,...\fR>
.br
.B \-\-exes=<\fIexe,...\fR>
.RS 4
The \-e option supplies the list of executables that will have I/Os
analysed.
.RE

.B \-h
.br
.B \-\-help
.RS 4
Shows a short summary of possible command line option
.RE

.B \-i <\fIinput name\fR>
.br
.B \-\-input\-file <\fIinput file\fR>
.RS 4
Specifies the input file to analyse.  This should be a trace file produced
by \fIblktrace\fR (8).
.RE

.B \-I <\fIoutput name\fR>
.br
.B \-\-iostat=<\fIoutput name\fR>
.RS 4
The \-I option directs btt to output iostat\-like data to the specified
file.  Refer to the iostat (sysstat) documentation for details on the
data columns. 
.RE

.B \-l <\fIoutput name\fR>
.br
.B \-\-d2c\-latencies=<\fIoutput name\fR>
.RS 4
The \-l option allows one to output per\-IO D2C latencies
respectively. The supplied argument provides the basis for the output
name for each device.
.RE

.B \-L <\fIfreq\fR>
.br
.B \-\-periodic\-latencies=<\fIfreq\fR>
.RS 4
The \-L option allows one to output periodic latency information for both
Q2C and D2C latencies. The frequency specified will regulate how often
an average latency is output -- a floating point value expressing seconds.
.RE

.B \-m <\fIoutput name\fR>
.br
.B \-\-seeks\-per\-second=<\fIoutput name\fR>
.RS 4
Trigger btt to output seeks-per-second information. The first column will
contain a time value (seconds), and the second column  will indicate the
number of seeks per second at that point.
.RE

.B \-M <\fIdev map\fR>
.br
.B \-\-dev\-maps=<\fIdev map\fR>
.RS 4
The \-M option takes in a file generated by the provided script
(gen_disk_info.py), and allows for better output of device names.
.RE

.B \-o <\fIoutput name\fR>
.br
.B \-\-output\-file=<\fIoutput name\fR>
.RS 4
Specifies the output file name.
.RE

.B \-p <\fIoutput name\fR>
.br
.B \-\-per\-io\-dump=<\fIoutput name\fR>
.RS 4
The \-p option will generate a file that contains a list of all IO
"sequences" \- showing the parts of each IO (Q, A, I/M, D, & C).
.RE

.B \-P <\fIoutput name\fR>
.br
.B \-\-per\-io\-trees=<\fIoutput name\fR>
.RS 4
The \-P option will generate a file that contains a list of all IO
"sequences" \- showing only the Q, D & C operation times. The D & C
time values are separated from the Q time values with a vertical bar.
.RE

.B \-q <\fIoutput name\fR>
.br
.B \-\-q2c\-latencies=<\fIoutput name\fR>
.RS 4
The \-q option allows one to output per\-IO Q2C latencies
respectively. The supplied argument provides the basis for the output
name for each device.
.RE

.B \-Q <\fIoutput name\fR>
.br
.B \-\-active\-queue\-depth=<\fIoutput name\fR>
.RS 4
The \-Q option allows one to output data files showing the time stamp
and the depth of active commands (those issued but not completed).
.RE

.B \-r
.br
.B \-\-no\-remaps
.RS 4
Ignore remap traces; older kernels did not implement the full remap
PDU.
.RE

.B \-s <\fIoutput name\fR>
.br
.B \-\-seeks=<\fIoutput name\fR>
.RS 4
The \-s option instructs btt to output seek data, the argument provided
is the basis for file names output. There are two files per device,
read seeks and write seeks.
.RE

.B \-S <\fIinterval\fR>
.br
.B \-\-iostat\-interval=<\fIinterval\fR>
.RS 4
The \-S option specifies the interval to use between data
output, it defaults to once per second.
.RE

.B \-t <\fIsec\fR>
.br
.B \-\-time\-start=<\fIsec\fR>
.br
.B \-T <\fIsec\fR>
.br
.B \-\-time\-end=<\fIsec\fR>
.RS 4
The \-t/\-T options allow one to set a start and/or end time for analysing
\- analysing will only be done for traces after \-t's argument and before
\-T's argument. (\-t and \-T are optional, so if you specify just \-t,
analysis will occur for all traces after the time specified. Similarly,
if only \-T is specified, analysis stops after \-T's seconds.)
.RE

.B \-u <\fIoutput name\fR>
.br
.B \-\-unplug\-hist=<\fIoutput name\fR>
.RS 4
This option instructs \fBbtt\fR to generate a data file containing histogram
information for unplug traces on a per device basis. It shows how many
times an unplug was hit with a specified number of IOs released. There are 21
output values into the file, as follows:

.RS 4
a value of 0 represents 0..4 counts
.br
a value of 1 represents 5..9 counts
.br
a value of 2 represents 10..14 counts
.br
etc, until
.br
a value of 20 represents 100+ counts
.br
.RE

The file name(s) generated use the text string passed as an argument for
the prefix, followed by the device identifier in \fImajor,minor\fR
form, with a \fI.dat\fR extension.  For example, with \fI\-u
up_hist\fR specified on the command line: \fIup_hist_008,032.dat\fR.
.RE

.B \-V
.br
.B \-\-version
.RS 4
Shows the version of btt.
.RE

.B \-v
.br
.B \-\-verbose
.RS 4
Requests a more verbose output.
.RE

.B \-X
.br
.B \-\-easy\-parse\-avgs
.RS 4
Provide data in an easy-to-parse form and write it to a file
with .avg exentsion
.RE

.B \-z <\fIoutput name\fR>
.br
.B \-\-q2d\-latencies=<\fIoutput name\fR>
.RS 4
The \-z option allows one to output per\-IO Q2D latencies
respectively. The supplied argument provides the basis for the output
name for each device.
.RE

.B \-Z
.br
.B \-\-do\-active
.RS 4
The \-Z will output files containing data which can be plotted showing
per\-device (and total system) I/O activity.
.RE


.SH AUTHORS
\fIbtt\fR was written by Alan D. Brunelle.  This man page was created
from the \fIblktrace\fR documentation by Bas Zoetekouw.


.SH "REPORTING BUGS"
Report bugs to <linux\-btrace@vger.kernel.org>

.SH COPYRIGHT
Copyright \(co 2006 Jens Axboe, Alan D. Brunelle and Nathan Scott.
.br
This is free software.  You may redistribute copies of it under the terms of
the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.
There is NO WARRANTY, to the extent permitted by law.
.br
This manual page was created for Debian by Bas Zoetekouw.  It was derived from
the documentation provided by the authors and it may be used, distributed and
modified under the terms of the GNU General Public License, version 2.
.br
On Debian systems, the text of the GNU General Public License can be found in
/usr/share/common\-licenses/GPL\-2.

.SH "SEE ALSO"
The btt Users Guide, which can be found in /usr/share/doc/blktrace/btt.pdf
.br
bno_plot (1), blktrace (8), blkparse (1), verify_blkparse (1), blkrawverify (1), btt (1)

