Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 12 May 2004 06:31:39 -0600
From:      Scott Long <scottl@freebsd.org>
To:        Pete French <petefrench@keithprowse.com>
Cc:        freebsd-scsi@freebsd.org
Subject:   Re: 2120S Stripe - abysmal performance
Message-ID:  <40A2192B.3010201@freebsd.org>
In-Reply-To: <E1BNqMM-0002EO-Ry@dilbert.firstcallgroup.co.uk>
References:  <E1BNqMM-0002EO-Ry@dilbert.firstcallgroup.co.uk>

next in thread | previous in thread | raw e-mail | index | archive | help
Pete French wrote:

>>Read caching should be turned off unless you have a very specific need
>>for it.  Having it on is going to hurt sequential read performance by a
>>2x factor.  The only time is makes sense is when you have a relatively
>>small data set that gets read repeatedly, with few other reads mixed in.
> 
> 
> Interesting comment. Does that refer to this particular controller, to
> caches on RAID controllers in general, or to caches on the drives themselves ?
> 
> -pete.


With the read cache on, every time that the OS requests a new logical
block that isn't in the cache, the controller has to first DMA that
block from the disks into the cache, then DMA from the cache to host
memory.  With the read cache off, it only has to DMA from the disks
straight to host memory.  Some older AAC controllers also don't
balance the cache well between read and write, so having both enabled
winds up thrashing both.

The read cache on the drive is a good thing since it will do a bit of
read-ahead which will help reduce latency.

Scott



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