Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-06 Thread Vivek Goyal
On Fri, May 03, 2013 at 04:54:55PM -0700, Tejun Heo wrote: > Hey, > > On Fri, May 03, 2013 at 05:05:13PM -0400, Vivek Goyal wrote: > > Following inline patch implements transferring child's start time to > > parent, if parent slice had expired at the time of bio migration. > > > > I does seem to

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-03 Thread Tejun Heo
Hey, On Fri, May 03, 2013 at 05:05:13PM -0400, Vivek Goyal wrote: > Following inline patch implements transferring child's start time to > parent, if parent slice had expired at the time of bio migration. > > I does seem to help a lot on my machine. Can you please give it a try. Cool, will give

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-03 Thread Vivek Goyal
On Fri, May 03, 2013 at 12:14:18PM -0700, Tejun Heo wrote: > On Fri, May 03, 2013 at 03:08:23PM -0400, Vivek Goyal wrote: > > T1 T2 T3 T4 T5 T6 T7 > > parent: b1 b2 b3 b4 b5 > > child: b1 b2

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-03 Thread Vivek Goyal
On Fri, May 03, 2013 at 12:14:18PM -0700, Tejun Heo wrote: > On Fri, May 03, 2013 at 03:08:23PM -0400, Vivek Goyal wrote: > > T1 T2 T3 T4 T5 T6 T7 > > parent: b1 b2 b3 b4 b5 > > child: b1 b2

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-03 Thread Tejun Heo
On Fri, May 03, 2013 at 03:08:23PM -0400, Vivek Goyal wrote: > T1 T2 T3 T4 T5 T6 T7 > parent: b1 b2 b3 b4 b5 > child:b1 b2 b3 b4 b5 > > > So continuity b

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-03 Thread Vivek Goyal
On Fri, May 03, 2013 at 11:57:51AM -0700, Tejun Heo wrote: [..] > > # set limit to 100 bytes/second both in parent and child cgroup > > # dd if=/dev/vdb of=/dev/null iflag=direct > > > > I will capture blktrace and analyze it though to understand better > > what's happening. > > Try using la

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-03 Thread Tejun Heo
On Fri, May 03, 2013 at 11:57:51AM -0700, Tejun Heo wrote: > On Fri, May 03, 2013 at 01:56:52PM -0400, Vivek Goyal wrote: > > > Yeah, I think that's what *should* be happening but not what I'm > > > seeing. I'm seeing ~15% penalty. > > > > What test are you running. I am running a simple dd with

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-03 Thread Tejun Heo
On Fri, May 03, 2013 at 01:56:52PM -0400, Vivek Goyal wrote: > > Yeah, I think that's what *should* be happening but not what I'm > > seeing. I'm seeing ~15% penalty. > > What test are you running. I am running a simple dd with directIO and > I am not seeing any penalty. Combination of dd and a

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-03 Thread Vivek Goyal
On Thu, May 02, 2013 at 04:13:07PM -0700, Tejun Heo wrote: > Hello, Vivek. > > On Thu, May 02, 2013 at 03:31:39PM -0400, Vivek Goyal wrote: > > I think my example was little flawed previously. I think you are right. > > Penalty is not probably as bad as I have been thinking. > > > > So if both pa

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-02 Thread Tejun Heo
Hello, Vivek. On Thu, May 02, 2013 at 03:31:39PM -0400, Vivek Goyal wrote: > I think my example was little flawed previously. I think you are right. > Penalty is not probably as bad as I have been thinking. > > So if both parent and child have limit of 1MB/s and application is doing > IO (say at

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-02 Thread Vivek Goyal
On Thu, May 02, 2013 at 12:11:30PM -0700, Tejun Heo wrote: > Hey, > > > On Thu, May 2, 2013 at 12:07 PM, Vivek Goyal wrote: > > It should not. Why do you think in flat model an application which > > throttles itself will be penalized. > > > > So application issue an bio of size 1MB in a group of

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-02 Thread Tejun Heo
Hey, On Thu, May 2, 2013 at 12:07 PM, Vivek Goyal wrote: > It should not. Why do you think in flat model an application which > throttles itself will be penalized. > > So application issue an bio of size 1MB in a group of rate 1MB/s. bio > gets queued and gets dispatched after 1 second. Almost i

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-02 Thread Vivek Goyal
On Thu, May 02, 2013 at 11:49:53AM -0700, Tejun Heo wrote: > Hello, > > On Thu, May 02, 2013 at 02:45:14PM -0400, Vivek Goyal wrote: > > I did not understand this point. In flat model, application issuing > > at configured page will not get penalized. > > > > This penalty is coming from the fact

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-02 Thread Vivek Goyal
On Thu, May 02, 2013 at 11:44:26AM -0700, Tejun Heo wrote: [..] > Also, if you're actually thinking about reimplementing blk-throttle, > please do consider the followings. > > * Currently, blk-throttle doesn't throttle the number of bios being > queued. Note that this breaks the basic back-pre

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-02 Thread Tejun Heo
Hello, On Thu, May 02, 2013 at 02:45:14PM -0400, Vivek Goyal wrote: > I did not understand this point. In flat model, application issuing > at configured page will not get penalized. > > This penalty is coming from the fact that we are moving bios after the > wait and make them wait in another qu

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-02 Thread Vivek Goyal
On Thu, May 02, 2013 at 11:29:33AM -0700, Tejun Heo wrote: > Hello, Vivek. > > On Thu, May 02, 2013 at 02:17:48PM -0400, Vivek Goyal wrote: > > Sorry, did not understand how did you arrive at 15% penalty. I think > > in worst case it will be 50%. Assume size of bio is 1MB. So it will > > Oh, that

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-02 Thread Tejun Heo
Hello, Vivek. On Thu, May 02, 2013 at 02:08:15PM -0400, Vivek Goyal wrote: > G1 > / \ > T1 G2 > | > T2 > > G1 and G2 are 2 groups and T1 and T2 are tasks in groups respectively. > Assu

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-02 Thread Tejun Heo
Hello, Vivek. On Thu, May 02, 2013 at 02:17:48PM -0400, Vivek Goyal wrote: > Sorry, did not understand how did you arrive at 15% penalty. I think > in worst case it will be 50%. Assume size of bio is 1MB. So it will Oh, that's the number I got by running test. > wait for 1 second in child group

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-02 Thread Vivek Goyal
On Thu, May 02, 2013 at 10:57:01AM -0700, Tejun Heo wrote: > Hey, Vivek. > > On Thu, May 02, 2013 at 01:34:28PM -0400, Vivek Goyal wrote: > > On Wed, May 01, 2013 at 05:39:18PM -0700, Tejun Heo wrote: > > > > [..] > > > While this patchset contains many patches, the implementation is > > > pretty

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-02 Thread Vivek Goyal
On Thu, May 02, 2013 at 01:34:28PM -0400, Vivek Goyal wrote: > On Wed, May 01, 2013 at 05:39:18PM -0700, Tejun Heo wrote: > > [..] > > While this patchset contains many patches, the implementation is > > pretty straight-forward. throtl_grp's form a tree anchored at > > throtl_data and bios climb

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-02 Thread Tejun Heo
Hey, Vivek. On Thu, May 02, 2013 at 01:34:28PM -0400, Vivek Goyal wrote: > On Wed, May 01, 2013 at 05:39:18PM -0700, Tejun Heo wrote: > > [..] > > While this patchset contains many patches, the implementation is > > pretty straight-forward. throtl_grp's form a tree anchored at > > throtl_data an

Re: [PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-02 Thread Vivek Goyal
On Wed, May 01, 2013 at 05:39:18PM -0700, Tejun Heo wrote: [..] > While this patchset contains many patches, the implementation is > pretty straight-forward. throtl_grp's form a tree anchored at > throtl_data and bios climb the tree as they get dispatched at each > level. The bios which reach th

[PATCHSET] blk-throttle: implement proper hierarchy support

2013-05-01 Thread Tejun Heo
blk-throttle is the last controller with broken hierarchy support making blkcg the last one tagged with .broken_hierarchy. This patchset implements hierarchy support for blk-throttle. The semantics is pretty simple - limits on an intermediate node applies to the whole subtree and the statistics r