Whamcloud - gitweb
b=17747
[fs/lustre-release.git] / lustre / tests / performance-sanity.sh
1 #!/bin/bash
2 #set -vx
3 set -e
4
5 TESTNAME=`basename $0 .sh`
6 TMP=${TMP:-/tmp}
7 LOG=${LOG:-"$TMP/${TESTNAME}.log"}
8
9 LUSTRE=${LUSTRE:-`dirname $0`/..}
10 . $LUSTRE/tests/test-framework.sh
11 init_test_env $@
12
13 . ${CONFIG:=$LUSTRE/tests/cfg/$NAME.sh}
14
15 [ -x "$MDSRATE" ] || FAIL_ON_ERROR=true error "No mdsrate program. Aborting."
16 which mpirun > /dev/null 2>&1 || \
17         FAIL_ON_ERROR=true error "No mpirun program. Aborting." 
18
19 # Skip these tests
20 # bug number:  15266 15266 15266
21 ALWAYS_EXCEPT="1     2     6     $PERFORMANCE_SANITY_EXCEPT"
22
23 build_test_filter
24
25 # single-IOR-rates
26 test_1() {
27     echo "Single client I/O performance as a percentage of raw"
28 }
29 run_test 1 "single-client IO perf ====="
30
31 # parallel-IOR-rates 
32 test_2() {
33     echo "MPI coordinated test of parallel filesystem system calls and library functions"
34 }
35 run_test 2 "multi-client IO perf ====="
36
37 # mdsrate-create-small
38 test_3() {
39     echo "File creation performance tests for file objects"
40     bash mdsrate-create-small.sh
41 }
42 run_test 3 "small file create/open/delete ======"
43
44 # mdsrate-create-large
45 test_4() {
46     echo "Large file creation performance"
47     bash mdsrate-create-large.sh
48 }
49 run_test 4 "large file create/open/delete ======"
50
51 # mdsrate-lookup-1dir
52 test_5() {
53     echo "Single directory lookup retrieval rate"
54     bash mdsrate-lookup-1dir.sh
55 }
56 run_test 5 "lookup rate 10M file dir ======"
57
58 # mdsrate-lookup-10dir
59 test_6() {
60     echo "Directory lookup retrieval rate 10 directories, 1 million files each"
61     bash mdsrate-lookup-10dirs.sh
62 }
63 run_test 6 "lookup rate 10M file 10 dir ======"
64
65 # mdsrate-stat-small
66 test_7() {
67     echo "File attribute retrieval rate for small file creation"
68     bash mdsrate-stat-small.sh
69 }
70 run_test 7 "getattr small file ======"
71
72 # mdsrate-stat-large
73 test_8() {
74     echo "File attribute retrieval rate for large file creation"
75     bash mdsrate-stat-large.sh
76 }
77 run_test 8 "getattr large files ======"
78
79 equals_msg `basename $0`: test complete, cleaning up
80 check_and_cleanup_lustre
81 [ -f "$LOG" ] && cat $LOG || true
82 [ -f "$TESTSUITELOG" ] && cat $TESTSUITELOG && grep -q FAIL $TESTSUITELOG && exit 1 || true