On Fri, Feb 6, 2009 at 13:57, Bob Friesenhahn
<[email protected]> wrote:
> This script by Jeff Bonwick is good for finding poorly-performing disks.
>  This version is slightly modified by myself.
Ah, yes, I'd forgotten about this script.  Thanks for the reminder,
and here are the outputs I got:
# ./diskqual.sh
c0t0d0 212 MB/sec
c0t1d0 215 MB/sec
c0t2d0 463 MB/sec
c0t3d0 476 MB/sec
c0t4d0 483 MB/sec
c0t5d0 460 MB/sec
c2t8d0 69 MB/sec
c2t9d0 69 MB/sec
c2t10d0 69 MB/sec
c4t9d0 104 MB/sec
c4t10d0 60 MB/sec
c4t11d0 74 MB/sec
c4t12d0 79 MB/sec
c4t13d0 77 MB/sec
c4t14d0 77 MB/sec
c4t15d0 77 MB/sec

Everything looks fine to me.  The disks I'm using are all on c4, which
is an LSI SAS card connected to an LSI SAS expander with sata disks on
it.  Taking out the " | sort -n | tail -2 | head -1" part of the
output formatting doesn't show any discrepancies (except on the c0
disks, which I expected because they're on a hardware raid controller
which caches things).

Thanks for the suggestion.

Will

> #!/bin/ksh
>
> # Date: Mon, 14 Apr 2008 15:49:41 -0700
> # From: Jeff Bonwick <[email protected]>
> # To: Henrik Hjort <[email protected]>
> # Cc: [email protected]
> # Subject: Re: [zfs-discuss] Performance of one single 'cp'
> # # No, that is definitely not expected.
> # # One thing that can hose you is having a single disk that performs
> # really badly.  I've seen disks as slow as 5 MB/sec due to vibration,
> # bad sectors, etc.  To see if you have such a disk, try my diskqual.sh
> # script (below).  On my desktop system, which has 8 drives, I get:
> # # # ./diskqual.sh
> # c1t0d0 65 MB/sec
> # c1t1d0 63 MB/sec
> # c2t0d0 59 MB/sec
> # c2t1d0 63 MB/sec
> # c3t0d0 60 MB/sec
> # c3t1d0 57 MB/sec
> # c4t0d0 61 MB/sec
> # c4t1d0 61 MB/sec
> # # The diskqual test is non-destructive (it only does reads), but to
> # get valid numbers you should run it on an otherwise idle system.
>
> disks=`format </dev/null | grep ' c.t' | nawk '{print $2}'`
>
> getspeed1()
> {
>        ptime dd if=/dev/rdsk/${1}s0 of=/dev/null bs=64k count=1024 2>&1 |
>            nawk '$1 == "real" { printf("%.0f\n", 67.108864 / $2) }'
> }
>
> getspeed()
> {
>        # Best out of 6
>        for iter in 1 2 3 4 5 6
>        do
>                getspeed1 $1
>        done | sort -n | tail -2 | head -1
> }
>
> for disk in $disks
> do
>        echo $disk `getspeed $disk` MB/sec
> done
>
>
> ======================================
> Bob Friesenhahn
> [email protected], http://www.simplesystems.org/users/bfriesen/
> GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/
>
>
_______________________________________________
storage-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/storage-discuss

Reply via email to