Benchmarking: MDTEST

From Define Wiki
Revision as of 12:17, 6 August 2013 by Roshan (talk | contribs) (→‎Build)
Jump to navigation Jump to search

Description

mdtest is a program that measures performance of various metadata operations. It uses MPI to coordinate the operations and to collect the results. The code is composed of one C file, mdtest.c.

Download

wget http://downloads.sourceforge.net/project/mdtest/mdtest%20latest/mdtest-1.9.1/mdtest-1.9.1.tgz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fmdtest%2F&ts=1375772530&use_mirror=jaist

Build

Extract mdtest-1.9.1.tgz and change into mdtest-1.9.1
Modify Makefile and update CC to preferred MPI.

[root@blade1 mdtest-1.9.1]# make
mpicc -DLinux -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE=1 -D__USE_LARGEFILE64=1  -g -o mdtest mdtest.c -lm

Usage

Usage:  mdtest [-b #] [-B] [-c] [-C] [-d testdir] [-D] [-e] [-E] [-f first] [-F]
               [-h] [-i iterations] [-I #] [-l last] [-L] [-n #] [-N #] [-p seconds]
               [-r] [-R[#]] [-s #] [-S] [-t] [-T] [-u] [-v] [-V #] [-w #] [-y]
               [-z #]

    -b: branching factor of hierarchical directory structure
    -B: no barriers between phases (create/stat/remove)
    -c: collective creates: task 0 does all creates and deletes
    -C: only create files/dirs
    -d: the directory in which the tests will run
    -D: perform test on directories only (no files)
    -e: number of bytes to read from each file
    -E: only read files
    -f: first number of tasks on which the test will run
    -F: perform test on files only (no directories)
    -h: prints help message
    -i: number of iterations the test will run
    -I: number of items per tree node
    -l: last number of tasks on which the test will run
    -L: files/dirs created only at leaf level
    -n: every task will create/stat/remove # files/dirs per tree
    -N: stride # between neighbor tasks for file/dir stat (local=0)
    -p: pre-iteration delay (in seconds)
    -r: only remove files/dirs
    -R: randomly stat files/dirs (optional seed can be provided)
    -s: stride between the number of tasks for each test
    -S: shared file access (file only, no directories)
    -t: time unique working directory overhead
    -T: only stat files/dirs
    -u: unique working directory for each task
    -v: verbosity (each instance of option increments by one)
    -V: verbosity value
    -w: number of bytes to write to each file
    -y: sync file after write completion
    -z: depth of hierarchical directory structure