linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jeff Garzik <jgarzik@pobox.com>
To: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Cc: Stefan Smietanowski <stesmi@stesmi.com>,
	linux-ide@vger.kernel.org,
	Linux Kernel <linux-kernel@vger.kernel.org>,
	Andrew Morton <akpm@osdl.org>
Subject: Re: [PATCH] speed up SATA
Date: Sat, 27 Mar 2004 18:36:12 -0500	[thread overview]
Message-ID: <40660FEC.8080703@pobox.com> (raw)
In-Reply-To: <200403280032.22180.bzolnier@elka.pw.edu.pl>

Bartlomiej Zolnierkiewicz wrote:
> On Sunday 28 of March 2004 00:04, Stefan Smietanowski wrote:
> 
>>Hi Jeff.
>>
>>
>>>The "lba48" feature in ATA allows for addressing of sectors > 137GB, and
>>>also allows for transfers of up to 64K sector, instead of the
>>>traditional 256 sectors in older ATA.
>>>
>>>libata simply limited all transfers to a 200 sectors (just under the 256
>>>sector limit).  This was mainly being careful, and making sure I had a
>>>solution that worked everywhere.  I also wanted to see how the iommu S/G
>>>stuff would shake out.
>>>
>>>Things seem to be looking pretty good, so it's now time to turn on
>>>lba48-sized transfers.  Most SATA disks will be lba48 anyway, even the
>>>ones smaller than 137GB, for this and other reasons.
>>>
>>>With this simple patch, the max request size goes from 128K to 32MB...
>>>so you can imagine this will definitely help performance.  Throughput
>>>goes up.  Interrupts go down.  Fun for the whole family.
> 
> 
> What about latency?
> 
> What about recently discussed PRD table "limit" of 256 entries?
> 
> AFAIR these are the reasons why IDE driver is currently
> limiting max request size to 1024K on LBA48 disks.

That's the main limitation on request size right now...  libata limits 
S/G table entries to 128[1], so a perfectly aligned, fully merged 
transfer will top out at 8MB.  You don't see that unless you're on a 
totally quiet machine with tons of free, contiguous pages.  So in 
practice it winds up being much smaller, the more loaded the system gets 
(and pagecache gets fragmented).

Latency definitely changes for the default case, but remember that a lot 
of that is writeback, or streaming writes.  Latency-sensitive 
applications already know how to send small or no-wait I/Os, because 
standard pagecache writeback latency is highly variable at best :)

	Jeff




  reply	other threads:[~2004-03-27 23:36 UTC|newest]

Thread overview: 104+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-03-27 22:37 [PATCH] speed up SATA Jeff Garzik
2004-03-27 23:04 ` Stefan Smietanowski
2004-03-27 23:11   ` Jeff Garzik
2004-03-28  7:23     ` Stefan Smietanowski
2004-03-28 15:37       ` Bartlomiej Zolnierkiewicz
2004-03-27 23:32   ` Bartlomiej Zolnierkiewicz
2004-03-27 23:36     ` Jeff Garzik [this message]
2004-03-27 23:40       ` Jeff Garzik
2004-03-28  0:13         ` Bartlomiej Zolnierkiewicz
2004-03-28  0:08           ` Jeff Garzik
2004-03-29 11:42       ` Pavel Machek
2004-03-27 23:37 ` Nick Piggin
2004-03-27 23:44   ` Jeff Garzik
2004-03-27 23:47     ` Nick Piggin
2004-03-27 23:59       ` Jeff Garzik
2004-03-28 14:10         ` Jens Axboe
2004-03-28 17:31           ` Jeff Garzik
2004-03-28 17:35             ` Jens Axboe
2004-03-28 17:48               ` Jeff Garzik
2004-03-28 17:54                 ` Jens Axboe
2004-03-28 18:08                   ` Jamie Lokier
2004-03-28 18:15                     ` Jens Axboe
2004-03-28 18:55                       ` Jeff Garzik
2004-03-29  8:09                         ` Jens Axboe
2004-03-29 12:41                           ` Jamie Lokier
2004-03-29 12:44                             ` Jens Axboe
2004-03-29 12:50                               ` Jamie Lokier
2004-03-29 13:05                               ` Arjan van de Ven
2004-03-29 13:08                                 ` Jens Axboe
2004-03-29 17:19                                 ` Craig I. Hagan
2004-03-29 18:19                           ` Jeff Garzik
2004-03-28 19:06                       ` Jeff Garzik
2004-03-28 18:12                   ` William Lee Irwin III
2004-03-28 18:17                     ` Jens Axboe
2004-03-28 18:30                     ` Bartlomiej Zolnierkiewicz
2004-03-28 18:30                       ` Jens Axboe
2004-03-28 18:45                         ` Bartlomiej Zolnierkiewicz
2004-03-28 18:59                           ` Jeff Garzik
2004-03-28 20:32                             ` Andrew Morton
2004-03-28 20:45                               ` Jeff Garzik
2004-03-29  0:55                             ` Andrea Arcangeli
2004-03-29  4:02                               ` Jeff Garzik
2004-03-29 13:04                                 ` Andrea Arcangeli
2004-03-29 19:45                                   ` Jeff Garzik
2004-03-30 11:09                                     ` Jens Axboe
2004-03-30 15:54                                       ` Timothy Miller
2004-03-30 16:20                                       ` Jeff Garzik
2004-03-30 18:05                                       ` Timothy Miller
2004-03-30 17:50                                         ` Jeff Garzik
2004-03-30 18:19                                           ` Timothy Miller
2004-03-29  4:29                               ` Wim Coekaerts
2004-03-29  7:32                                 ` Denis Vlasenko
2004-03-29  8:13                                 ` Jens Axboe
2004-03-29 13:05                                 ` Andrea Arcangeli
2004-03-29  4:31                               ` William Lee Irwin III
2004-03-29  4:57                               ` Jeff Garzik
2004-03-28 19:52                       ` Nuno Silva
2004-03-28 20:02                         ` Jeff Garzik
2004-03-28  0:06     ` Jeff Garzik
2004-03-28  0:15       ` Nick Piggin
2004-03-28  0:49         ` Jeff Garzik
2004-03-28  1:02           ` Andrew Morton
2004-03-28  1:09             ` Jeff Garzik
2004-03-28 13:59               ` Jens Axboe
2004-03-28 17:29                 ` Jeff Garzik
2004-03-28 17:31                   ` Jens Axboe
2004-03-28 13:51           ` Jamie Lokier
2004-03-28 17:24             ` Jeff Garzik
2004-03-28 17:36               ` Jamie Lokier
2004-03-28 17:54                 ` Jeff Garzik
2004-03-28 20:50                   ` Eric D. Mudama
2004-04-02 10:11                 ` Jeremy Higdon
2004-04-02 16:11                   ` Jamie Lokier
2004-04-03 10:48                     ` Jeremy Higdon
2004-04-03 13:49                       ` Jamie Lokier
2004-03-28 17:40               ` Jens Axboe
2004-03-28 17:49                 ` Jeff Garzik
2004-03-28 17:55                   ` Jens Axboe
2004-03-28 18:04                     ` Jeff Garzik
2004-03-28 18:09                       ` Jens Axboe
2004-03-28 20:12                         ` Jeff Garzik
2004-03-28 20:54                           ` Eric D. Mudama
2004-03-28  7:32       ` Stefan Smietanowski
2004-03-28 20:25         ` Jeff Garzik
2004-03-28 21:16           ` Stefan Smietanowski
2004-03-28 21:26             ` Jeff Garzik
2004-03-28 14:08     ` Jens Axboe
2004-03-28 17:38       ` Jeff Garzik
2004-03-28 17:45         ` Jens Axboe
2004-03-28 20:21       ` Jeff Garzik
2004-03-28  0:07   ` Andrew Morton
2004-03-28  0:21     ` Nick Piggin
2004-03-28  4:40   ` Eric D. Mudama
2004-03-28  6:56     ` Nick Piggin
2004-03-28 20:33       ` Eric D. Mudama
2004-03-28 20:59         ` Eric D. Mudama
2004-03-29  1:30           ` Nick Piggin
2004-03-29  5:24             ` Eric D. Mudama
2004-03-29 13:03               ` Jamie Lokier
2004-03-29 11:36 ` Pavel Machek
2004-03-29 18:46   ` David Lang
2004-03-29 20:13     ` Jeff Garzik
2004-03-30  5:55   ` Eric D. Mudama
2004-03-30 12:16 ` Marc Bevand

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=40660FEC.8080703@pobox.com \
    --to=jgarzik@pobox.com \
    --cc=B.Zolnierkiewicz@elka.pw.edu.pl \
    --cc=akpm@osdl.org \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stesmi@stesmi.com \
    /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).