3 export PATH=/sbin:/usr/sbin:$SRCDIR/../utils:$PATH
7 COUNT_10=`expr $COUNT / 10`
8 COUNT_100=`expr $COUNT / 100`
10 ENDRUN=endrun-`hostname`
12 ECHONAME="`lctl device_list 2> /dev/null | awk '/ echo_client / { print $4 }' | tail -n 1`"
14 if [ -z "$ECHONAME" ]; then
15 echo "$0: needs an ECHO_CLIENT set up first" 1>&2
20 lctl --device \$$ECHONAME destroy $OID
44 lctl --threads $THR v \$$ECHONAME $DO $CNT $RW $V $PGS $OID || exit 1
46 if [ -e $ENDRUN ]; then
48 echo "exiting because $ENDRUN file was found"
53 [ -z "$OID" ] && OID=`lctl --device \\$$ECHONAME create 1 | awk '/is object id/ { print $6 }'` && echo "created object $OID"
54 [ -z "$OID" ] && echo "error creating object" 1>&2 && exit 1
56 # TODO: obdctl needs to check on the progress of each forked thread
57 # (IPC SHM, sockets?) to see if it hangs.
58 for i in `seq $LOOPS`; do
63 # We use '--threads 1 X' instead of '--device X' so that
64 # obdctl can monitor the forked thread for progress (TODO).
67 runthreads 1 test_brw_write 1000 -30 $PG
68 runthreads 1 test_brw_read 1000 -30 $PG
70 [ "$PGVW" ] && runthreads 1 test_brw_write 100 -30 $PGVW
71 [ "$PGVW" ] && runthreads 1 test_brw_read 1600 -30 $PG
72 [ "$PGVR" ] && runthreads 1 test_brw_read 100 -30 $PGVR
74 runthreads 1 test_brw_write $COUNT -30 $PG
75 runthreads 1 test_brw_read $COUNT -30 $PG
77 [ "$PGVW" ] && runthreads 1 test_brw_write $COUNT_10 -30 $PGVW
78 [ "$PGVR" ] && runthreads 1 test_brw_read $COUNT_10 -30 $PGVR
80 runthreads 2 test_brw_write $COUNT -30 $PG
81 runthreads 2 test_brw_read $COUNT -30 $PG
83 [ "$PGVW" ] && runthreads 2 test_brw_write $COUNT_10 -30 $PGVW
84 [ "$PGVR" ] && runthreads 2 test_brw_read $COUNT_10 -30 $PGVR
86 runthreads 10 test_brw_write $COUNT_10 -30 $PG
87 runthreads 10 test_brw_read $COUNT_10 -30 $PG
89 [ "$PGVW" ] && runthreads 10 test_brw_write $COUNT_100 -60 $PGVW
90 [ "$PGVR" ] && runthreads 10 test_brw_read $COUNT_100 -60 $PGVR
92 runthreads 32 test_brw_write $COUNT_10 -30 $PG
93 runthreads 32 test_brw_read $COUNT_10 -30 $PG
95 [ "$PGVW" ] && runthreads 32 test_brw_write $COUNT_100 -60 $PGVW
96 [ "$PGVR" ] && runthreads 32 test_brw_read $COUNT_100 -60 $PGVR
98 runthreads 64 test_brw_write $COUNT_10 -30 $PG
99 runthreads 64 test_brw_read $COUNT_10 -30 $PG
101 [ "$PGVW" ] && runthreads 64 test_brw_write $COUNT_100 -60 $PGVW
102 [ "$PGVR" ] && runthreads 64 test_brw_read $COUNT_100 -60 $PGVR
104 runthreads 100 test_brw_write $COUNT_100 -60 $PG
105 runthreads 100 test_brw_read $COUNT_100 -60 $PG
107 [ "$PGVW" ] && runthreads 100 test_brw_write $COUNT_100 -60 $PGVW
108 [ "$PGVR" ] && runthreads 100 test_brw_read $COUNT_100 -60 $PGVR