Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 3 Sep 1999 10:04:20 -0600 (MDT)
From:      "Kenneth D. Merry" <ken@kdm.org>
To:        remy@synx.com
Cc:        freebsd-scsi@FreeBSD.ORG
Subject:   Re: ccd peak performance
Message-ID:  <199909031604.KAA14523@panzer.kdm.org>
In-Reply-To: <199909022105.XAA12981@gw0.boostworks.com> from Remy Nonnenmacher at "Sep 2, 1999 11:05:43 pm"

next in thread | previous in thread | raw e-mail | index | archive | help
Remy Nonnenmacher wrote...
> 
> I ran in a strange 60MB/s barrier somewhere and would like to have some
> highlight about it :
> 
> I use a machine with 3 PCI buses, each bus with 3 U2W-LVD SCSI channels.
> 
> All disks deliver a little more than 20MB/s (Quantum 18.2).
> 
> Whatever CCD configuration I try, I get a 60MB/s peak read performance
> per CCD. I tried 4,5 and 6 disks, on various channels, on various PCI
> busses, etc...: Can't get more than 60MB/s.
> 
> Using two CCD on same controller pull up perf to 72MB/s (which is near
> the channel bandwidth). Using 3 CCD's on different channels takes me to
> a little more than 160MB/s (and 2 CCD's on different channels give me
> about 120MB/s. Peak perf with all disks active (direct read) is
> 175MB/s).
> 
> Any guess where does that 60MB/s/CCD limit comes from ?
> 
> (Performance numbers with vinum also welcome).
> 
> Additional Infos:
> 3.2-STABLE, Intel C440GX+ SMP Bi-Xeon 500, 2x3950U2W (channel A used) +
> Internal 7896 controller.

If you have a C440GX, I think you've only got two PCI busses, not three.
From Intel's specs, it looks like it has an onboard 7896, and then one
33MHz bus with 4 slots and one 66MHz bus with 2 slots.  They don't indicate
which bus the 7896 is on, but my guess is that it's on the 33MHz bus.  (The
chip can't do 66MHz.)

The fact that you can get 175MB/sec out of all the disks simultaneously,
without CCD, indicates that it is unlikely that you have a hardware
problem.

What sort of interleave factor are you using with CCD?  You'll want to set
the interleave large enough that the transactions are still reasonably
sized once they hit the disk.

When you're doing I/O benchmarks, you can try looking at the output of
'iostat -d 1'.  iostat(8) will give you the average transaction size, and
may help you debug your problem.

My guess is that changing the interleave factor around might fix things.

Also, what are you using to benchmark?  I often use iozone for sequential
I/O benchmarks...

Ken
-- 
Kenneth Merry
ken@kdm.org


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-scsi" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199909031604.KAA14523>