* NCQ general question
@ 2006-03-01 7:04 Raz Ben-Jehuda(caro)
2006-03-01 8:56 ` Gentoopower
0 siblings, 1 reply; 26+ messages in thread
From: Raz Ben-Jehuda(caro) @ 2006-03-01 7:04 UTC (permalink / raw)
To: Linux RAID Mailing List, linux-ide@vger.kernel.org
i am thinking of buying a promise card sataII pcix.
they have two types, a card which support NCQ
and another that does not.
What is the bennifit of buying a card with NCQ tagging ?
i would be thankfull for any answer .
thank you.
raz.
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-01 7:04 NCQ general question Raz Ben-Jehuda(caro)
@ 2006-03-01 8:56 ` Gentoopower
2006-03-01 13:49 ` Mark Lord
0 siblings, 1 reply; 26+ messages in thread
From: Gentoopower @ 2006-03-01 8:56 UTC (permalink / raw)
To: Raz Ben-Jehuda(caro); +Cc: Linux RAID Mailing List, linux-ide@vger.kernel.org
Raz Ben-Jehuda(caro) wrote:
> i am thinking of buying a promise card sataII pcix.
> they have two types, a card which support NCQ
> and another that does not.
> What is the bennifit of buying a card with NCQ tagging ?
>
How about: http://en.wikipedia.org/wiki/Native_command_queueing
> i would be thankfull for any answer .
> thank you.
> raz.
> -
> To unsubscribe from this list: send the line "unsubscribe linux-ide" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
>
>
___________________________________________________________
Telefonate ohne weitere Kosten vom PC zum PC: http://messenger.yahoo.de
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-01 8:56 ` Gentoopower
@ 2006-03-01 13:49 ` Mark Lord
2006-03-01 13:55 ` Jens Axboe
2006-03-01 15:56 ` Gentoopower
0 siblings, 2 replies; 26+ messages in thread
From: Mark Lord @ 2006-03-01 13:49 UTC (permalink / raw)
To: Gentoopower
Cc: Raz Ben-Jehuda(caro), Linux RAID Mailing List,
linux-ide@vger.kernel.org
Gentoopower wrote:
> Raz Ben-Jehuda(caro) wrote:
>> i am thinking of buying a promise card sataII pcix.
>> they have two types, a card which support NCQ
>> and another that does not.
>> What is the bennifit of buying a card with NCQ tagging ?
>>
> How about: http://en.wikipedia.org/wiki/Native_command_queueing
Yuck.. what a lousy wiki entry.
NCQ vs. TCQ: NCQ has a much more efficient low-level protocol,
making the host-side (controller, operating-system) quite a bit
simpler than with NCQ.
Both use 32-deep queue depths, and neither of them are worth a
damn on Linux yet. Except possibly in the libata ahci driver,
or vendor-provided drivers (open source, even) for some chipsets.
In theory, NCQ/TCQ can speed up a very busy fileserver that is
handling mostly tiny I/O requests. Practically no measurable
benefit for single-user systems.
Cheers
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-01 13:49 ` Mark Lord
@ 2006-03-01 13:55 ` Jens Axboe
2006-03-03 21:55 ` Steve Byan
2006-03-01 15:56 ` Gentoopower
1 sibling, 1 reply; 26+ messages in thread
From: Jens Axboe @ 2006-03-01 13:55 UTC (permalink / raw)
To: Mark Lord
Cc: Gentoopower, Raz Ben-Jehuda(caro), Linux RAID Mailing List,
linux-ide@vger.kernel.org
On Wed, Mar 01 2006, Mark Lord wrote:
> Gentoopower wrote:
> >Raz Ben-Jehuda(caro) wrote:
> >>i am thinking of buying a promise card sataII pcix.
> >>they have two types, a card which support NCQ
> >>and another that does not.
> >>What is the bennifit of buying a card with NCQ tagging ?
> >>
> >How about: http://en.wikipedia.org/wiki/Native_command_queueing
>
> Yuck.. what a lousy wiki entry.
Yeah, it's pretty bogus.
> NCQ vs. TCQ: NCQ has a much more efficient low-level protocol,
> making the host-side (controller, operating-system) quite a bit
> simpler than with NCQ.
Or in laymens terms - TCQ sucks and NCQ doesn't :-)
NCQ has many more advantages than TCQ, apart from both a more efficient
low level protocol and ease of implementation. TCQ basically just allows
the drive to do some reordering, it still serializes everything and
requires too many interrupts.
> Both use 32-deep queue depths, and neither of them are worth a
> damn on Linux yet. Except possibly in the libata ahci driver,
> or vendor-provided drivers (open source, even) for some chipsets.
Eh strange statement, NCQ works just fine in Linux with the NCQ patch.
On AHCI only of course, as that is the only docu I had available.
> In theory, NCQ/TCQ can speed up a very busy fileserver that is
> handling mostly tiny I/O requests. Practically no measurable
> benefit for single-user systems.
Even single user systems easily have more than on pending request, I'd
say results are very measurable for random 4kb io. In real life the
casual single user wont see much benefit, mainly because he doesn't do a
whole lot of io. I have seen over 30% benefit in "micro" io benchmarks,
though.
--
Jens Axboe
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-01 13:49 ` Mark Lord
2006-03-01 13:55 ` Jens Axboe
@ 2006-03-01 15:56 ` Gentoopower
2006-03-01 16:05 ` Jens Axboe
1 sibling, 1 reply; 26+ messages in thread
From: Gentoopower @ 2006-03-01 15:56 UTC (permalink / raw)
To: Mark Lord
Cc: Raz Ben-Jehuda(caro), Linux RAID Mailing List,
linux-ide@vger.kernel.org
Mark Lord wrote:
> Gentoopower wrote:
>> Raz Ben-Jehuda(caro) wrote:
>>> i am thinking of buying a promise card sataII pcix.
>>> they have two types, a card which support NCQ
>>> and another that does not.
>>> What is the bennifit of buying a card with NCQ tagging ?
>>>
>> How about: http://en.wikipedia.org/wiki/Native_command_queueing
>
> Yuck.. what a lousy wiki entry.
>
> NCQ vs. TCQ: NCQ has a much more efficient low-level protocol,
> making the host-side (controller, operating-system) quite a bit
> simpler than with NCQ.
>
> Both use 32-deep queue depths, and neither of them are worth a
> damn on Linux yet. Except possibly in the libata ahci driver,
> or vendor-provided drivers (open source, even) for some chipsets.
>
> In theory, NCQ/TCQ can speed up a very busy fileserver that is
> handling mostly tiny I/O requests. Practically no measurable
> benefit for single-user systems.
That's a lousy comment:-)
Single-User systems can have lots of I/O requests too.
If I compile something in the backround, listen to music, while copying
files from one drive to the other.
I also have lots of I/O while booting.
I have two seagates in my box a 160GB 7200.7 and 160GB 7200.9(SATAII
NCQ), using NFORCE4.
I can defintely feel the speed difference between the two drives.
P.S. Just waiting to see NCQ support for my nforce system in libata:-)
>
> Cheers
> -
> To unsubscribe from this list: send the line "unsubscribe linux-ide" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
>
___________________________________________________________
Telefonate ohne weitere Kosten vom PC zum PC: http://messenger.yahoo.de
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-01 15:56 ` Gentoopower
@ 2006-03-01 16:05 ` Jens Axboe
2006-03-01 16:20 ` Jeff Garzik
2006-03-01 16:48 ` Gentoopower
0 siblings, 2 replies; 26+ messages in thread
From: Jens Axboe @ 2006-03-01 16:05 UTC (permalink / raw)
To: Gentoopower
Cc: Mark Lord, Raz Ben-Jehuda(caro), Linux RAID Mailing List,
linux-ide@vger.kernel.org
On Wed, Mar 01 2006, Gentoopower wrote:
> I have two seagates in my box a 160GB 7200.7 and 160GB 7200.9(SATAII
> NCQ), using NFORCE4.
> I can defintely feel the speed difference between the two drives.
Well that can't be because of NCQ, since it isn't active :-)
> P.S. Just waiting to see NCQ support for my nforce system in libata:-)
Don't hold your breath, it's unlikely to get supported as nvidia wont
open the specs. ahci is a really really nice controller, if you want ncq
I suggest going with that. sil is probably the next in line for ncq
support.
--
Jens Axboe
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-01 16:05 ` Jens Axboe
@ 2006-03-01 16:20 ` Jeff Garzik
2006-03-01 18:53 ` Jens Axboe
2006-03-02 8:18 ` Rafal Krzewski
2006-03-01 16:48 ` Gentoopower
1 sibling, 2 replies; 26+ messages in thread
From: Jeff Garzik @ 2006-03-01 16:20 UTC (permalink / raw)
To: Jens Axboe
Cc: Gentoopower, Mark Lord, Raz Ben-Jehuda(caro),
Linux RAID Mailing List, linux-ide@vger.kernel.org
Jens Axboe wrote:
> On Wed, Mar 01 2006, Gentoopower wrote:
>>P.S. Just waiting to see NCQ support for my nforce system in libata:-)
>
>
> Don't hold your breath, it's unlikely to get supported as nvidia wont
> open the specs. ahci is a really really nice controller, if you want ncq
> I suggest going with that. sil is probably the next in line for ncq
> support.
Actually.....
* Old-nvidia is ADMA, and I have docs under NDA
* nvidia themselves say they are uninterested in NCQ support for their
older ADMA controllers, though they don't mind if I implement it
* New-nvidia is AHCI, and thus will support NCQ when AHCI does
* slight correction to the above: sil24 will do NCQ, I don't think sil does
Jeff
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-01 16:05 ` Jens Axboe
2006-03-01 16:20 ` Jeff Garzik
@ 2006-03-01 16:48 ` Gentoopower
2006-03-01 18:34 ` Mark Lord
1 sibling, 1 reply; 26+ messages in thread
From: Gentoopower @ 2006-03-01 16:48 UTC (permalink / raw)
Cc: linux-ide@vger.kernel.org
Jens Axboe wrote:
> On Wed, Mar 01 2006, Gentoopower wrote:
>
>> I have two seagates in my box a 160GB 7200.7 and 160GB 7200.9(SATAII
>> NCQ), using NFORCE4.
>> I can defintely feel the speed difference between the two drives.
>>
>
> Well that can't be because of NCQ, since it isn't active :-)
>
Got ya:-)
Who said this box is running only linux?
I have dual boot on this box, Windows 2003 Server and Gentoo, originally
I had windows
on the 7200.2 then bought the 7200.9, cloned the drive to the new,
therefore I know the difference:-)
And yeah it is active, at least nvidias info tool in hardware manager
says it is:-)
>
>> P.S. Just waiting to see NCQ support for my nforce system in libata:-)
>>
>
> Don't hold your breath, it's unlikely to get supported as nvidia wont
> open the specs. ahci is a really really nice controller, if you want ncq
> I suggest going with that. sil is probably the next in line for ncq
> support.
>
>
___________________________________________________________
Telefonate ohne weitere Kosten vom PC zum PC: http://messenger.yahoo.de
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-01 16:48 ` Gentoopower
@ 2006-03-01 18:34 ` Mark Lord
0 siblings, 0 replies; 26+ messages in thread
From: Mark Lord @ 2006-03-01 18:34 UTC (permalink / raw)
To: Gentoopower; +Cc: linux-ide@vger.kernel.org
Gentoopower wrote:
> Jens Axboe wrote:
>> On Wed, Mar 01 2006, Gentoopower wrote:
..
>>> I can defintely feel the speed difference between the two drives.
>>>
>> Well that can't be because of NCQ, since it isn't active :-)
>
> Got ya:-)
>
> Who said this box is running only linux?
You did, by posting to the *Linux-IDE* kernel mailing list.
All bets are off for other OSs, especially those that really
*need* NCQ for half-decent performance.
Linux doesn't, but it's definitely nice to wish for.
I've implemented host-queuing support for NCQ and TCQ on
several controllers (for Linux), and it almost always produces
only a tiny *measureable* effect on desktop systems.
Busy servers, with lots of teensy random read requests,
benefit most from it, as do benchmark programs that do a lot of seeking.
But normal system use -- running OO.org, rebuilding kernels,
etc.. no significant measurable difference. Maybe by fiddling
with the IO scheduler code (which defeats NCQ/TCQ to a degree)..
But I'd happily enable it on my own systems anyway!
Cheers
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-01 16:20 ` Jeff Garzik
@ 2006-03-01 18:53 ` Jens Axboe
2006-03-02 8:14 ` Raz Ben-Jehuda(caro)
2006-03-02 8:18 ` Rafal Krzewski
1 sibling, 1 reply; 26+ messages in thread
From: Jens Axboe @ 2006-03-01 18:53 UTC (permalink / raw)
To: Jeff Garzik
Cc: Gentoopower, Mark Lord, Raz Ben-Jehuda(caro),
Linux RAID Mailing List, linux-ide@vger.kernel.org
On Wed, Mar 01 2006, Jeff Garzik wrote:
> Jens Axboe wrote:
> >On Wed, Mar 01 2006, Gentoopower wrote:
> >>P.S. Just waiting to see NCQ support for my nforce system in libata:-)
> >
> >
> >Don't hold your breath, it's unlikely to get supported as nvidia wont
> >open the specs. ahci is a really really nice controller, if you want ncq
> >I suggest going with that. sil is probably the next in line for ncq
> >support.
>
>
> Actually.....
>
> * Old-nvidia is ADMA, and I have docs under NDA
>
> * nvidia themselves say they are uninterested in NCQ support for their
> older ADMA controllers, though they don't mind if I implement it
So it's up to you if it'll happen or not. I'm sure people would
appreciate nforce NCQ support :-)
> * New-nvidia is AHCI, and thus will support NCQ when AHCI does
Great! The sane choice, for both producer and consumer.
> * slight correction to the above: sil24 will do NCQ, I don't think sil does
Ok, it was more of an umbrella sil label, I haven't looked into specific
models.
--
Jens Axboe
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-01 18:53 ` Jens Axboe
@ 2006-03-02 8:14 ` Raz Ben-Jehuda(caro)
2006-03-02 8:18 ` Jens Axboe
0 siblings, 1 reply; 26+ messages in thread
From: Raz Ben-Jehuda(caro) @ 2006-03-02 8:14 UTC (permalink / raw)
To: Jens Axboe
Cc: Jeff Garzik, Gentoopower, Mark Lord, Linux RAID Mailing List,
linux-ide@vger.kernel.org
i can see the NCQ realy bother people.
i am using a promise card sata TX4 150.
does any of you has a patch for the driver
so it would support NCQ ?
On 3/1/06, Jens Axboe <axboe@suse.de> wrote:
> On Wed, Mar 01 2006, Jeff Garzik wrote:
> > Jens Axboe wrote:
> > >On Wed, Mar 01 2006, Gentoopower wrote:
> > >>P.S. Just waiting to see NCQ support for my nforce system in libata:-)
> > >
> > >
> > >Don't hold your breath, it's unlikely to get supported as nvidia wont
> > >open the specs. ahci is a really really nice controller, if you want ncq
> > >I suggest going with that. sil is probably the next in line for ncq
> > >support.
> >
> >
> > Actually.....
> >
> > * Old-nvidia is ADMA, and I have docs under NDA
> >
> > * nvidia themselves say they are uninterested in NCQ support for their
> > older ADMA controllers, though they don't mind if I implement it
>
> So it's up to you if it'll happen or not. I'm sure people would
> appreciate nforce NCQ support :-)
>
> > * New-nvidia is AHCI, and thus will support NCQ when AHCI does
>
> Great! The sane choice, for both producer and consumer.
>
> > * slight correction to the above: sil24 will do NCQ, I don't think sil does
>
> Ok, it was more of an umbrella sil label, I haven't looked into specific
> models.
>
> --
> Jens Axboe
>
>
--
Raz
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-01 16:20 ` Jeff Garzik
2006-03-01 18:53 ` Jens Axboe
@ 2006-03-02 8:18 ` Rafal Krzewski
2006-03-02 11:35 ` Jeff Garzik
1 sibling, 1 reply; 26+ messages in thread
From: Rafal Krzewski @ 2006-03-02 8:18 UTC (permalink / raw)
To: linux-ide
Jeff Garzik wrote:
> * Old-nvidia is ADMA, and I have docs under NDA
>
> * New-nvidia is AHCI, and thus will support NCQ when AHCI does
Pardon my ignorance but which are old- and which are new new-nvidia?
Are there any AHCI based/compliant nv chipsets on the market yet?
thanks,
Rafal
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-02 8:14 ` Raz Ben-Jehuda(caro)
@ 2006-03-02 8:18 ` Jens Axboe
2006-03-02 11:20 ` Jeff Garzik
0 siblings, 1 reply; 26+ messages in thread
From: Jens Axboe @ 2006-03-02 8:18 UTC (permalink / raw)
To: Raz Ben-Jehuda(caro)
Cc: Jeff Garzik, Gentoopower, Mark Lord, Linux RAID Mailing List,
linux-ide@vger.kernel.org
(don't top post)
On Thu, Mar 02 2006, Raz Ben-Jehuda(caro) wrote:
> i can see the NCQ realy bother people.
>
> i am using a promise card sata TX4 150.
> does any of you has a patch for the driver
> so it would support NCQ ?
I don't know of any documentation for the promise cards (or whether they
support NCQ). Does the binary promise driver support NCQ?
Jeff likely knows a lot more.
--
Jens Axboe
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-02 8:18 ` Jens Axboe
@ 2006-03-02 11:20 ` Jeff Garzik
2006-03-02 13:34 ` Raz Ben-Jehuda(caro)
0 siblings, 1 reply; 26+ messages in thread
From: Jeff Garzik @ 2006-03-02 11:20 UTC (permalink / raw)
To: Jens Axboe
Cc: Raz Ben-Jehuda(caro), Gentoopower, Mark Lord,
Linux RAID Mailing List, linux-ide@vger.kernel.org
Jens Axboe wrote:
> (don't top post)
>
> On Thu, Mar 02 2006, Raz Ben-Jehuda(caro) wrote:
>
>>i can see the NCQ realy bother people.
>>
>>i am using a promise card sata TX4 150.
>>does any of you has a patch for the driver
>>so it would support NCQ ?
>
>
> I don't know of any documentation for the promise cards (or whether they
> support NCQ). Does the binary promise driver support NCQ?
>
> Jeff likely knows a lot more.
The "sata2 tx4 150" supports NCQ, and I have docs. "sata tx4 150" does
not support NCQ.
Jeff
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-02 8:18 ` Rafal Krzewski
@ 2006-03-02 11:35 ` Jeff Garzik
2006-03-02 14:29 ` Rafal Krzewski
0 siblings, 1 reply; 26+ messages in thread
From: Jeff Garzik @ 2006-03-02 11:35 UTC (permalink / raw)
To: Rafal Krzewski; +Cc: linux-ide, Andrew Chew
Rafal Krzewski wrote:
> Jeff Garzik wrote:
>
>> * Old-nvidia is ADMA, and I have docs under NDA
>>
>> * New-nvidia is AHCI, and thus will support NCQ when AHCI does
Alas I will be less than helpful:
> Pardon my ignorance but which are old- and which are new new-nvidia?
No idea. I never know board and marketing names, they change daily. I
only know the underlying chipsets.
> Are there any AHCI based/compliant nv chipsets on the market yet?
No idea.
Jeff
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-02 11:20 ` Jeff Garzik
@ 2006-03-02 13:34 ` Raz Ben-Jehuda(caro)
2006-03-02 13:37 ` Jeff Garzik
0 siblings, 1 reply; 26+ messages in thread
From: Raz Ben-Jehuda(caro) @ 2006-03-02 13:34 UTC (permalink / raw)
To: Jeff Garzik
Cc: Jens Axboe, Gentoopower, Mark Lord, Linux RAID Mailing List,
linux-ide@vger.kernel.org
Thank you Mr Garzik.
Is there a list of all drivers and there features they give ?
Raz.
On 3/2/06, Jeff Garzik <jgarzik@pobox.com> wrote:
> Jens Axboe wrote:
> > (don't top post)
> >
> > On Thu, Mar 02 2006, Raz Ben-Jehuda(caro) wrote:
> >
> >>i can see the NCQ realy bother people.
> >>
> >>i am using a promise card sata TX4 150.
> >>does any of you has a patch for the driver
> >>so it would support NCQ ?
> >
> >
> > I don't know of any documentation for the promise cards (or whether they
> > support NCQ). Does the binary promise driver support NCQ?
> >
> > Jeff likely knows a lot more.
>
> The "sata2 tx4 150" supports NCQ, and I have docs. "sata tx4 150" does
> not support NCQ.
>
> Jeff
>
>
>
>
--
Raz
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-02 13:34 ` Raz Ben-Jehuda(caro)
@ 2006-03-02 13:37 ` Jeff Garzik
0 siblings, 0 replies; 26+ messages in thread
From: Jeff Garzik @ 2006-03-02 13:37 UTC (permalink / raw)
To: Raz Ben-Jehuda(caro)
Cc: Jens Axboe, Gentoopower, Mark Lord, Linux RAID Mailing List,
linux-ide@vger.kernel.org
Raz Ben-Jehuda(caro) wrote:
> Thank you Mr Garzik.
> Is there a list of all drivers and there features they give ?
Yes: http://linux-ata.org/sata-status.html
Jeff
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-02 11:35 ` Jeff Garzik
@ 2006-03-02 14:29 ` Rafal Krzewski
0 siblings, 0 replies; 26+ messages in thread
From: Rafal Krzewski @ 2006-03-02 14:29 UTC (permalink / raw)
To: linux-ide
Jeff Garzik wrote:
> Rafal Krzewski wrote:
>> Pardon my ignorance but which are old- and which are new new-nvidia?
>
> No idea. I never know board and marketing names, they change daily. I
> only know the underlying chipsets.
>
>> Are there any AHCI based/compliant nv chipsets on the market yet?
>
> No idea.
Hmm... maybe you could give the names of the undrelying chipsets, and
then I'll try do some googling to map them to marketing names and report
back to the list? I bet a few folks would be interested.
thanks,
Rafal
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-01 13:55 ` Jens Axboe
@ 2006-03-03 21:55 ` Steve Byan
2006-03-03 22:19 ` Jeff Garzik
0 siblings, 1 reply; 26+ messages in thread
From: Steve Byan @ 2006-03-03 21:55 UTC (permalink / raw)
To: Jens Axboe
Cc: Mark Lord, Gentoopower, Raz Ben-Jehuda(caro),
Linux RAID Mailing List, linux-ide@vger.kernel.org
On Mar 1, 2006, at 8:55 AM, Jens Axboe wrote:
> On Wed, Mar 01 2006, Mark Lord wrote:
>> NCQ vs. TCQ: NCQ has a much more efficient low-level protocol,
>> making the host-side (controller, operating-system) quite a bit
>> simpler than with NCQ.
>
> Or in laymens terms - TCQ sucks and NCQ doesn't :-)
> NCQ has many more advantages than TCQ, apart from both a more
> efficient
> low level protocol and ease of implementation. TCQ basically just
> allows
> the drive to do some reordering, it still serializes everything and
> requires too many interrupts.
The problem with TCQ is that the host can't disconnect on writes
after sending the data to the drive but before receiving the status.
The host can only disconnect between sending the command and moving
the data. Consequently TCQ is useless for writes, which is where you
really need it. It works OK for reads. TCQ was really invented as a
way to allow CD-ROM drives to play nice on the same ATA bus as disks.
The reason you need write queuing is for data integrity reasons, not
for performance. ATA disks effectively get command-queuing on writes
even without TCQ and NCQ - they simply park the data in a volatile
RAM cache, tell the host that the data is saved on persistent
storage, and then asynchronously write the queued data to the
physical media. The drive reorders those writes and will gather
sequential writes.
However, note that all filesystems that make even a pretense of
trying to maintain filesystem integrity after a power failure (note
that the Windows NT implementation of FAT32 does not attempt to
maintain filesystem integrity after a power failure) depend on
knowing when data makes it to persistent storage, so they can order
their writes correctly. ATA disk write caching breaks this guarantee.
To restore filesystem integrity on a careful-write filesystem like
most unix filesystems, you have to disable write-caching in the
drive. This causes such a drastic loss of performance (you basically
get only one sequential write per disk revolution), that you must
then implement command-queuing to allow the drive to gather
sequential writes to make the system usable.
As an alternative, if you have a journalling filesystem, you can
leave the disk cache enabled but selectively write-through your
metadata using force-unit-access (FUA).
Regards,
-Steve
--
Steve Byan <smb@egenera.com>
Software Architect
Egenera, Inc.
165 Forest Street
Marlboro, MA 01752
(508) 858-3125
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-03 21:55 ` Steve Byan
@ 2006-03-03 22:19 ` Jeff Garzik
2006-03-04 18:56 ` Steve Byan
0 siblings, 1 reply; 26+ messages in thread
From: Jeff Garzik @ 2006-03-03 22:19 UTC (permalink / raw)
To: Steve Byan
Cc: Jens Axboe, Mark Lord, Gentoopower, Raz Ben-Jehuda(caro),
Linux RAID Mailing List, linux-ide@vger.kernel.org
Steve Byan wrote:
> On Mar 1, 2006, at 8:55 AM, Jens Axboe wrote:
> The problem with TCQ is that the host can't disconnect on writes after
> sending the data to the drive but before receiving the status. The host
> can only disconnect between sending the command and moving the data.
That, but also: The standard PCI IDE hardware interface prevents the
device from selecting command $N's DMA data out of $M active write commands.
With reads, the device has more freedom to process the requests
asynchronously.
> Consequently TCQ is useless for writes, which is where you really need
Agreed.
> it. It works OK for reads. TCQ was really invented as a way to allow
> CD-ROM drives to play nice on the same ATA bus as disks.
Disagree, you are probably thinking about bus disconnect associated with
the overlapped command set? AFAIK TCQ has -never- applied to ATAPI.
> The reason you need write queuing is for data integrity reasons, not
> for performance. ATA disks effectively get command-queuing on writes
> even without TCQ and NCQ - they simply park the data in a volatile RAM
> cache, tell the host that the data is saved on persistent storage, and
> then asynchronously write the queued data to the physical media. The
> drive reorders those writes and will gather sequential writes.
Data integrity -and- performance. Performance increases for all the
standard reasons that an asynchronous pipeline increases performance
over a synchronous one.
The write cache means that requests on the device can be processed
asynchronously, but without NCQ there is still a synchronous bottleneck:
the device<->controller pipe.
> However, note that all filesystems that make even a pretense of trying
> to maintain filesystem integrity after a power failure (note that the
> Windows NT implementation of FAT32 does not attempt to maintain
> filesystem integrity after a power failure) depend on knowing when data
> makes it to persistent storage, so they can order their writes
True.
> correctly. ATA disk write caching breaks this guarantee. To restore
> filesystem integrity on a careful-write filesystem like most unix
> filesystems, you have to disable write-caching in the drive. This
False, as Linux has proven: barriers can be implemented with
flush-cache commands.
Disabling write cache is not your only choice, and using flush-cache
gives you better performance than flat-out disabling the write cache.
Jeff
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-03 22:19 ` Jeff Garzik
@ 2006-03-04 18:56 ` Steve Byan
2006-03-04 19:10 ` Jeff Garzik
0 siblings, 1 reply; 26+ messages in thread
From: Steve Byan @ 2006-03-04 18:56 UTC (permalink / raw)
To: Jeff Garzik
Cc: Jens Axboe, Mark Lord, Gentoopower, Raz Ben-Jehuda(caro),
Linux RAID Mailing List, linux-ide@vger.kernel.org
On Mar 3, 2006, at 5:19 PM, Jeff Garzik wrote:
> Steve Byan wrote:
>> it. It works OK for reads. TCQ was really invented as a way to
>> allow CD-ROM drives to play nice on the same ATA bus as disks.
>
> Disagree, you are probably thinking about bus disconnect associated
> with the overlapped command set?
Yep, I had the two concepts confused. Thanks for the clarification.
Isn't the same bus disconnect used for TCQ, though?
> Data integrity -and- performance. Performance increases for all
> the standard reasons that an asynchronous pipeline increases
> performance over a synchronous one.
>
> The write cache means that requests on the device can be processed
> asynchronously, but without NCQ there is still a synchronous
> bottleneck: the device<->controller pipe.
True, but I think that is fairly small compared to no-write-cache-and-
no-queuing case. Write-caching is the major win; optimizing the data
transfer is only a second-order effect.
>> correctly. ATA disk write caching breaks this guarantee. To
>> restore filesystem integrity on a careful-write filesystem like
>> most unix filesystems, you have to disable write-caching in the
>> drive. This
>
> False, as Linux has proven: barriers can be implemented with flush-
> cache commands.
>
> Disabling write cache is not your only choice, and using flush-
> cache gives you better performance than flat-out disabling the
> write cache.
Yes, you're correct; I neglected to include that option. It's not as
good as real FUA because it flushes the entire cache, not just the
metadata which needs to be written through to the media.
Regards,
-Steve
--
Steve Byan <smb@egenera.com>
Software Architect
Egenera, Inc.
165 Forest Street
Marlboro, MA 01752
(508) 858-3125
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-04 18:56 ` Steve Byan
@ 2006-03-04 19:10 ` Jeff Garzik
2006-03-04 20:23 ` Steve Byan
0 siblings, 1 reply; 26+ messages in thread
From: Jeff Garzik @ 2006-03-04 19:10 UTC (permalink / raw)
To: Steve Byan
Cc: Jens Axboe, Mark Lord, Gentoopower, Raz Ben-Jehuda(caro),
Linux RAID Mailing List, linux-ide@vger.kernel.org
Steve Byan wrote:
>
> On Mar 3, 2006, at 5:19 PM, Jeff Garzik wrote:
>
>> Steve Byan wrote:
>>
>>> it. It works OK for reads. TCQ was really invented as a way to
>>> allow CD-ROM drives to play nice on the same ATA bus as disks.
>>
>>
>> Disagree, you are probably thinking about bus disconnect associated
>> with the overlapped command set?
>
>
> Yep, I had the two concepts confused. Thanks for the clarification.
> Isn't the same bus disconnect used for TCQ, though?
Yes. TCQ still has nothing to do with ATAPI though, which was the main
point of disagreement :) Much to my chagrin, too, since ATAPI could use
some queueing...
>> Data integrity -and- performance. Performance increases for all the
>> standard reasons that an asynchronous pipeline increases performance
>> over a synchronous one.
>>
>> The write cache means that requests on the device can be processed
>> asynchronously, but without NCQ there is still a synchronous
>> bottleneck: the device<->controller pipe.
>
>
> True, but I think that is fairly small compared to no-write-cache-and-
> no-queuing case. Write-caching is the major win; optimizing the data
> transfer is only a second-order effect.
Measurements on NCQ in the field show a distinct performance
improvement... 30% has been measured on Linux. Nothing to sneeze at.
>>> correctly. ATA disk write caching breaks this guarantee. To restore
>>> filesystem integrity on a careful-write filesystem like most unix
>>> filesystems, you have to disable write-caching in the drive. This
>>
>>
>> False, as Linux has proven: barriers can be implemented with flush-
>> cache commands.
>>
>> Disabling write cache is not your only choice, and using flush- cache
>> gives you better performance than flat-out disabling the write cache.
>
>
> Yes, you're correct; I neglected to include that option. It's not as
> good as real FUA because it flushes the entire cache, not just the
> metadata which needs to be written through to the media.
Agreed.
Jeff
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-04 19:10 ` Jeff Garzik
@ 2006-03-04 20:23 ` Steve Byan
2006-03-04 23:56 ` Eric D. Mudama
0 siblings, 1 reply; 26+ messages in thread
From: Steve Byan @ 2006-03-04 20:23 UTC (permalink / raw)
To: Jeff Garzik
Cc: Jens Axboe, Mark Lord, Gentoopower, Raz Ben-Jehuda(caro),
Linux RAID Mailing List, linux-ide@vger.kernel.org
On Mar 4, 2006, at 2:10 PM, Jeff Garzik wrote:
> Steve Byan wrote:
>>> Data integrity -and- performance. Performance increases for all
>>> the standard reasons that an asynchronous pipeline increases
>>> performance over a synchronous one.
>>>
>>> The write cache means that requests on the device can be
>>> processed asynchronously, but without NCQ there is still a
>>> synchronous bottleneck: the device<->controller pipe.
>> True, but I think that is fairly small compared to no-write-cache-
>> and- no-queuing case. Write-caching is the major win; optimizing
>> the data transfer is only a second-order effect.
>
> Measurements on NCQ in the field show a distinct performance
> improvement... 30% has been measured on Linux. Nothing to sneeze at.
Wow! 30% is amazing. I'd be interested in knowing how the costs break
down; are these measurements published anywhere?
Regards,
-Steve
--
Steve Byan <smb@egenera.com>
Software Architect
Egenera, Inc.
165 Forest Street
Marlboro, MA 01752
(508) 858-3125
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-04 20:23 ` Steve Byan
@ 2006-03-04 23:56 ` Eric D. Mudama
2006-03-05 7:19 ` Raz Ben-Jehuda(caro)
0 siblings, 1 reply; 26+ messages in thread
From: Eric D. Mudama @ 2006-03-04 23:56 UTC (permalink / raw)
To: Steve Byan
Cc: Jeff Garzik, Jens Axboe, Mark Lord, Gentoopower,
Raz Ben-Jehuda(caro), Linux RAID Mailing List,
linux-ide@vger.kernel.org
On 3/4/06, Steve Byan <smb@egenera.com> wrote:
> On Mar 4, 2006, at 2:10 PM, Jeff Garzik wrote:
> > Measurements on NCQ in the field show a distinct performance
> > improvement... 30% has been measured on Linux. Nothing to sneeze at.
>
> Wow! 30% is amazing. I'd be interested in knowing how the costs break
> down; are these measurements published anywhere?
Full-stroke random reads with small operations (4k or less) typically
show 75-85% performance improvement, from the ability of a 7200rpm
drive to carve 4ms out of their response time, as well as a huge chunk
of seek distance.
Random writes, since as you said they're already reordered with cache
enabled, don't typically show any sort of increase in desktop
applications.
NCQ FUA writes or NCQ writes with cache disabled should show the same
ballpark performance improvement as random reads in saturated
workloads. Again however, this is for the full-stroke random case.
Local area workloads need to be analyzed more thoroughly, and may
differ in performance gain by manufacturer.
--eric
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-04 23:56 ` Eric D. Mudama
@ 2006-03-05 7:19 ` Raz Ben-Jehuda(caro)
2006-03-05 7:29 ` Jeff Garzik
0 siblings, 1 reply; 26+ messages in thread
From: Raz Ben-Jehuda(caro) @ 2006-03-05 7:19 UTC (permalink / raw)
To: Eric D. Mudama
Cc: Steve Byan, Jeff Garzik, Jens Axboe, Mark Lord, Gentoopower,
Linux RAID Mailing List, linux-ide@vger.kernel.org
Is NCQ supported when setting the controller to JBOD instead of using HW raid?
On 3/5/06, Eric D. Mudama <edmudama@gmail.com> wrote:
> On 3/4/06, Steve Byan <smb@egenera.com> wrote:
> > On Mar 4, 2006, at 2:10 PM, Jeff Garzik wrote:
> > > Measurements on NCQ in the field show a distinct performance
> > > improvement... 30% has been measured on Linux. Nothing to sneeze at.
> >
> > Wow! 30% is amazing. I'd be interested in knowing how the costs break
> > down; are these measurements published anywhere?
>
> Full-stroke random reads with small operations (4k or less) typically
> show 75-85% performance improvement, from the ability of a 7200rpm
> drive to carve 4ms out of their response time, as well as a huge chunk
> of seek distance.
>
> Random writes, since as you said they're already reordered with cache
> enabled, don't typically show any sort of increase in desktop
> applications.
>
> NCQ FUA writes or NCQ writes with cache disabled should show the same
> ballpark performance improvement as random reads in saturated
> workloads. Again however, this is for the full-stroke random case.
> Local area workloads need to be analyzed more thoroughly, and may
> differ in performance gain by manufacturer.
>
> --eric
>
--
Raz
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: NCQ general question
2006-03-05 7:19 ` Raz Ben-Jehuda(caro)
@ 2006-03-05 7:29 ` Jeff Garzik
0 siblings, 0 replies; 26+ messages in thread
From: Jeff Garzik @ 2006-03-05 7:29 UTC (permalink / raw)
To: Raz Ben-Jehuda(caro)
Cc: Eric D. Mudama, Steve Byan, Jens Axboe, Mark Lord, Gentoopower,
Linux RAID Mailing List, linux-ide@vger.kernel.org
Raz Ben-Jehuda(caro) wrote:
> Is NCQ supported when setting the controller to JBOD instead of using HW raid?
1) The two have nothing to do with each other
2) It sounds like you haven't yet read
http://linux-ata.org/faq-sata-raid.html
Jeff
^ permalink raw reply [flat|nested] 26+ messages in thread
end of thread, other threads:[~2006-03-05 7:29 UTC | newest]
Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-03-01 7:04 NCQ general question Raz Ben-Jehuda(caro)
2006-03-01 8:56 ` Gentoopower
2006-03-01 13:49 ` Mark Lord
2006-03-01 13:55 ` Jens Axboe
2006-03-03 21:55 ` Steve Byan
2006-03-03 22:19 ` Jeff Garzik
2006-03-04 18:56 ` Steve Byan
2006-03-04 19:10 ` Jeff Garzik
2006-03-04 20:23 ` Steve Byan
2006-03-04 23:56 ` Eric D. Mudama
2006-03-05 7:19 ` Raz Ben-Jehuda(caro)
2006-03-05 7:29 ` Jeff Garzik
2006-03-01 15:56 ` Gentoopower
2006-03-01 16:05 ` Jens Axboe
2006-03-01 16:20 ` Jeff Garzik
2006-03-01 18:53 ` Jens Axboe
2006-03-02 8:14 ` Raz Ben-Jehuda(caro)
2006-03-02 8:18 ` Jens Axboe
2006-03-02 11:20 ` Jeff Garzik
2006-03-02 13:34 ` Raz Ben-Jehuda(caro)
2006-03-02 13:37 ` Jeff Garzik
2006-03-02 8:18 ` Rafal Krzewski
2006-03-02 11:35 ` Jeff Garzik
2006-03-02 14:29 ` Rafal Krzewski
2006-03-01 16:48 ` Gentoopower
2006-03-01 18:34 ` Mark Lord
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).