sourCEntral - mobile manpages

pdf

BLKREPLAY

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

Influence replay duration:

−−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)

Handling of conflicting I/O requests:

−−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)

Replay parameters:

−−threads=val

parallelism (default=1024)

−−fill−random=val

fill data blocks with random bytes (%, default=0)

Verification modes:

−−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)

Convenience:

−−verbose=val

increase verbosity, show additional INFO: output

Expert options ( DANGEROUS ):

−−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

blktrace(8)

pdf