From: Stefan Richter <stefanr@s5r6.in-berlin.de>
To: Jeff Moyer <jmoyer@redhat.com>
Cc: Zubin Dittia <zubin@tintri.com>, linux-kernel@vger.kernel.org
Subject: Re: SSD read latency negatively impacted by large writes (independent of choice of I/O scheduler)
Date: Mon, 02 Nov 2009 16:56:52 +0100 [thread overview]
Message-ID: <4AEF0144.3080505@s5r6.in-berlin.de> (raw)
In-Reply-To: <x49eiohqa06.fsf@segfault.boston.devel.redhat.com>
Jeff Moyer wrote:
> Zubin Dittia <zubin@tintri.com> writes:
[...]
>> about 30 seconds after the write (which is when the write is
>> actually written back to the device from buffer cache), I see a very
>> large spike in read latency: from 200 microseconds to 25 milliseconds.
>> This seems to imply that the writes issued by the scheduler are not
>> being broken up into sufficiently small chunks with interspersed
>> reads; instead, the whole sequential write seems to be getting issued
>> while starving reads during that period.
[...]
>> Playing around with different I/O
>> schedulers and parameters doesn't seem to help at all.
[...]
> I haven't verified your findings, but if what you state is true, then
> you could try tuning max_sectors_kb for your device. Making that
> smaller will decrease the total amount of I/O that can be queued in the
> device at any given time. There's always a trade-off between bandwidth
> and latency, of course.
Maximum transfer size per request is indeed one factor; another one is
queue_depth. With a deep queue, a read request between many write
requests will still be held up by many write requests queued up before
the read request. (Once the scheduler issued the requests to the queue,
it can't reorder the requests any more --- only the disk's firmware
could reorder the requests if it is sophisticated enough and there are
no barriers in the mix.)
When transfer size and queue depth are set different from the default,
the various I/O schedulers should be tested again because then their
behaviors may vary more than before.
--
Stefan Richter
-=====-==--= =-== ---=-
http://arcgraph.de/sr/
prev parent reply other threads:[~2009-11-02 15:57 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-30 23:21 Zubin Dittia
2009-11-02 14:25 ` Jeff Moyer
2009-11-02 15:56 ` Stefan Richter [this message]
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=4AEF0144.3080505@s5r6.in-berlin.de \
--to=stefanr@s5r6.in-berlin.de \
--cc=jmoyer@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=zubin@tintri.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
all inboxes | Powered by JetHome®