From: Jesper Dangaard Brouer <brouer@redhat.com>
To: Eric Dumazet <eric.dumazet@gmail.com>
Cc: brouer@redhat.com, Paolo Abeni <pabeni@redhat.com>,
netdev <netdev@vger.kernel.org>
Subject: Re: [RFC] udp: some improvements on RX path.
Date: Mon, 5 Dec 2016 16:37:11 +0100 [thread overview]
Message-ID: <20161205163711.44b01c3a@redhat.com> (raw)
In-Reply-To: <1480948133.18162.527.camel@edumazet-glaptop3.roam.corp.google.com>
On Mon, 05 Dec 2016 06:28:53 -0800 Eric Dumazet <eric.dumazet@gmail.com> wrote:
> On Mon, 2016-12-05 at 14:22 +0100, Paolo Abeni wrote:
> >
> > On Sun, 2016-12-04 at 18:43 -0800, Eric Dumazet wrote:
[...]
> > > But I also want to work on the idea I gave few days back, having a
> > > separate queue and use splice to transfer the 'softirq queue' into
> > > a calm queue in a different cache line.
> > >
> > > I expect a 50 % performance increase under load, maybe 1.5 Mpps.
I also have high hopes for such a solution. I'm very excited that you
are working on this! :-)
> > It should work nicely under contention, but won't that increase the
> > overhead for the uncontended/single flow scenario ? the user space
> > reader needs to acquire 2 lock when splicing the 'softirq queue'.
> > On my system ksoftirqd and the u/s process work at similar speeds,
> > so splicing will happen quite often.
>
> Well, the splice would happen only if you have more than one message
> in the softirq queue. So no real overhead for uncontended flow
> scenario.
>
>
> This reminds me of the busylock I added in __dev_xmit_skb(), which
> basically is acquired only when we detect a possible contention on
> qdisc lock.
Do you think the splice technique would, have the same performance
benefit as having a MPMC queue with separate enqueue and dequeue locking?
(like we have with skb_array/ptr_ring that avoids cache bouncing)?
--
Best regards,
Jesper Dangaard Brouer
MSc.CS, Principal Kernel Engineer at Red Hat
LinkedIn: http://www.linkedin.com/in/brouer
next prev parent reply other threads:[~2016-12-05 15:37 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-05 2:43 [RFC] udp: some improvements on RX path Eric Dumazet
2016-12-05 13:22 ` Paolo Abeni
2016-12-05 14:28 ` Eric Dumazet
2016-12-05 15:37 ` Jesper Dangaard Brouer [this message]
2016-12-05 15:54 ` Eric Dumazet
2016-12-05 17:57 ` [PATCH] net/udp: do not touch skb->peeked unless really needed Eric Dumazet
2016-12-06 9:53 ` Paolo Abeni
2016-12-06 12:10 ` Paolo Abeni
2016-12-06 14:35 ` Eric Dumazet
2016-12-06 14:34 ` Eric Dumazet
2016-12-06 10:34 ` Paolo Abeni
2016-12-06 17:08 ` Paolo Abeni
2016-12-06 17:47 ` Eric Dumazet
2016-12-06 18:31 ` Paolo Abeni
2016-12-06 18:58 ` Eric Dumazet
2016-12-06 19:16 ` Paolo Abeni
2016-12-06 19:35 ` Eric Dumazet
2016-12-07 3:32 ` [PATCH net-next] net: sock_rps_record_flow() is for connected sockets Eric Dumazet
2016-12-07 6:47 ` Eric Dumazet
2016-12-07 7:57 ` Paolo Abeni
2016-12-07 14:26 ` Eric Dumazet
2016-12-08 17:49 ` Paolo Abeni
2016-12-07 14:29 ` Eric Dumazet
2016-12-07 15:59 ` Eric Dumazet
2016-12-08 18:50 ` Paolo Abeni
2016-12-08 19:32 ` Eric Dumazet
2016-12-08 19:20 ` Edward Cree
2016-12-08 17:49 ` Tom Herbert
2016-12-08 18:02 ` Eric Dumazet
2016-12-08 19:15 ` Tom Herbert
2016-12-08 20:05 ` Hannes Frederic Sowa
2016-12-08 20:30 ` Tom Herbert
2016-12-08 20:44 ` Tom Herbert
2016-12-08 18:07 ` Eric Dumazet
2016-12-07 7:59 ` Paolo Abeni
2016-12-07 13:58 ` Eric Dumazet
2016-12-07 15:47 ` David Miller
2016-12-07 17:09 ` [PATCH] net/udp: do not touch skb->peeked unless really needed David Laight
2016-12-07 17:32 ` Eric Dumazet
2016-12-07 17:37 ` Hannes Frederic Sowa
2016-12-07 17:52 ` Eric Dumazet
2016-12-07 17:55 ` Eric Dumazet
2016-12-06 15:42 ` David Miller
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=20161205163711.44b01c3a@redhat.com \
--to=brouer@redhat.com \
--cc=eric.dumazet@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
/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.