LinuxCommandLibrary
GitHubF-DroidGoogle Play Store

btt

Analyze block layer I/O trace data

TLDR

Analyze block trace data
$ btt -i [sda.blktrace.0]
copy
Analyze with specific output prefix
$ btt -i [device.blktrace.0] -o [analysis]
copy
Generate Q2C latency data
$ btt -i [trace.blktrace.0] -q [q2c_output]
copy
Generate D2C latency data
$ btt -i [trace.blktrace.0] -d [d2c_output]
copy
Analyze merged trace files
$ blkparse -i [sda] -d [merged.bin] && btt -i [merged.bin]
copy
Verbose analysis
$ btt -i [trace.blktrace.0] -v
copy

SYNOPSIS

btt [options] -i tracefile_

DESCRIPTION

btt (Block Trace Timeline) analyzes block layer trace data generated by blktrace. It produces statistical reports showing I/O latency distributions, throughput, and timing breakdowns across the block I/O stack.The analysis breaks down request processing into stages: Q (queued), G (get request), I (inserted), M (merged), D (dispatched), C (completed). btt reports latencies between these stages to identify bottlenecks.Output includes overall statistics, per-device breakdowns, and optional detailed timing files for each stage transition. This data is valuable for understanding storage performance characteristics and diagnosing latency issues.

PARAMETERS

-i file

Input trace file (from blkparse -d).
-o prefix
Output file prefix.
-q file
Write Q2C latency data.
-d file
Write D2C latency data.
-l file
Write per-IO latency data.
-m file
Write D2D seek distance data.
-B file
Write block number data.
-v
Verbose output.
-V
Version information.
-a
Include all accounting.
-M
Only display device mapping info.

INSTALL

sudo apt install blktrace
copy
sudo dnf install blktrace
copy
sudo zypper install blktrace
copy
nix profile install nixpkgs#blktrace
copy

CAVEATS

Requires binary trace data from blkparse -d, not raw blktrace files. Large traces produce large analysis output. Timestamps must be synchronized for meaningful analysis. Output files can be plotted with gnuplot for visualization.

HISTORY

btt was developed alongside blktrace by Alan D. Brunelle as part of the Linux block layer tracing infrastructure, included in the blktrace package since its introduction in Linux kernel 2.6.17 (2006). It provides the analytical companion to blktrace's data collection capabilities, enabling detailed performance analysis of the block I/O subsystem.

SEE ALSO

blktrace(8), blkparse(1), iostat(1)

Braincup
Open source brain training for math, memory and focus
Braincup mini-games
41 mini-games · Apache-2.0
No ads · No tracking
Play in browser
Download Braincup on the App StoreGet Braincup on Google PlayGet Braincup on F-Droid
276 stars
From the maker of Linux Command Library
Copied to clipboard
Braincup
Open source brain training for math, memory and focus. 41 mini-games, from mental arithmetic to Sudoku, N-Back and Solo Chess.
Apache-2.0 licensed · No ads · No tracking · No account
From the maker of Linux Command Library
Download Braincup on the App StoreGet Braincup on Google PlayGet Braincup on F-Droid