Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 May 2008 14:08:17 -0600
From:      Scott Long <scottl@samsco.org>
To:        Chris Dillon <cdillon@wolves.k12.mo.us>
Cc:        freebsd-scsi@freebsd.org
Subject:   Re: Very poor performance from Dell/LSI Logic SAS 3000 series	SATA/SAS RAID controller FreeBSD 6.3
Message-ID:  <48348131.3040602@samsco.org>
In-Reply-To: <20080521143051.17771kseoxrlhy7f@www.wolves.k12.mo.us>
References:  <4832C397.3090004@calorieking.com>	<4832E0EE.3030402@samsco.org> <4832E6C2.7040205@calorieking.com>	<48336EA0.3050109@samsco.org> <20080521143051.17771kseoxrlhy7f@www.wolves.k12.mo.us>

next in thread | previous in thread | raw e-mail | index | archive | help
Chris Dillon wrote:
> Quoting Scott Long <scottl@samsco.org>:
> 
>> For data reliability, you really don't want it enabled by default.  The
>> problem is that SATA/ATA performs so poorly without it that everyone
>> turns it on and lives with the consequences.  The tweak that I
>> recommended puts it in line with what the FreeBSD ATA driver has been
>> doing for years.
> 
> Doesn't SATA NCQ solve this particular performance vs. reliability 
> problem since it safely allows multiple outstanding write requests?  Of 
> course that means the SATA RAID controller would have to use NCQ on the 
> drives and would probably also need its own non-volatile cache.  I've 
> always assumed this is how SCSI/SAS drives (with TCQ) perform as well as 
> they do without sacrificing data integrity.

Yes and no.  NCQ gets you 90% the way there, but the lack of an ordered
tag operation in the NCQ protocol means that i/o streams can be starved,
forcing you to do unpleasant i/o scheduling hacks.  But yes, it helps
quite a bit, and I have a prototype driver already working that supports
NCQ and performs very well with write cache turned off.

> 
> We recently bought a new HP DL380G5 server with a P800 SAS RAID 
> controller, MSA60 external drive shelf with 12 750GB SATA drives, 
> 11-drive RAID5 array w/ hot-spare (a few too many drives in a single 
> RAID5 array, I know, but I'm experimenting).  The system is running 
> Windows Server 2K3 R2.  Without telling the P800 to enable the SATA WC 
> (it has an option to do so, off by default), when doing a drag and drop 
> file copy of several very large files from the internal SAS array to the 
> external SATA array it writes 300MB/sec.  I briefly enabled the 
> "Physical Drive Write Cache" on the controller just a few minutes ago 
> and ran another test and didn't notice any difference in write speed.  I 
> can only assume from this that the P800 is using NCQ on the SATA drives.
> 

The cache and queueing mechanism on most IOP raid cards will smooth over 
the performance problems with ATA/SATA, so your results aren't too 
surprising.

Scott



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