problem with low efficiency of HP Smart Array 6i under FBSD

Oliver Fromme olli at lurza.secnetix.de
Thu Feb 9 08:28:39 PST 2006


peceka <peceka at gmail.com> wrote:
 > Our test:
 > #!/bin/sh
 > 
 > START="0"
 > END="10000"
 > 
 > while [ $START -lt $END ]; do
 >    dd if=/dev/zero of=$i.iso count=100000 > /dev/null 2>&1

Where does $i come from?  Doesn't seem to be initialized.
Also, if you want to perform a sequential write test, it
is better to use a larger block size than the default 512.
For example:  bs=51200 count=1000

 >    rm -f $i.iso
 >    START=`expr $START+1`

Better avoid fork/exec of expr(1), because you probably
don't want to benchmark that.  ;-)   You can use the
shell's arithmetic expansion:  START=$(( $START + 1 ))

(OK, I admit that the overhead of forking expr(1) is
_much_ smaller than the dd(1) call.)

 > Time of executing this scripts:
 > FreeBSD: 149m 28s
 > Linux: 97m 13s

Well, so Linux is about 33% faster.  That's not an order
of magnitude.  It could be explained by differences in
the file system parameters.  By the way, what kind of
file system did you use on FreeBSD and Linux?  What
parameters did you use with newfs?

In fact, the difference could also be caused by the
harddisks not being the same.  And even if they are
the same models, the location of your test files on the
harddisk can be different.  Most harddisks are much
faster when files are stored on the lower cylinders.

I don't think the difference is caused by the SCSI code.

Best regards
   Oliver

-- 
Oliver Fromme,  secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing
Dienstleistungen mit Schwerpunkt FreeBSD: http://www.secnetix.de/bsd
Any opinions expressed in this message may be personal to the author
and may not necessarily reflect the opinions of secnetix in any way.

"C++ is to C as Lung Cancer is to Lung."
        -- Thomas Funke


More information about the freebsd-scsi mailing list