lkml.org 
[lkml]   [2009]   [Nov]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 05/16] blkio: Implement per cfq group latency target and busy queue avg
    On Fri, Nov 13, 2009 at 07:40:51PM +0100, Corrado Zoccolo wrote:
    > On Fri, Nov 13, 2009 at 5:15 PM, Vivek Goyal <vgoyal@redhat.com> wrote:
    > > On Fri, Nov 13, 2009 at 10:18:15AM -0500, Vivek Goyal wrote:
    > >> On Fri, Nov 13, 2009 at 11:46:49AM +0100, Corrado Zoccolo wrote:
    > >> > On Fri, Nov 13, 2009 at 12:32 AM, Vivek Goyal <vgoyal@redhat.com> wrote:
    > >> > >  static inline void
    > >> > > @@ -441,10 +445,13 @@ cfq_set_prio_slice(struct cfq_data *cfqd, struct cfq_queue *cfqq)
    > >> > >        if (cfqd->cfq_latency) {
    > >> > >                /* interested queues (we consider only the ones with the same
    > >> > >                 * priority class) */
    > >> > This comment needs to be updated
    > >>
    > >> Sure. Will do. Now the interested queues are the one with same priority
    > >> class with-in group.
    > >>
    > >> > >                 * priority class) */
    > >> > > -               unsigned iq = cfq_get_avg_queues(cfqd, cfq_class_rt(cfqq));
    > >> > > +               unsigned iq = cfq_group_get_avg_queues(cfqd, cfqq->cfqg,
    > >> > > +                                               cfq_class_rt(cfqq));
    > >> > >                unsigned sync_slice = cfqd->cfq_slice[1];
    > >> > >                unsigned expect_latency = sync_slice * iq;
    > >> > > -               if (expect_latency > cfq_target_latency) {
    > >> > > +               unsigned group_target_lat = cfq_target_latency/cfqd->nr_groups;
    > >> >
    > >> > I'm not sure that we should divide the target latency evenly among groups.
    > >> > Groups with different weights will have different percentage of time
    > >> > in each 300ms round, so probably we should consider it here.
    > >> >
    > >>
    > >> Taking group weight into account will be more precise thing. So may be
    > >> I can keep track of total weight on the service tree and determine
    > >> group target latency as proportion of total weight.
    > >>
    > >>  group_target_lat = group_weight * cfq_target_latency/total_weight_of_groups
    > >>
    > >
    > > Here is the patch I generated on top of all the patches in series.
    > >
    > > o Determine group target latency in proportion to group weight instead of
    > >  just number of groups.
    >
    > Great.
    > I have only one concern, regarding variable naming:
    > group_target_lat is a bit misleading. The fact is that it will be
    > larger for higher weight groups, so people could ask why are you
    > giving more latency to higher weight group...
    > Actually, it is the group share of the scheduling round, so you should
    > name it accordingly.
    >

    How about "group_slice" ?

    Thanks
    Vivek

    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2009-11-13 20:29    [W:0.033 / U:35.404 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site