Date: Tue, 08 Apr 2003 15:14:13 -0600 From: Scott Long <scott_long@btc.adaptec.com> To: Alexander Leidinger <Alexander@leidinger.net> Cc: des@ofug.org Subject: Re: cvs commit: src/sys/dev/ata ata-all.c ata-all.hata-chipset.cata-dma.c ata-pci.c ata-pci.h Message-ID: <3E933BA5.3070708@btc.adaptec.com> In-Reply-To: <20030408172555.GA9572@freebie.xs4all.nl> References: <20030408172555.GA9572@freebie.xs4all.nl> <22238.1049823278@critter.freebsd.dk> <20030408202308.GA49094@tara.freenix.org> <20030408225931.052a8873.Alexander@Leidinger.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Alexander Leidinger wrote: > On Tue, 8 Apr 2003 22:23:08 +0200 > Ollivier Robert wrote: > > > >According to Poul-Henning Kamp: > > > >> Tagged queueing: > >> Ability to reduce transaction latency by sending more than one > >> request to the drive at a time. The request may be handled out > >> of order by the drive. > >> (A good thing!) > > > >Except for softupdates which rely on its own ordering of writes... > > > Softupdates has no problems with TQ AFAIK... (it reports back) > > Bye, > Alexander. > The advantage that TQ gives you in the SCSI world is: 1. The ability for the device to take in a bunch of commands at once, sort them internally to match the head/track/sector arrangement, and then pull the data in from the host in the optimal order. It doesn't require any interaction with the Write Cache. In fact, Write Cache is very undesirable in the high availibility and reliability space that SCSI occupies. 2. In conjuction with (1), it implies Disconnection. This is the ability of the device to release ownership of the bus while it does its job. That frees the bus for other devices, or for more commands to the same device. The multiple device argument doesn't matter much in the ATA world since you rarely put more than one drive on a channel, but it's a huge win in SCSI. And, it helps keep down the working/spinning in the device driver. I really have no insight into how ATA TQ works. Since it's mostly a software issue (as opposed to needing special silicon), the fact that it never caught on in the ATA world either means that it was designed poorly, or that it wasn't marketed right. SCSI with TQ beats ATA in real-world tasks. Sure, the venerable 'dd' test might show that ATA wins, but how often are you reading multi- megabyte contiguous files into /dev/null? On the other hand, tasks like cvsup are significantly faster with SCSI, especially when it's doing something pathological like putting down a RELENG_X tag. Scott
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3E933BA5.3070708>