Mdtest is a benchmark tool for server Meta data processing capabilities that can be used to simulate open/stat/close operations on files or directories, and then return reports. It supports MPI, which can be used to coordinate a large number of clients to initiate requests to the server.
Download Address: http://sourceforge.net/projects/mdtest/
In the thesis: <metadata performance optimization in distributed File system>, the Cappella test tool is used for the performance analysis of the mass parallel storage system mdtest.
The drawing table is as follows:
usage : mdtest [-B] [-b] [-c] [-c] [D-TestDir] [-d] [-f-i] [-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 parameters for the directory tree;
-B: Different stages without isolation (create/stat/remove);
-C: Create together: Task 0 completes all creation and deletion work;
-C: Only create files or directories, do not delete;
-D: Indicates the directory where the test runs (if not specified, the default current directory);
-D: Only test for directory operations (excluding files);
-F: The task number to run first;
-F: Create only files, no directories;
-H: Output help information;
-I: Test iterative cycle times;
-I: Items contained in each tree node;
-L: The last task number to run;
-L: Create files/directories only on the "leaves" layer of the directory tree;
-N: Each task needs to create/stat/remove the number of files/directories per tree;
-N: span of specified and adjacent tasks over the duration;
-P: Delay (in seconds) between each iteration;
-r: Deleting files/directories
-r: Randomly traverse files/directories;
-S: The span of the number of tasks per test
-S: Shared file access (for file operations only);
-T: Record the time cost of a particular directory
-t:only stat files/dirs;
-U: Specifies a working directory for each task;
-v:verbosity (each instance of option increments by one)
-v:verbosity value
-W: The number of bytes written to each file;
-y: Re-write to sync files to disk after execution;
-Z: Depth of the directory tree;
Precautions:
*-N allows the "Read-your-neighbor" method
*-D can specify multiple test paths, '-D fullpath1@fullpath2@fullpath3 '
*-B allows each task to be timed to itself;
*-N and-i cannot be used at the same time because the number of files/directories per tree node is specified, and-i specifies the number of files/directories for the entire tree.
*-R and-t can be used at the same time. -R only indicates that if the files/directories are traversed, they are traversed randomly.
Application Examples :
In this example, the depth of the directory tree is 1 (z=2,), and the branch of each node is 3 (b=3)
You can use the following command to implement the above example:
Mdtest-z 2-b 3-i 10-c-I 3//
At the end of the test, the following results are similar to the terminal output:
SUMMARY: (of 3 iterations)
Operation Max Min Mean Std Dev
--------- --- --- ---- -------
Directory creation:1870.549 900.197 1328.337 287.486
Directory stat:256277.875 144661.102 225529.410 30421.063
Directory removal:266.235 170.675 218.820 29.863
File creation:888.288 398.944 617.266 152.324
File stat:250191.822 221520.964 231919.579 9853.955
File removal:2080.262 527.109 1177.666 580.771
Tree creation:2624.508 2145.385 2549.133 135.936
Tree removal:29.414 4.421 11.377 9.407