Lines Matching +refs:is +refs:completion +refs:line
7 % This program is free software; you can redistribute it and/or modify
12 % This program is distributed in the hope that it will be useful,
32 \texttt{btt} is a post-processing tool for the block layer IO tracing
36 is a block layer IO tracing mechanism which provides detailed
40 blktrace is capable of producing tremendous amounts of output in the
42 run. It is also capable of producing some general statistics concerning
45 provides data we believe is useful to plot to provide visual comparisons
54 command-line usage section occurs relatively late in the document (see
55 section~\ref{sec:cmd-line}), as we felt that discussing some of the
68 The simple pipeline to get going with \texttt{btt} is to perform the
80 errors in the trace streams saved, it is best to recapture the data
84 While this step is optional, we have found that performing this
108 \item[average component times across all IOs] The time line of each IO
109 is broken down into 3 major regions:
113 queue. This is the average time from when the IO enters the block
114 IO layer (queue trace) until it is inserted (insert trace).
116 This is denoted as \emph{Q2I} time.
118 This is also broken down into two component times\footnote{On
131 For \emph{merged} requests -- an incoming request that is merged
136 the IO is inserted or merged onto the request queue, until it is
140 is represented by a D in the blkparse output, hence its usage in
141 btt to refer to issue traces. Note that an I is used to refer to
145 actual IO was issued to the driver until is completed (completion
148 This is referred to as the \emph{D2C} time\
160 work in \texttt{btt} is to better understand the multiplex nature of
214 hardware) is to understand the block IO layer ends up merging incoming
228 we see that (on average) the block IO layer is combining upwards of
230 resultant average IO size is 124 blocks.
234 Another useful measure is the variability in the sector distances
258 number of seeks is indicative as to how many IOs are coming out of
285 The total number of unplugs is equal to the number of plugs less the
321 An important consideration when analyzing block IO schedulers is to
328 Here is a sample output of this sections:
357 of the time line discussed above on page~\pageref{tl-defs}, a chart is
361 to do with the originating IO. For example, if an application is
364 or kjournald for example). Similarly, completion traces are rarely
368 Here is a sample portion of this type of chart, showing Q2Q times
383 will also break down the various parts of an IOs time line based upon a
406 device, and when it is dispatched. The buckets are arranged via the
450 \texttt{-X} option is specified \emph{and} the \texttt{-o} has also
451 been specified, then a subset of the data produced by default is
452 copied to another file that is \emph{more easily parsed.} Refer to
455 \item[iostat] iostat-like data can be distilled by btt, and is
461 details on this file is included in section~\ref{sec:per-io}.
482 ``Grace is a WYSIWYG 2D plotting tool for the X Window System and
483 M*tif.''}, but is easy to parse for other plotting and/or analysis
486 The file is split into pairs of sets of data points, where each pair
487 contains a set of queue activity and a set of completion activity. The
491 (low) and on (high). For example, here is a snippet of a file showing
519 What this indicates is that there was q activity for the system
527 \item First there is the total system activity -- meaning activity
528 in either queue or completion traces across all devices.
536 Using this, one is then able to plot regions of activity versus
547 When the black line (system Q activity) is \emph{high}, then the system
548 is seeing relatively continuous incoming queues. Conversely, when it is
550 were coming in. Similarly for the red line and C activity.
561 representing sizes $\ge 1024$ blocks. (This is done so that one can
564 The first column (X values) is the various IO sizes, and the second
569 Figure~\ref{fig:qhist} is a sample graph generated from data used during
573 the 3 runs -- in particular, one can see that there is only a single
585 Figure~\ref{fig:dhist} is a sample graph generated from data used during
600 \texttt{iostat -x} command in parallel with the system as it is being
603 note that the line has been split to fit on the printed page:
617 line of data.
621 \texttt{btt} can produce a text file containing time line data for each
622 IO processed. The time line data contains rudimentary information for
631 \item completion traces
637 spaces). As an example, here is a snippet of 4 IOs that were merged
639 stream. The issue and completion traces are replicated per IO.
701 The format of the output file names is to have the name generated by
720 The format of the data is to have the runtime values (seconds since
722 sectors from the previous IO in column 2 (Y values). Here is a snippet
750 The seek difference is calculated in one of two ways:
753 \item[default] By default, the seek distance is calculated as the
760 option is specified, then the seek distance is simply the difference
771 When there is only a single data point within a 1-second window,
773 value 1.0 in the second column. If there is no perceived difference
775 value is the number of seeks present at that time.
799 \newpage\section{\label{sec:cmd-line}Command Line}
835 When specified on the command line, this directs btt to calculate
855 output, first column is time (seconds), second is the block number,
856 and the third column is the ending block number.
859 output, first column is time (seconds), second is the block number,
860 and the third column is the ending block number.
863 and write) are output, first column is time (seconds), second is
864 the block number, and the third column is the ending block number.
872 of each other. The default values is 0.1 seconds; with this option
882 each device identifier is separated by a colon (:). A valid specifier
889 you want displayed in the output. The format of the string passed is
896 section~\ref{sec:cmd-line}.
941 this option this data is redirected to the file specified.
964 driver. (The value is incremented when an \emph{issue} is performend,
965 and decremented when a \emph{complete} is performed.
988 \emph{This \texttt{btt} capability is still under construction, results are
1020 up\_hist} specified on the command line: \texttt{up\_hist\_008,032.dat}.
1028 While \texttt{btt} is processing data, it will put out periodic (1-second
1029 granularity) values describing the progress it is making through the
1053 the \texttt{-o} option is selected (thus producing a file with a
1054 \texttt{.avg} exentsion), \emph{and} the \texttt{-X} flag is present,
1057 The format is space-delimited values starting with a 3-character
1059 or the device name when \texttt{-M} is specified), and then a number of
1118 Included with the distribution is a simple 3D plotting utility based
1119 upon the block numbers output when \texttt{-B} is specified (see
1127 mode after the image is produced. In this interactive mode one can enter
1171 Here is a complete output file from a btt run, illustrating a lot of the