BLKREPLAY(1) | BLKREPLAY(1) |
NAME¶
blkreplay - block device testing and benchmarking tool
SYNOPSIS¶
blkreplay [options] device
DESCRIPTION¶
blkreplay is a utility driving the block layer of the operating system while measuring latency and throughput of I/O operations for later visualisation.
blkreplay can create artificial loads (random read-write sweeps, various kinds of overload tests) or replay natural loads which have been recorded by blktrace or a similar utility run at production servers.
blkreplay can be used to test physical hardware, to compare different brands of hard disks or RAID controllers, to evaluate the effect of SSD caching, to compare different block level transports like iSCSI vs Fibrechannel and so on.
blkreplay parses the load data from stdin. To create load data from blktrace output, use conv_blktrace_to_load.sh script.
OPTIONS¶
- --replay-start=val
- start offset (in seconds, 0=from_start)
- --replay-end=val
- end offset (in seconds, 0=unlimited)
- --replay-duration=val
- alternatively specify the end offset as delta
- --replay-out=val
- start offset, used for output (in seconds)
- --start-grace=val
- start after grace period for filling the pipes (in seconds)
- --with-conflicts
- conflicting writes are ALLOWED (damaged I/O)
- --with-drop
- conflicting writes are simply dropped
- --with-partial
- partial ordering by pushing back conflicts (default)
- --with-ordering
- enforce total order in case of conflicts
- --strong=val
- mode between 0 and 2, see docs (default=1)
- --threads=val
- parallelism (default=1024)
- --fill-random=val
- fill data blocks with random bytes (%, default=0)
- --no-overhead
- verify is OFF (default)
- --with-verify
- verify on reads
- --with-final-verify
- additional verify pass at the end
- --with-paranoia
- re-read after each write (destroys performance)
- --verbose=val
- increase verbosity, show additional INFO: output
- --o-direct
- use O_DIRECT (default)
- --no-o-direct
- don't use O_DIRECT, deliver FAKE results
- --o-sync
- use O_SYNC
- --no-o-sync
- don't use O_SYNC (default)
- --dry-run
- don't actually do I/O, measure internal overhead
- --fake-io
- omit lseek() and tags, even less internal overhead
- --simulate-io=val
- delay value for I/O simulation (timespec sec.nsec)
- --ahead-limit=val
- limit pipe fillahead (realtime sec.nsec)
- --fan-out=val
- only for kernel hackers (default=4)
- --no-dispatcher
- only for kernel hackers
- --bottleneck=val
- max #requests on dispatch
- --speedup=val
- speedup / slowdown by REAL factor (default=1.0)
- --mmap-mode
- use mmap() instead of read() / write() [NYI]
AUTHORS¶
blkreplay was written by Thomas Schoebel-Theuer. This manual page was created from blkreplay documentation by Andrew Shadura.
COPYRIGHT¶
Copyright 2009-2012 Thomas Schoebel-Theuer
SEE ALSO¶
2021-01-06 |