Date: Tue, 12 Oct 2004 15:03:46 -0600 From: "Kenneth D. Merry" <ken@freebsd.org> To: David Gilbert <dgilbert@dclg.ca> Cc: freebsd-hardware@freebsd.org Subject: Re: sata raid & write cache state Message-ID: <20041012210346.GA88834@nargothrond.kdm.org> In-Reply-To: <16747.63803.470649.921882@canoe.dclg.ca> References: <b21e6cca041010181932879aeb@mail.gmail.com> <20041011043508.GA72113@nargothrond.kdm.org> <b21e6cca041011090816a1352@mail.gmail.com> <20041011210303.GA78436@nargothrond.kdm.org> <16747.63803.470649.921882@canoe.dclg.ca>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Oct 12, 2004 at 11:33:15 -0400, David Gilbert wrote: > >>>>> "Kenneth" == Kenneth D Merry <ken@freebsd.org> writes: > > Kenneth> See my previous mail. SATA disks differ in two ways: > > Kenneth> 1. Many don't support tagged queueing. > > I'd like to see more information on this. I was under the impression > that SATA required some form of command queueing in all drives. > > Kenneth> 2. If the SATA disk does support tagged queueing, there is > Kenneth> still a fundamental problem with the queueing model in SATA > Kenneth> (and probably ATA, not sure). According to a coworker of > Kenneth> mine (hardware engineer) who is a SATA expert, the status > Kenneth> phase on the bus is the same phase as the data phase. So you > Kenneth> basically have to send all the data to the drive on a write > Kenneth> and the drive has to send the status back before the drive > Kenneth> can accept any more data for another queued write command. > Kenneth> So that limits you, effectively, to writing data for one > Kenneth> command at a time. > > It would appear that the SATA folks are introducing 'NCQ' (Native > Command Queueing) ... which does supply out-of-order returns among > other things. >From talking to my co-worker again, it sounds like the SATA II spec does allow breaking up the data and status phases for a command. (i.e. out of order command completion) The key is that even if the drive supports it, the controller has to enable that feature on the drive. So the bottom line is that with a drive and a controller that support SATA II NCQ and out of order completion, you could disable write caching on the drive and still (in theory) get reasonable performance out of it. Ken -- Kenneth Merry ken@FreeBSD.ORG
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20041012210346.GA88834>