Whamcloud - gitweb
b=11564
[fs/lustre-release.git] / lustre / tests / lstiming.sh
1 #!/bin/bash
2
3 set -e
4
5 PATH=$PATH:.
6
7 CHECKSTAT=${CHECKSTAT:-"checkstat -v"}
8 MOUNT1=${MOUNT1:-/mnt/lustre1}
9 MOUNT2=${MOUNT2:-/mnt/lustre2}
10 DIRNAME=${DIRNAME:-"ls-timing"}
11 DIRSIZE=${DIRSIZE:-200}
12 export NAME=${NAME:-mount2}
13
14 error () { 
15     echo FAIL
16     exit 1
17 }
18
19 pass() { 
20     echo PASS
21 }
22 echo "Mounting..."
23 mount | grep $MOUNT1 || sh llmount.sh
24
25 echo -n "Preparing test directory with $DIRSIZE files..."
26 rm -rf "$MOUNT1/$DIRNAME"
27 rm -rf "$MOUNT2/$DIRNAME"
28 mkdir -p "$MOUNT1/$DIRNAME"
29 [ -d "$MOUNT2/$DIRNAME" ] || error
30 createmany -o $MOUNT1/$DIRNAME/file 0 $DIRSIZE &> /dev/null
31 echo "done"
32
33 echo -n "Cached ls: "
34 time ls -lr $MOUNT1/$DIRNAME 1> /dev/null
35
36 echo -n "Uncached ls: "
37 time ls -lr $MOUNT2/$DIRNAME 1> /dev/null
38
39
40 fsx $MOUNT1/$DIRNAME/fsx.file &>/dev/null &
41 fsxpid=$!
42
43 echo -n "Cached busy ls:"
44 time ls -lr $MOUNT1/$DIRNAME 1> /dev/null
45
46 echo -n "Uncached busy ls: "
47 time ls -lr $MOUNT2/$DIRNAME 1> /dev/null
48
49 kill $fsxpid
50
51 exit