From 624c2fb7e320fb9e3b33b58a5cca2cfeb686f09d Mon Sep 17 00:00:00 2001 From: Bart Van Assche Date: Wed, 8 Apr 2009 16:35:15 +0000 Subject: [PATCH] Flush all caches before starting a test. git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@762 d57e44dd-8a1f-0410-8b47-8ef2f437770f --- scripts/blockdev-perftest | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/scripts/blockdev-perftest b/scripts/blockdev-perftest index f39bf3efc..722426ee7 100755 --- a/scripts/blockdev-perftest +++ b/scripts/blockdev-perftest @@ -101,12 +101,18 @@ else dd_iflags="" fi +# Force all changed blocks to disk before the tests start. +sync + printf "%9s %8s %8s %8s %8s %8s %8s\n" blocksize W W W R R R for ((log2_blocksize = log2_max_blocksize; log2_blocksize >= log2_min_blocksize; log2_blocksize--)) do + if [ $log2_blocksize -gt $log2_io_size ]; then + continue + fi bs=$((2**log2_blocksize)) count=$((2**(log2_io_size - log2_blocksize))) printf "%9d " ${bs} @@ -119,6 +125,8 @@ do done for ((i=0;i<3;i++)) do + # Flush the read cache before the read test starts. + echo 1 > /proc/sys/vm/drop_caches elapsed="$(dd if="${device}" of=/dev/null bs=${bs} count=${count} \ ${dd_iflags} 2>&1 \ | sed -n 's/.* \([0-9.]*\) s,.*/\1/p')"