Date: Fri, 21 Sep 2007 23:58:02 +0400 From: Michael Monashev <softsearch@gmail.com> To: Pawel Jakub Dawidek <freebsd-geom@freebsd.org> Subject: Re[2]: raidtest for zfs Message-ID: <1310567292.20070921235802@gmail.com> In-Reply-To: <20070921170506.GB9445@garage.freebsd.pl> References: <dcf881c30709210406j59603347vba8494eb5105932c@mail.gmail.com> <20070921143318.GC5690@garage.freebsd.pl> <dcf881c30709210933s6d92cb2dh830be87fb067037c@mail.gmail.com> <20070921170506.GB9445@garage.freebsd.pl>
next in thread | previous in thread | raw e-mail | index | archive | help
Hello, Pawel. >> > > How to run raidtest ( >> > > http://www.freebsdsoftware.org/benchmarks/raidtest.html ) on zfs? >> > > >> > > diskinfo dos'n work. >> > >> > raidtest is for block device testing. If you want to test ZFS with it, >> > you need to create ZVOL with 'zfs create -V' command, eg. >> > >> > # zpool create tank raidz da{0,1,2,3,4} >> > # zfs create -V 100g tank/vol >> > # diskinfo -v /dev/zvol/tank/vol >> >> >> >> I get strange and fantastic results: >> >> > raidtest genfile -s 209715200 -S 512 -n 50000 -r -f >> File raidtest.data generated. >> Number of READ requests: 50000. >> Number of WRITE requests: 0. >> Number of bytes to transmit: 3279956992. >> >> > raidtest test -d /dev/zvol/tank/vol -n 10 >> Read 50000 requests from raidtest.data. >> Number of READ requests: 50000. >> Number of WRITE requests: 0. >> Number of bytes to transmit: 3279956992. >> Number of processes: 10. >> Bytes per second: 245146813 >> Requests per second: 3737 >> ^^^^^ - too big! >> >> > raidtest genfile -s 209715200 -S 512 -n 50000 -f >> File raidtest.data generated. >> Number of READ requests: 25046. >> Number of WRITE requests: 24954. >> Number of bytes to transmit: 3311506944. >> >> > raidtest test -d /dev/zvol/tank/vol -n 10 >> Read 50000 requests from raidtest.data. >> Number of READ requests: 25046. >> Number of WRITE requests: 24954. >> Number of bytes to transmit: 3311506944. >> Number of processes: 10. >> Bytes per second: 195043585 >> Requests per second: 2944 >> ^^^^^ - too big! >> >> >> The real results is: >> >> > raidtest test -d /dev/raid3/g3 -n 10 >> Read 50000 requests from raidtest.data. >> Number of READ requests: 50000. >> Number of WRITE requests: 0. >> Number of bytes to transmit: 3316146176. >> Number of processes: 10. >> Bytes per second: 11398078 >> Requests per second: 171 >> >> What is wrong? >> >> How to run raidtest correctly on /dev/zvol/tank/vol ? > Ok. Here it how it works. ZFS has this COW model. It doesn't preallocate > space. When you read blocks you never written, it won't touch the disks, > but will just return zeros. > To properly test read performance, you first need to write, so you > should first run raidtest with -w flag, then zpool export/import your > pool to remove cache and then retest with or without -r flag. I run: > raidtest test -d /dev/zvol/tank/vol -n 10 -w Read 50000 requests from raidtest.data. Number of READ requests: 0. Number of WRITE requests: 50000. Number of bytes to transmit: 3281546240. Number of processes: 10. Bytes per second: 120195634 Requests per second: 1831 > zpool export tank > zpool import tank > raidtest test -d /dev/zvol/tank/vol -n 10 -r Read 50000 requests from raidtest.data. Number of READ requests: 50000. Number of WRITE requests: 0. Number of bytes to transmit: 3281546240. Number of processes: 10. Bytes per second: 69264127 Requests per second: 1055 Results seems too strange again. How to turn off zfs cache completely? FreeBSD 7.0-CURRENT amd64 -- Michael
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1310567292.20070921235802>