[K12OSN] Are fast disks really that important and why?

Robert Arkiletian robark at gmail.com
Sat Jun 2 22:21:51 UTC 2007


On 6/2/07, Krsnendu dasa <krsnendu108 at gmail.com> wrote:
> How close is SATA2 ncq to the scsi queuing?

SCSI uses TCQ (tagged command queing) and SATA uses NCQ (native
command queing). They are both supposed to do the same thing. Be able
to que requests and reorder them according to a more efficient
alogithm to minimize head movement.

Some things I have notice. When using stand alone scsi drives (not in
a raid array) the que depth was auto set to 32 (Adaptec controller).
But when putting the same drive and controller into a software raid 1
the depth dropped to 4. I'm guessing this is probably due to the fact
that linux software raid already does some deciding which drive head
in the array is closer to the requested data.

In addition, SATA NCQ is still relatively new, both in terms of kernel
support (2.6.18) and hardware support. It requires the drive,
controller and driver to support it. Here is an excerpt from a recent
LKML discussion regarding HD's that have been blacklisted in terms of
ncq support.

http://www.mail-archive.com/git-commits-head@vger.kernel.org/msg08460.html
[ I'm personally starting to wonder whether we shouldn't disable NCQ by
       default, and perhaps have a white-list. There seems to be a *lot* of
       drives that do this wrong..   - Linus ]

I think SATA ncq was originally pioneered by Intel and Seagate. Hence,
right now the best consumer grade support for it in terms of
controllers are Intel's southbridges (like the ICH7R or ICH8R) as they
use the intel open spec (AHCI) Advanced Host Controller Interface. The
other one is the sil_sata24 driver which is used by the Silicon Image
sil3124 (pci-x) and sil3132 (pci-e) chipsets.

Jeff Garzik, a RedHat employee, is THE MAN when it comes to this
stuff. He develops the libata drivers for the linux kernel
http://linux-ata.org/driver-status.html

Don't forget one thing, the slowest part of a HD is the mechanical
motion. SCSI comes in 15,000 rpm flavour. This really reduces data
aquisition latency in two ways. Firstly, the time for the data to spin
around to be under the head. Second, 15k rpm drives have smaller size
disks in order to deal with the greater vibration from such a fast
rpm. Hence, 15k drives are basically short stroked. So the head does
not have to travel very far from the beginning of the disk to the end.

Not to mention SCSI disks are generally  built with longer MTBF.
Bottom line, if you can afford it, SCSI is still the best. I would
recommend SAS (Serial Attached SCSI).

The reason enterprises are using SATA is the price/GB and the size of
the drives. You can now buy 1TB (1000GB) SATA drives. If you have big
storage needs then SATA definitely makes sense. Usually with an LSI
MegaRAID 300-8x or 3ware 9550sx SATA RAID controller.


-- 
Robert Arkiletian
Eric Hamber Secondary, Vancouver, Canada
Fl_TeacherTool http://www3.telus.net/public/robark/Fl_TeacherTool/
C++ GUI tutorial http://www3.telus.net/public/robark/




More information about the K12OSN mailing list