[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <0240746c-1dd1-4822-261c-03ff13854db2@gmail.com>
Date: Thu, 18 Jun 2020 12:00:13 -0700
From: Eric Dumazet <eric.dumazet@...il.com>
To: Paolo Abeni <pabeni@...hat.com>, netdev@...r.kernel.org
Cc: "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>
Subject: Re: [RFC PATCH] net/sched: add indirect call wrapper hint.
On 6/18/20 10:31 AM, Paolo Abeni wrote:
> The sched layer can use several indirect calls per
> packet, with not work-conservative qdisc being
> more affected due to the lack of the BYPASS path.
>
> This change tries to improve the situation using
> the indirect call wrappers infrastructure for the
> qdisc enqueue end dequeue indirect calls.
>
> To cope with non-trivial scenarios, a compile-time know is
> introduced, so that the qdisc used by ICW can be different
> from the default one.
>
> Tested with pktgen over qdisc, with CONFIG_HINT_FQ_CODEL=y:
>
> qdisc threads vanilla patched delta
> nr Kpps Kpps %
> pfifo_fast 1 3300 3700 12
> pfifo_fast 2 3940 4070 3
> fq_codel 1 3840 4110 7
> fq_codel 2 1920 2260 17
> fq 1 2230 2210 -1
> fq 2 1530 1540 1
Hi Paolo
This test is a bit misleading, pktgen has a way to bypass the qdisc.
Real numbers for more typical workloads would be more appealing,
before we consider a quite invasive patch ?
What is the status of static_call infrastructure ?
>
> +#ifndef CODEL_SCOPE
> +#define CODEL_SCOPE static
> +#endif
This looks additional burden, just remove the static attribute,
if a function might be called directly.
Eg, we have EXPORT_SYMBOL() all over the places, even if the modules needing
a symbol might not be compiled at all, or being part of vmlinux.
Thanks !
Powered by blists - more mailing lists