Whamcloud - gitweb
New tag 2.14.52
[fs/lustre-release.git] / lustre / tests / performance-sanity.sh
1 #!/bin/bash
2 set -e
3
4 TESTNAME=$(basename $0 .sh)
5 LOG=${LOG:-"$TMP/${TESTNAME}.log"}
6
7 LUSTRE=${LUSTRE:-$(dirname $0)/..}
8 . $LUSTRE/tests/test-framework.sh
9 init_test_env $@
10 init_logging
11
12 ALWAYS_EXCEPT="$PERFORMANCE_SANITY_EXCEPT "
13 build_test_filter
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 get_mpiuser_id $MPI_USER
20 MPI_RUNAS=${MPI_RUNAS:-"runas -u $MPI_USER_UID -g $MPI_USER_GID"}
21 $GSS_KRB5 && refresh_krb5_tgt $MPI_USER_UID $MPI_USER_GID $MPI_RUNAS
22
23 # mdsrate-create-small
24 test_3() {
25     echo "File creation performance tests for file objects"
26     bash mdsrate-create-small.sh
27 }
28 run_test 3 "small file create/open/delete ======"
29
30 # mdsrate-create-large
31 test_4() {
32         # LU-2600/LU-4108 - Decrease load on zfs
33         [ "$SLOW" = no -a "$mds1_FSTYPE" = zfs ] &&
34                 NUM_FILES=10000
35         echo "Large file creation performance"
36         bash mdsrate-create-large.sh
37 }
38 run_test 4 "large file create/open/delete"
39
40 # mdsrate-lookup-1dir
41 test_5() {
42     echo "Single directory lookup retrieval rate"
43     bash mdsrate-lookup-1dir.sh
44 }
45 run_test 5 "lookup rate 10M file dir ======"
46
47 # mdsrate-lookup-10dir
48 test_6() {
49     echo "Directory lookup retrieval rate 10 directories, 1 million files each"
50     bash mdsrate-lookup-10dirs.sh
51 }
52 run_test 6 "lookup rate 10M file 10 dir ======"
53
54 # mdsrate-stat-small
55 test_7() {
56     echo "File attribute retrieval rate for small file creation"
57     bash mdsrate-stat-small.sh
58 }
59 run_test 7 "getattr small file ======"
60
61 # mdsrate-stat-large
62 test_8() {
63     echo "File attribute retrieval rate for large file creation"
64     bash mdsrate-stat-large.sh
65 }
66 run_test 8 "getattr large files ======"
67
68 complete $SECONDS
69 check_and_cleanup_lustre
70 [ -f "$LOG" ] && cat $LOG || true
71 exit_status