From: Vivek Goyal <vgoyal@redhat.com>
To: Ryo Tsuruta <ryov@valinux.co.jp>
Cc: riel@redhat.com, guijianfeng@cn.fujitsu.com,
linux-kernel@vger.kernel.org, jmoyer@redhat.com,
dm-devel@redhat.com, jens.axboe@oracle.com, nauman@google.com,
akpm@linux-foundation.org, agk@redhat.com,
balbir@linux.vnet.ibm.com
Subject: Re: Regarding dm-ioband tests
Date: Tue, 8 Sep 2009 09:42:44 -0400 [thread overview]
Message-ID: <20090908134244.GA15974@redhat.com> (raw)
In-Reply-To: <20090908.120119.71095369.ryov@valinux.co.jp>
On Tue, Sep 08, 2009 at 12:01:19PM +0900, Ryo Tsuruta wrote:
> Hi Rik,
>
> Rik van Riel <riel@redhat.com> wrote:
> > Ryo Tsuruta wrote:
> >
> > > However, if you want to get fairness in a case like this, a new
> > > bandwidth control policy which controls accurately according to
> > > assigned weights can be added to dm-ioband.
> >
> > Are you saying that dm-ioband is purposely unfair,
> > until a certain load level is reached?
>
> Not unfair, dm-ioband(weight policy) is intentionally designed to
> use bandwidth efficiently, weight policy tries to give spare bandwidth
> of inactive groups to active groups.
>
This group is running a sequential reader. How can you call it an inactive
group?
I think that whole problem is that like CFQ you have not taken care of
idling into account.
Your solution seems to be designed only for processes doing bulk IO over
a very long period of time. I think it limits the usefulness of solution
severely.
> > > We regarded reducing throughput loss rather than reducing duration
> > > as the design of dm-ioband. Of course, it is possible to make a new
> > > policy which reduces duration.
> >
> > ... while also reducing overall system throughput
> > by design?
>
> I think it reduces system throughput compared to the current
> implementation, because it causes more overhead to do fine grained
> control.
>
> > Why are you even bothering to submit this to the
> > linux-kernel mailing list, when there is a codebase
> > available that has no throughput or fairness regressions?
> > (Vivek's io scheduler based io controler)
>
> I think there are some advantages to dm-ioband. That's why I post
> dm-ioband to the mailing list.
>
> - dm-ioband supports not only proportional weight policy but also rate
> limiting policy. Besides, new policies can be added to dm-ioband if
> a user wants to control bandwidth by his or her own policy.
I think we can easily extent io scheduler based controller to also support
max rate per group policy also. That should not be too hard. It is a
matter of only keeping track of io rate per group and if a group is
exceeding the rate, then schedule it out and move on to next group.
I can do that once proportional weight solution is stablized and gets
merged.
So its not an advantage of dm-ioband.
> - The dm-ioband driver can be replaced without stopping the system by
> using device-mapper's facility. It's easy to maintain.
We talked about this point in the past also. In io scheduler based
controller, just move all the tasks to root group and you got a system
not doing any io control.
By the way why would one like to do that?
So this is also not an advantage.
> - dm-ioband can use without cgroup. (I remember Vivek said it's not an
> advantage.)
I think this is more of a disadvantage than advantage. We have a very well
defined functionality of cgroup in kernel to group the tasks. Now you are
coming up with your own method of grouping the tasks which will make life
even more confusing for users and application writers.
I don't understand what is that core requirement of yours which is not met
by io scheduler based io controller. range policy control you have
implemented recently. I don't think that removing dm-ioband module
dynamically is core requirement. Also whatever you can do with additional
grouping mechanism, you can do with cgroup also.
So if there is any of your core functionality which is not fulfilled by
io scheduler based controller, please let me know. I will be happy to look
into it and try to provide that feature. But looking at above list, I am
not convinced that any of the above is a compelling argument for dm-ioband
inclusion.
Thanks
Vivek
WARNING: multiple messages have this Message-ID (diff)
From: Vivek Goyal <vgoyal@redhat.com>
To: Ryo Tsuruta <ryov@valinux.co.jp>
Cc: riel@redhat.com, linux-kernel@vger.kernel.org,
dm-devel@redhat.com, jens.axboe@oracle.com, agk@redhat.com,
akpm@linux-foundation.org, nauman@google.com,
guijianfeng@cn.fujitsu.com, jmoyer@redhat.com,
balbir@linux.vnet.ibm.com
Subject: Re: Regarding dm-ioband tests
Date: Tue, 8 Sep 2009 09:42:44 -0400 [thread overview]
Message-ID: <20090908134244.GA15974@redhat.com> (raw)
In-Reply-To: <20090908.120119.71095369.ryov@valinux.co.jp>
On Tue, Sep 08, 2009 at 12:01:19PM +0900, Ryo Tsuruta wrote:
> Hi Rik,
>
> Rik van Riel <riel@redhat.com> wrote:
> > Ryo Tsuruta wrote:
> >
> > > However, if you want to get fairness in a case like this, a new
> > > bandwidth control policy which controls accurately according to
> > > assigned weights can be added to dm-ioband.
> >
> > Are you saying that dm-ioband is purposely unfair,
> > until a certain load level is reached?
>
> Not unfair, dm-ioband(weight policy) is intentionally designed to
> use bandwidth efficiently, weight policy tries to give spare bandwidth
> of inactive groups to active groups.
>
This group is running a sequential reader. How can you call it an inactive
group?
I think that whole problem is that like CFQ you have not taken care of
idling into account.
Your solution seems to be designed only for processes doing bulk IO over
a very long period of time. I think it limits the usefulness of solution
severely.
> > > We regarded reducing throughput loss rather than reducing duration
> > > as the design of dm-ioband. Of course, it is possible to make a new
> > > policy which reduces duration.
> >
> > ... while also reducing overall system throughput
> > by design?
>
> I think it reduces system throughput compared to the current
> implementation, because it causes more overhead to do fine grained
> control.
>
> > Why are you even bothering to submit this to the
> > linux-kernel mailing list, when there is a codebase
> > available that has no throughput or fairness regressions?
> > (Vivek's io scheduler based io controler)
>
> I think there are some advantages to dm-ioband. That's why I post
> dm-ioband to the mailing list.
>
> - dm-ioband supports not only proportional weight policy but also rate
> limiting policy. Besides, new policies can be added to dm-ioband if
> a user wants to control bandwidth by his or her own policy.
I think we can easily extent io scheduler based controller to also support
max rate per group policy also. That should not be too hard. It is a
matter of only keeping track of io rate per group and if a group is
exceeding the rate, then schedule it out and move on to next group.
I can do that once proportional weight solution is stablized and gets
merged.
So its not an advantage of dm-ioband.
> - The dm-ioband driver can be replaced without stopping the system by
> using device-mapper's facility. It's easy to maintain.
We talked about this point in the past also. In io scheduler based
controller, just move all the tasks to root group and you got a system
not doing any io control.
By the way why would one like to do that?
So this is also not an advantage.
> - dm-ioband can use without cgroup. (I remember Vivek said it's not an
> advantage.)
I think this is more of a disadvantage than advantage. We have a very well
defined functionality of cgroup in kernel to group the tasks. Now you are
coming up with your own method of grouping the tasks which will make life
even more confusing for users and application writers.
I don't understand what is that core requirement of yours which is not met
by io scheduler based io controller. range policy control you have
implemented recently. I don't think that removing dm-ioband module
dynamically is core requirement. Also whatever you can do with additional
grouping mechanism, you can do with cgroup also.
So if there is any of your core functionality which is not fulfilled by
io scheduler based controller, please let me know. I will be happy to look
into it and try to provide that feature. But looking at above list, I am
not convinced that any of the above is a compelling argument for dm-ioband
inclusion.
Thanks
Vivek
next prev parent reply other threads:[~2009-09-08 13:42 UTC|newest]
Thread overview: 80+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-01 16:50 Regarding dm-ioband tests Vivek Goyal
2009-09-01 16:50 ` Vivek Goyal
2009-09-01 17:47 ` Vivek Goyal
2009-09-01 17:47 ` Vivek Goyal
2009-09-03 13:11 ` Vivek Goyal
2009-09-03 13:11 ` Vivek Goyal
2009-09-04 1:12 ` Ryo Tsuruta
2009-09-15 21:40 ` dm-ioband fairness in terms of sectors seems to be killing disk (Was: Re: Regarding dm-ioband tests) Vivek Goyal
2009-09-15 21:40 ` Vivek Goyal
2009-09-16 11:10 ` dm-ioband fairness in terms of sectors seems to be killing disk Ryo Tsuruta
2009-09-16 11:10 ` Ryo Tsuruta
2009-09-04 4:02 ` Regarding dm-ioband tests Ryo Tsuruta
2009-09-04 4:02 ` Ryo Tsuruta
2009-09-04 23:11 ` Vivek Goyal
2009-09-04 23:11 ` Vivek Goyal
2009-09-07 11:02 ` Ryo Tsuruta
2009-09-07 11:02 ` Ryo Tsuruta
2009-09-07 13:53 ` Rik van Riel
2009-09-07 13:53 ` Rik van Riel
2009-09-08 3:01 ` Ryo Tsuruta
2009-09-08 3:01 ` Ryo Tsuruta
2009-09-08 3:22 ` Balbir Singh
2009-09-08 3:22 ` Balbir Singh
2009-09-08 5:05 ` Ryo Tsuruta
2009-09-08 5:05 ` Ryo Tsuruta
2009-09-08 13:49 ` Vivek Goyal
2009-09-08 13:49 ` Vivek Goyal
2009-09-09 5:17 ` Ryo Tsuruta
2009-09-09 5:17 ` Ryo Tsuruta
2009-09-09 13:34 ` Vivek Goyal
2009-09-09 13:34 ` Vivek Goyal
2009-09-08 13:42 ` Vivek Goyal [this message]
2009-09-08 13:42 ` Vivek Goyal
2009-09-08 16:30 ` Nauman Rafique
2009-09-08 16:30 ` Nauman Rafique
2009-09-08 16:47 ` Rik van Riel
2009-09-08 16:47 ` Rik van Riel
2009-09-08 17:54 ` Vivek Goyal
2009-09-08 17:54 ` Vivek Goyal
2009-09-15 23:37 ` ioband: Writer starves reader even without competitors (Re: Regarding dm-ioband tests) Vivek Goyal
2009-09-15 23:37 ` Vivek Goyal
2009-09-16 12:08 ` ioband: Writer starves reader even without competitors Ryo Tsuruta
2009-09-08 17:06 ` Regarding dm-ioband tests Dhaval Giani
2009-09-09 6:05 ` Ryo Tsuruta
2009-09-09 6:05 ` Ryo Tsuruta
2009-09-09 10:51 ` Dhaval Giani
2009-09-10 7:58 ` Ryo Tsuruta
2009-09-10 7:58 ` Ryo Tsuruta
2009-09-11 9:53 ` Dhaval Giani
2009-09-15 15:12 ` Ryo Tsuruta
2009-09-15 15:12 ` Ryo Tsuruta
2009-09-15 15:19 ` Balbir Singh
2009-09-15 15:19 ` Balbir Singh
2009-09-15 15:58 ` Rik van Riel
2009-09-15 15:58 ` Rik van Riel
2009-09-15 16:21 ` Ryo Tsuruta
2009-09-15 16:21 ` Ryo Tsuruta
2009-09-09 13:57 ` Vivek Goyal
2009-09-09 13:57 ` Vivek Goyal
2009-09-10 3:06 ` Ryo Tsuruta
2009-09-09 10:01 ` Ryo Tsuruta
2009-09-09 14:31 ` Vivek Goyal
2009-09-09 14:31 ` Vivek Goyal
2009-09-10 3:45 ` Ryo Tsuruta
2009-09-10 13:25 ` Vivek Goyal
2009-09-10 13:25 ` Vivek Goyal
2009-09-08 19:24 ` Rik van Riel
2009-09-08 19:24 ` Rik van Riel
2009-09-09 0:09 ` Fabio Checconi
2009-09-09 2:06 ` Vivek Goyal
2009-09-09 2:06 ` Vivek Goyal
2009-09-09 15:41 ` Fabio Checconi
2009-09-09 17:30 ` Vivek Goyal
2009-09-09 17:30 ` Vivek Goyal
2009-09-09 19:01 ` Fabio Checconi
2009-09-09 9:24 ` Ryo Tsuruta
2009-09-09 9:24 ` Ryo Tsuruta
2009-09-16 4:45 ` ioband: Limited fairness and weak isolation between groups (Was: Re: Regarding dm-ioband tests) Vivek Goyal
2009-09-16 4:45 ` Vivek Goyal
2009-09-18 7:33 ` ioband: Limited fairness and weak isolation between groups Ryo Tsuruta
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=20090908134244.GA15974@redhat.com \
--to=vgoyal@redhat.com \
--cc=agk@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=balbir@linux.vnet.ibm.com \
--cc=dm-devel@redhat.com \
--cc=guijianfeng@cn.fujitsu.com \
--cc=jens.axboe@oracle.com \
--cc=jmoyer@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=nauman@google.com \
--cc=riel@redhat.com \
--cc=ryov@valinux.co.jp \
/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.