[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CANn89iKU5G-vEPkLFY9vGyNBEA-G6msGiPJqiBNAcw4nNXoSbg@mail.gmail.com>
Date: Tue, 29 Oct 2024 17:53:03 +0100
From: Eric Dumazet <edumazet@...gle.com>
To: Paolo Abeni <pabeni@...hat.com>
Cc: chia-yu.chang@...ia-bell-labs.com, netdev@...r.kernel.org,
davem@...emloft.net, stephen@...workplumber.org, jhs@...atatu.com,
kuba@...nel.org, dsahern@...nel.org, ij@...nel.org, ncardwell@...gle.com,
koen.de_schepper@...ia-bell-labs.com, g.white@...lelabs.com,
ingemar.s.johansson@...csson.com, mirja.kuehlewind@...csson.com,
cheshire@...le.com, rs.ietf@....at, Jason_Livingood@...cast.com,
vidhi_goel@...le.com, Olga Albisser <olga@...isser.org>,
Olivier Tilmans <olivier.tilmans@...ia.com>, Henrik Steen <henrist@...rist.net>,
Bob Briscoe <research@...briscoe.net>
Subject: Re: [PATCH v4 net-next 1/1] sched: Add dualpi2 qdisc
On Tue, Oct 29, 2024 at 1:56 PM Paolo Abeni <pabeni@...hat.com> wrote:
>
> On 10/22/24 00:12, chia-yu.chang@...ia-bell-labs.com wrote:
> > +/* Default alpha/beta values give a 10dB stability margin with max_rtt=100ms. */
> > +static void dualpi2_reset_default(struct dualpi2_sched_data *q)
> > +{
> > + q->sch->limit = 10000; /* Max 125ms at 1Gbps */
> > +
> > + q->pi2.target = 15 * NSEC_PER_MSEC;
> > + q->pi2.tupdate = 16 * NSEC_PER_MSEC;
> > + q->pi2.alpha = dualpi2_scale_alpha_beta(41); /* ~0.16 Hz * 256 */
> > + q->pi2.beta = dualpi2_scale_alpha_beta(819); /* ~3.20 Hz * 256 */
> > +
> > + q->step.thresh = 1 * NSEC_PER_MSEC;
> > + q->step.in_packets = false;
> > +
> > + dualpi2_calculate_c_protection(q->sch, q, 10); /* wc=10%, wl=90% */
> > +
> > + q->ecn_mask = INET_ECN_ECT_1;
> > + q->coupling_factor = 2; /* window fairness for equal RTTs */
> > + q->drop_overload = true; /* Preserve latency by dropping */
> > + q->drop_early = false; /* PI2 drops on dequeue */
> > + q->split_gso = true;
>
> This is a very unexpected default. Splitting GSO packets earlier WRT the
> H/W constaints definitely impact performances in a bad way.
>
> Under which condition this is expected to give better results?
> It should be at least documented clearly.
I agree, it is very strange to see this orthogonal feature being
spread in some qdisc.
Also, it seems this qdisc could be a mere sch_prio queue, with two
sch_pie children, or two sch_fq or sch_fq_codel ?
Many of us are using fq_codel or fq, there is no way we can switch to
dualpi2 just to experiment things.
Powered by blists - more mailing lists