From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: Tejun Heo <htejun@gmail.com>
Cc: Michael Tokarev <mjt@tls.msk.ru>,
Richard Scobie <r.scobie@clear.net.nz>,
linux-ide@vger.kernel.org, Jens Axboe <jens.axboe@oracle.com>
Subject: Re: SAS v SATA interface performance
Date: Mon, 10 Dec 2007 08:50:18 -0600 [thread overview]
Message-ID: <1197298218.5169.4.camel@localhost.localdomain> (raw)
In-Reply-To: <475CEBBA.3050409@gmail.com>
On Mon, 2007-12-10 at 16:33 +0900, Tejun Heo wrote:
> There's one thing we can do to improve the situation tho. Several
> drives including raptors and 7200.11s suffer serious performance hit if
> sequential transfer is performed by multiple NCQ commands. My 7200.11
> can do > 100MB/s if non-NCQ command is used or only upto two NCQ
> commands are issued; however, if all 31 (maximum currently supported by
> libata) are used, the transfer rate drops to miserable 70MB/s.
>
> It seems that what we need to do is not issuing too many commands to one
> sequential stream. In fact, there isn't much to gain by issuing more
> than two commands to one sequential stream.
You're entering an area of perennial debate even for SCSI drives. What
we know is that for drives whose firmware elevator doesn't perform very
well is that a lower TCQ depth (2-4) is better than a high one, the only
use tags have being to saturate the transport. For high end arrays and
better performing firmware drives, the situation is much more murky. It
boils down to whose elevator do you trust, the drive/array's or the
kernel's. If the latter, then you want a depth of around 4 and if the
former, you want a depth as high as possible (arrays like 64-128).
Given the way IDE drives are made, I'd bet they fall into the category
of firmware elevator that doesn't perform very well, so you probably
want a low NCQ depth with them (just sufficient to saturate the
transport, but not high enough to allow the drive to make too many head
scheduling decisions).
James
next prev parent reply other threads:[~2007-12-10 14:58 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-30 19:19 SAS v SATA interface performance Richard Scobie
2007-11-30 21:24 ` Michael Tokarev
2007-11-30 23:17 ` Alan Cox
2007-12-01 7:43 ` Richard Scobie
2007-12-01 14:37 ` Greg Freemyer
2007-12-01 19:19 ` Richard Scobie
2007-12-01 20:01 ` Mark Lord
2007-12-01 20:40 ` Jeff Garzik
2007-12-01 23:55 ` Richard Scobie
2007-12-02 3:45 ` Mark Lord
2007-12-02 3:49 ` Mark Lord
2007-12-10 7:33 ` Tejun Heo
2007-12-10 14:36 ` Jens Axboe
2007-12-10 16:28 ` Mark Lord
2007-12-10 14:50 ` James Bottomley [this message]
2007-12-10 16:32 ` Mark Lord
-- strict thread matches above, loose matches on Subject: below --
2007-12-01 0:04 Richard Scobie
2007-12-01 0:17 ` Alan Cox
2007-12-01 3:06 ` Mark Lord
2007-12-10 7:15 ` Tejun Heo
2007-12-10 16:23 ` Mark Lord
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1197298218.5169.4.camel@localhost.localdomain \
--to=james.bottomley@hansenpartnership.com \
--cc=htejun@gmail.com \
--cc=jens.axboe@oracle.com \
--cc=linux-ide@vger.kernel.org \
--cc=mjt@tls.msk.ru \
--cc=r.scobie@clear.net.nz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).