test_device() {
echo "Running ${TEST_NAME}"
- fio --bsrange=4k-4g --rw=randtrim --norandommap \
- --name=discards --filename="$TEST_DEV" --runtime=10s \
- --time_based=1 >>"$FULL"
+ fio --output-format=terse --terse-version=4 --bsrange=4k-4g \
+ --rw=randtrim --norandommap --name=discards \
+ --filename="$TEST_DEV" --runtime=10s --time_based=1 >>"$FULL"
+
+ TERSE_VER=$(cat $FULL | cut -d ';' -f1)
+ if [[ "$TERSE_VER" -eq "4" ]]; then
+ TEST_RUN[iops]=$(cat $FULL | cut -d ';' -f90)
+ fi
echo "Test complete"
}
test_device() {
echo "Running ${TEST_NAME}"
- fio --bs=4k --rw=randwrite --norandommap --fsync=1 \
- --number_ios=256 --numjobs=64 --name=flushes \
- --filename="$TEST_DEV" >>"$FULL"
+ fio --output-format=terse --bs=4k --rw=randwrite --norandommap \
+ --fsync=1 --number_ios=256 --numjobs=64 --name=flushes \
+ --group_reporting=1 --filename="$TEST_DEV" >>"$FULL"
+
+ TERSE_VER=$(cat $FULL | cut -d ';' -f1)
+ if [[ "$TERSE_VER" -eq "3" ]]; then
+ TEST_RUN[iops]=$(cat $FULL | cut -d ';' -f49)
+ fi
echo "Test complete"
}
fi
# start fio job
- fio --bs=4k --rw=randread --norandommap --name=reads \
- --filename="$TEST_DEV" --size="$size" --numjobs=8 --direct=1 \
- >>"$FULL" &
+ fio --output-format=terse --bs=4k --rw=randread --norandommap \
+ --name=reads --filename="$TEST_DEV" --size="$size" \
+ --group_reporting=1 --numjobs=8 --direct=1 >>"$FULL" &
# while job is running, switch between schedulers
while kill -0 $! 2>/dev/null; do
sleep .2
done
+ TERSE_VER=$(cat $FULL | cut -d ';' -f1)
+ if [[ "$TERSE_VER" -eq "3" ]]; then
+ TEST_RUN[iops]=$(cat $FULL | cut -d ';' -f8)
+ fi
+
echo "Test complete"
}
fio --bs=4k --rw=randread --norandommap --name=reads \
--filename="$TEST_DEV" --size="$size" --direct=1 \
--ioengine=pvsync2 --hipri=1 >>"$FULL"
+
+ OUT=$(fio --output-format=terse --bs=4k --rw=randread --norandommap \
+ --name=reads --filename="$TEST_DEV" --size="$size" --direct=1 \
+ --ioengine=pvsync2 --hipri=1)
+ echo $OUT >> "$FULL"
+
+ TERSE_VER=$(echo $OUT | cut -d ';' -f1)
+ if [[ "$TERSE_VER" -eq "3" ]]; then
+ iops=$(echo $OUT | cut -d ';' -f8)
+ else
+ iops=0
+ fi
}
test_device() {
echo "Running ${TEST_NAME}"
+ # no polling, run job
+ _test_dev_set_io_poll 0
+ run_fio_job
+ TEST_RUN[iops]=$iops
+
# turn on polling, switch to classic, run job
_test_dev_set_io_poll 1
_test_dev_set_io_poll_delay -1
run_fio_job
+ TEST_RUN[poll iops]=$iops
# switch to auto-hybrid polling, run job
_test_dev_set_io_poll_delay 0
run_fio_job
+ TEST_RUN[hybrid poll iops]=$iops
# switch to explicit delay polling, run job
_test_dev_set_io_poll_delay 4
run_fio_job
+ TEST_RUN[fixed poll iops]=$iops
echo "Test complete"
}