From: Jens Axboe <axboe@kernel.dk>
To: Tahsin Erdogan <tahsin@google.com>,
Vivek Goyal <vgoyal@redhat.com>,
tytso@mit.edu
Cc: linux-kernel@vger.kernel.org, Nauman Rafique <nauman@google.com>
Subject: Re: [PATCH] block: Make CFQ default to IOPS mode on SSDs
Date: Fri, 05 Jun 2015 19:20:59 -0600 [thread overview]
Message-ID: <55724AFB.70800@kernel.dk> (raw)
In-Reply-To: <CAAeU0aOWaHy+3MnoyPD-wtNyihJB_+3OjjKtK_jOaaCvnoiqDA@mail.gmail.com>
On 06/05/2015 04:58 PM, Tahsin Erdogan wrote:
> On Wed, May 27, 2015 at 1:14 PM, Tahsin Erdogan <tahsin@google.com> wrote:
>> On Tue, May 19, 2015 at 1:55 PM, Tahsin Erdogan <tahsin@google.com> wrote:
>>> CFQ idling causes reduced IOPS throughput on non-rotational disks.
>>> Since disk head seeking is not applicable to SSDs, it doesn't really
>>> help performance by anticipating future near-by IO requests.
>>>
>>> By turning off idling (and switching to IOPS mode), we allow other
>>> processes to dispatch IO requests down to the driver and so increase IO
>>> throughput.
>>>
>>> Following FIO benchmark results were taken on a cloud SSD offering with
>>> idling on and off:
>>>
>>> Idling iops avg-lat(ms) stddev bw
>>> ------------------------------------------------------
>>> On 7054 90.107 38.697 28217KB/s
>>> Off 29255 21.836 11.730 117022KB/s
>>>
>>> fio --name=temp --size=100G --time_based --ioengine=libaio \
>>> --randrepeat=0 --direct=1 --invalidate=1 --verify=0 \
>>> --verify_fatal=0 --rw=randread --blocksize=4k --group_reporting=1 \
>>> --filename=/dev/sdb --runtime=10 --iodepth=64 --numjobs=10
>>>
>>> And the following is from a local SSD run:
>>>
>>> Idling iops avg-lat(ms) stddev bw
>>> ------------------------------------------------------
>>> On 19320 33.043 14.068 77281KB/s
>>> Off 21626 29.465 12.662 86507KB/s
>>>
>>> fio --name=temp --size=5G --time_based --ioengine=libaio \
>>> --randrepeat=0 --direct=1 --invalidate=1 --verify=0 \
>>> --verify_fatal=0 --rw=randread --blocksize=4k --group_reporting=1 \
>>> --filename=/fio_data --runtime=10 --iodepth=64 --numjobs=10
>>>
>>> Reviewed-by: Nauman Rafique <nauman@google.com>
>>> Signed-off-by: Tahsin Erdogan <tahsin@google.com>
>>> ---
>>> block/cfq-iosched.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c
>>> index 5da8e6e..402be01 100644
>>> --- a/block/cfq-iosched.c
>>> +++ b/block/cfq-iosched.c
>>> @@ -4460,7 +4460,7 @@ static int cfq_init_queue(struct request_queue *q, struct elevator_type *e)
>>> cfqd->cfq_slice[1] = cfq_slice_sync;
>>> cfqd->cfq_target_latency = cfq_target_latency;
>>> cfqd->cfq_slice_async_rq = cfq_slice_async_rq;
>>> - cfqd->cfq_slice_idle = cfq_slice_idle;
>>> + cfqd->cfq_slice_idle = blk_queue_nonrot(q) ? 0 : cfq_slice_idle;
>>> cfqd->cfq_group_idle = cfq_group_idle;
>>> cfqd->cfq_latency = 1;
>>> cfqd->hw_tag = -1;
>>> --
>>> 2.2.0.rc0.207.ga3a616c
>>>
>>
>> Ping...
>
> Trying once more..
This one worked :-). I agree, it's probably the sane thing to do, I'll
apply this for 4.2.
--
Jens Axboe
next prev parent reply other threads:[~2015-06-06 1:21 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-19 20:55 [PATCH] block: Make CFQ default to IOPS mode on SSDs Tahsin Erdogan
2015-05-27 20:14 ` Tahsin Erdogan
2015-06-05 22:58 ` Tahsin Erdogan
2015-06-06 1:20 ` Jens Axboe [this message]
2015-06-09 10:18 ` Romain Francoise
2015-06-09 17:42 ` Jens Axboe
2015-06-09 21:54 ` Tahsin Erdogan
2015-06-10 6:44 ` Romain Francoise
2015-06-10 14: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=55724AFB.70800@kernel.dk \
--to=axboe@kernel.dk \
--cc=linux-kernel@vger.kernel.org \
--cc=nauman@google.com \
--cc=tahsin@google.com \
--cc=tytso@mit.edu \
--cc=vgoyal@redhat.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.