From: Jeff Garzik <jeff@garzik.org>
To: Mark Hahn <hahn@physics.mcmaster.ca>
Cc: linux-ide@vger.kernel.org, Jens Axboe <axboe@suse.de>,
Andrew Morton <akpm@osdl.org>
Subject: Re: ahci problems with sata disk.
Date: Tue, 16 Jan 2007 17:10:42 -0500 [thread overview]
Message-ID: <45AD4D62.5010308@garzik.org> (raw)
In-Reply-To: <Pine.LNX.4.64.0701161504050.18469@coffee.psychology.mcmaster.ca>
Mark Hahn wrote:
>>>> I though that NCQ was intended to increase performance ??
>
> intended to increase _sales_ performance ;)
Yep.
> remember that you've always had command queueing (kernel elevator): the
> main difference with NCQ (or SCSI tagged queueing) is when
> the disk can out-schedule the kernel. afaikt, this means sqeezing
> in a rotationally intermediate request along the way.
>
> that intermediate request must be fairly small and should be a read
> (for head-settling reasons).
>
> I wonder how often this happens in the real world, given the relatively
> small queues the disk has to work with.
ISTR either Jens or Andrew ran some numbers, and found that there was
little utility beyond 4 or 8 tags or so.
>> My hdparm test is a sequential read-ahead test, so it will
>> naturally perform worse on a Raptor when NCQ is on.
>
> that's a surprisingly naive heuristic, especially since NCQ is concerned
> with just a max of ~4MB of reads, only a smallish
> fraction of the available cache.
NCQ mainly helps with multiple threads doing reads. Writes are largely
asynchronous to the user already (except for fsync-style writes). You
want to be able to stuff the disk's internal elevator with as many read
requests as possible, because reads are very often synchronous -- most
apps (1) read a block, (2) do something, (3) goto step #1. The kernel's
elevator isn't much use in these cases.
Jeff
next prev parent reply other threads:[~2007-01-16 22:10 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-01-14 14:32 ahci problems with sata disk kenneth johansson
2007-01-15 9:13 ` Tejun Heo
2007-01-15 11:05 ` kenneth johansson
2007-01-15 11:36 ` Alan
2007-01-15 13:50 ` Tejun Heo
2007-01-16 1:43 ` kenneth johansson
2007-01-16 16:44 ` Andrew Lyon
2007-01-16 18:32 ` Mark Lord
2007-01-16 20:20 ` Mark Hahn
2007-01-16 22:10 ` Jeff Garzik [this message]
2007-01-16 22:26 ` Eric D. Mudama
2007-01-17 22:03 ` Jens Axboe
2007-01-17 22:03 ` Jens Axboe
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=45AD4D62.5010308@garzik.org \
--to=jeff@garzik.org \
--cc=akpm@osdl.org \
--cc=axboe@suse.de \
--cc=hahn@physics.mcmaster.ca \
--cc=linux-ide@vger.kernel.org \
/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).