adjust run-readtest.sh so that it can be used as-is for testing multiple blocksizes
This commit is contained in:
parent
a2e77c0c4e
commit
95660a06e2
@ -5,8 +5,8 @@ filesize=100 # megabytes
|
|||||||
numfiles=128
|
numfiles=128
|
||||||
nocache=
|
nocache=
|
||||||
interleave=
|
interleave=
|
||||||
blocksize=262144
|
|
||||||
needfiles=1
|
needfiles=1
|
||||||
|
write_blocksize=262144
|
||||||
|
|
||||||
if uname -a | grep --silent arwin ; then
|
if uname -a | grep --silent arwin ; then
|
||||||
ddmega=m
|
ddmega=m
|
||||||
@ -20,7 +20,7 @@ while [ $# -gt 1 ] ; do
|
|||||||
-f) filesize=$2; shift; shift ;;
|
-f) filesize=$2; shift; shift ;;
|
||||||
-n) numfiles=$2; shift; shift ;;
|
-n) numfiles=$2; shift; shift ;;
|
||||||
-N) nocache="-s"; shift; shift ;;
|
-N) nocache="-s"; shift; shift ;;
|
||||||
-b) blocksize=$2; shift; shift ;;
|
*) break ;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
@ -40,6 +40,7 @@ else
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [ x$needfiles != x ] ; then
|
if [ x$needfiles != x ] ; then
|
||||||
|
echo "Building files for test..."
|
||||||
if [ x$interleave = x ] ; then
|
if [ x$interleave = x ] ; then
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -47,13 +48,12 @@ if [ x$needfiles != x ] ; then
|
|||||||
#
|
#
|
||||||
|
|
||||||
for i in `seq 1 $numfiles` ; do
|
for i in `seq 1 $numfiles` ; do
|
||||||
dd of=$dir/testfile_$i if=/dev/zero bs=1$ddmega count=$filesize
|
dd of=$dir/testfile_$i if=/dev/zero bs=1$ddmega count=$filesize >/dev/null 2>&1
|
||||||
echo $i
|
|
||||||
done
|
done
|
||||||
else
|
else
|
||||||
|
|
||||||
#
|
#
|
||||||
# Create files interleaved, adding $blocksize to each
|
# Create files interleaved, adding $write_blocksize to each
|
||||||
# file in turn.
|
# file in turn.
|
||||||
#
|
#
|
||||||
|
|
||||||
@ -61,25 +61,26 @@ if [ x$needfiles != x ] ; then
|
|||||||
limit=`expr $filesize * 1048576`
|
limit=`expr $filesize * 1048576`
|
||||||
while [ $size -lt $limit ] ; do
|
while [ $size -lt $limit ] ; do
|
||||||
for i in `seq 1 $numfiles` ; do
|
for i in `seq 1 $numfiles` ; do
|
||||||
dd if=/dev/zero bs=$blocksize count=1 >> $dir/testfile_$i
|
dd if=/dev/zero bs=$write_blocksize count=1 >> $dir/testfile_$i >/dev/null 2>&1
|
||||||
done
|
done
|
||||||
size=`expr $size + $blocksize`
|
size=`expr $size + $write_blocksize`
|
||||||
echo "Files now @ $size bytes"
|
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if uname -a | grep --silent arwin ; then
|
for bs in $@ ; do
|
||||||
# clears cache on OS X
|
|
||||||
sudo purge
|
|
||||||
elif [ -f /proc/sys/vm/drop_cache ] ; then
|
|
||||||
# Linux cache clearing
|
|
||||||
echo 3 | sudo tee /proc/sys/vm/drop/cache >/dev/null
|
|
||||||
else
|
|
||||||
# need an alternative for other operating systems
|
|
||||||
:
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Ready to run ..."
|
if uname -a | grep --silent arwin ; then
|
||||||
|
# clears cache on OS X
|
||||||
./readtest $nocache -b $blocksize -q $dir/testfile_%d
|
sudo purge
|
||||||
|
elif [ -f /proc/sys/vm/drop_cache ] ; then
|
||||||
|
# Linux cache clearing
|
||||||
|
echo 3 | sudo tee /proc/sys/vm/drop/cache >/dev/null
|
||||||
|
else
|
||||||
|
# need an alternative for other operating systems
|
||||||
|
:
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Blocksize $bs"
|
||||||
|
./readtest $nocache -b $bs -q $dir/testfile_%d
|
||||||
|
done
|
||||||
|
Loading…
Reference in New Issue
Block a user