best file system performance analysis tool ?
Larry McVoy
lm at bitmover.com
Sun Nov 22 02:40:38 UTC 2009
On Sat, Nov 21, 2009 at 10:20:05PM +0000, Peter Grandi wrote:
> > Hi , Could please redirect me to few of the best file system
> > analysis tool available in open source community. [ ... ]
>
> Most such tools are not very good, and anyhow it seems really
> difficult for most people who do storage performance testing to
> use them properly, as many "benchmarks" I see are mostly
> meaningless.
Yup, I couldn't agree more.
I dunno if this is helpful or not, but I used to do FS performance work
and wrote a little tool called lmdd (I'm lm :). It's a lot like dd
except it spits out perf numbers, does randoms, all sorts of stuff.
At some point in the past most of the disk drive people were using
it for testing.
Part of lmbench, get that, compile it, then find bin/lmdd and play
around. There is a man page in the test suite. Hang on, here ya go.
Read the source, there are a few more interesting options.
LMDD(8) LMBENCH LMDD(8)
NAME
lmdd - move io for performance and debugging tests
SYNOPSIS
lmdd [ option=value ] ...
DESCRIPTION
lmdd copies a specified input file to a specified output with possible
conversions. This program is primarily useful for timing I/O since it
prints out the timing statistics after completing.
OPTIONS
if=name Input file is taken from name; internal is the default.
internal is a special file that acts like Sun's
/dev/zero, i.e., it provides a buffer of zeros without
doing a system call to get them.
The following file names are taken to mean the standard
input: -, 0, or stdin.
of=name Output file is taken from name; internal is the default.
internal is a special file that acts like /dev/null,
without doing a system call to get rid of the data.
The following file names are taken to mean the standard
output: -, 1, or stdout.
The following file names are taken to mean the standard
error: 2, or stderr.
bs=n Input and output block size n bytes (default 8192).
Note that this is different from dd(1), it has a 512
byte default. Also note that the block size can be
followed by 'k' or 'm' to indicate kilo bytes (*1024) or
megabytes (*1024*1024), respectively.
ipat=n If n is non zero, expect a known pattern in the file
(see opat). Mismatches will be displayed as "ERROR:
off=%d want=%x got=%x". The pattern is a sequence of 4
byte integers with the first 0, second 1, and so on.
The default is not to check for the pattern.
opat=n If n is non zero, generate a known pattern on the output
stream. Used for debugging file system correctness.
The default is not to generate the pattern.
mismatch=n If n is non zero, stop at the first mismatched value.
Used with ipat.
skip=n Skip n input blocks before starting copy.
fsync=n If n is non-zero, call fsync(2) on the output file
before exiting or printing timing statistics.
sync=n If n is non-zero, call sync(2) before exiting or print-
ing timing statistics.
rand=n This argument, by default off, turns on random behavior.
The argument is not a flag, it is a size, that size is
used as the upper bound for the seeks. Also note that
the block size can be followed by 'k' or 'm' to indicate
kilo bytes (*1024) or megabytes (*1024*1024),
flush=n If n is non-zero and mmap(2) is available, call msync(2)
to invalidate the output file. This flushes the file to
disk so that you don't have unmount/mount. It is not as
good as mount/unmount because it just flushes file pages
- it misses the indirect blocks which are still cached.
Not supported on all systems, compile time option.
rusage=n If n is non-zero, print rusage statistics as well as
timing statistics. Not supported on all systems, com-
pile time option.
count=n Copy only n input records.
EXAMPLES
This is the most common usage, the intent is to measure disk perfor-
mance. The disk is a spare partition mounted on /spare.
# mount /spare
# lmdd if=internal of=/spare/XXX count=1000 fsync=1
7.81 MB in 3.78 seconds (2.0676 MB/sec)
: Flush cache
# umount /spare
# mount /spare
# lmdd if=/spare/XXX of=internal
7.81 MB in 2.83 seconds (2.7611 MB/sec)
AUTHOR
Larry McVoy, lm at sun.com
(c)1994 Larry McVoy $Date$ LMDD(8)
--
---
Larry McVoy lm at bitmover.com http://www.bitkeeper.com
More information about the Ext3-users
mailing list