Re: Why is NCQ enabled by default by libata? (2.6.20)

Jeff Garzik
2007-03-28T14:49:28Z

Phillip Susi wrote:
> Justin Piszcz wrote:
>> I would try with write-caching enabled.
>> Also, the RAID5/RAID10 you mention seems like each volume is on part of
>> the platter, a strange setup you got there :)
>
> Shouldn't NCQ only help write performance if write caching is
> _disabled_? Since write cache essentially is just non tagged command
> queuing?

NCQ provides for a more asynchronous flow. It helps greatly with reads
(of which most are, by nature, synchronous at the app level) from
multiple threads or apps. It helps with writes, even with write cache
on, by allowing multiple commands to be submitted and/or retired at the
same time.

Jeff