Provided by: lmbench-doc_3.0-a9-1.1_all bug

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  printing  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, compile time option.

       count=n        Copy only n input records.

EXAMPLES

       This is the most common usage, the intent is to measure disk performance.  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@sun.com

(c)1994 Larry McVoy                           $Date$                                      LMDD(8)