From: Vivek Goyal <vgoyal@redhat.com>
To: Jeff Moyer <jmoyer@redhat.com>
Cc: linux-kernel@vger.kernel.org, axboe@kernel.dk, nauman@google.com,
dpshah@google.com, guijianfeng@cn.fujitsu.com,
czoccolo@gmail.com
Subject: Re: [PATCH 1/3] cfq-iosched: Implment IOPS mode
Date: Wed, 21 Jul 2010 16:57:28 -0400 [thread overview]
Message-ID: <20100721205728.GJ20458@redhat.com> (raw)
In-Reply-To: <x497hkod18f.fsf@segfault.boston.devel.redhat.com>
On Wed, Jul 21, 2010 at 04:33:04PM -0400, Jeff Moyer wrote:
> Vivek Goyal <vgoyal@redhat.com> writes:
>
> > o Implement another CFQ mode where we charge queue/group in terms of number
> > of requests dispatched instead of measuring the time. Measuring in terms
> > of time is not possible when we are driving deeper queue depths and there
> > are requests from multiple cfq queues in the request queue.
> >
> > o This mode currently gets activated if one sets slice_idle=0 and associated
> > disk supports NCQ. Again the idea is that on an NCQ disk with idling disabled
> > most of the queues will dispatch 1 or more requests and then cfq queue
> > expiry happens and we don't have a way to measure time. So start providing
> > fairness in terms of IOPS.
> >
> > o Currently this primarily is beneficial with cfq group scheduling where one
> > can disable slice idling so that we don't idle on queue and drive deeper
> > request queue deptsh (achieving better throughput), at the same time group
> > idle is enabled so one should get service differentiation among groups.
>
> I like that this is more isolated now. I'm slowly warming up to it. I
> have one question--just a curiosity, really. What do you see now for
> the reported sl_used in blktrace when slice_idle is zero and the
> hardware supports command queueing?
sl_used, still shows amount of time elapsed since we started dispatch from
the queue. I retained that info because we export that info through cgroup
interface.
Just that charging logic to the group changed where in IOPS mode instead
of charging sl_used, we charge iops. Following is sample output of
blktrace after the patches.
253,0 0 0 0.014157613 0 m N cfq19226S /cgrp7 sl_used=3 disp=1 charge=1 iops=1 sect=8
Here we slice used since dispatch start is 3 jiffies, we dispatched 1
request in this duration. Because we are iops mode (iops=1), we charge
the group for 1 rq and no 3 jiffies. (charge=1). sect shows we dispatched
8 sectors in this duration.
Vivek
>
> Cheers,
> Jeff
next prev parent reply other threads:[~2010-07-21 20:57 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-21 19:06 [RFC PATCH] cfq-iosced: Implement IOPS mode and group_idle tunable V3 Vivek Goyal
2010-07-21 19:06 ` [PATCH 1/3] cfq-iosched: Implment IOPS mode Vivek Goyal
2010-07-21 20:33 ` Jeff Moyer
2010-07-21 20:57 ` Vivek Goyal [this message]
2010-07-21 19:06 ` [PATCH 2/3] cfq-iosched: Implement a tunable group_idle Vivek Goyal
2010-07-21 19:40 ` Jeff Moyer
2010-07-21 20:13 ` Vivek Goyal
2010-07-21 20:54 ` Jeff Moyer
2010-07-21 19:06 ` [PATCH 3/3] cfq-iosched: Print number of sectors dispatched per cfqq slice Vivek Goyal
2010-07-22 5:56 ` [RFC PATCH] cfq-iosced: Implement IOPS mode and group_idle tunable V3 Christoph Hellwig
2010-07-22 14:00 ` Vivek Goyal
2010-07-24 8:51 ` Christoph Hellwig
2010-07-24 9:07 ` Corrado Zoccolo
2010-07-26 14:30 ` Vivek Goyal
2010-07-26 21:21 ` Tuning IO scheduler (Was: Re: [RFC PATCH] cfq-iosced: Implement IOPS mode and group_idle tunable V3) Vivek Goyal
2010-07-26 14:33 ` [RFC PATCH] cfq-iosced: Implement IOPS mode and group_idle tunable V3 Vivek Goyal
2010-07-29 19:57 ` Corrado Zoccolo
2010-07-26 13:51 ` Vivek Goyal
2010-07-22 20:54 ` Vivek Goyal
2010-07-22 7:08 ` Gui Jianfeng
2010-07-22 14:49 ` Vivek Goyal
2010-07-22 23:53 ` Gui Jianfeng
2010-07-26 6:58 ` Gui Jianfeng
2010-07-26 14:10 ` Vivek Goyal
2010-07-27 8:33 ` Gui Jianfeng
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=20100721205728.GJ20458@redhat.com \
--to=vgoyal@redhat.com \
--cc=axboe@kernel.dk \
--cc=czoccolo@gmail.com \
--cc=dpshah@google.com \
--cc=guijianfeng@cn.fujitsu.com \
--cc=jmoyer@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=nauman@google.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