From: Thomas Graf <tgraf@suug.ch>
To: Florian Westphal <fw@strlen.de>
Cc: jesse@nicira.com, davem@davemloft.net, dev@openvswitch.org,
netdev@vger.kernel.org, dborkman@redhat.com, ffusco@redhat.com,
fleitner@redhat.com, eric.dumazet@gmail.com,
bhutchings@solarflare.com
Subject: Re: [net-next 3/7] openvswitch: Enable memory mapped Netlink i/o
Date: Sat, 30 Nov 2013 14:04:20 +0000 [thread overview]
Message-ID: <20131130140420.GF4100@casper.infradead.org> (raw)
In-Reply-To: <20131130123549.GH2067@breakpoint.cc>
On 11/30/13 at 01:35pm, Florian Westphal wrote:
> Thomas Graf <tgraf@suug.ch> wrote:
> > Benchmark
> > * pktgen -> ovs internal port
> > * 5M pkts, 5M flows
> > * 4 threads, 8 cores
> >
> > Before:
> > Result: OK: 67418743(c67108212+d310530) usec, 5000000 (9000byte,0frags)
> > 74163pps 5339Mb/sec (5339736000bps) errors: 0
> [..]
> > After:
> > Result: OK: 24229690(c24127165+d102524) usec, 5000000 (9000byte,0frags)
> > 206358pps 14857Mb/sec (14857776000bps) errors: 0
>
> I'm curious. Is the 'old' value with skb_zerocopy() or without?
> Does ovs-vswitchd 'read-access' the entire packet or just e.g. the
> header?
>
> I ask because in netfilter nfqueue tests I could not see any difference
> between 'zerocopy' vs. mmap in the receive-path tests I made a while
> back.
The numbers quoted do not involve any zerocopy at all. It's a pure
original vs. mmap comparison. I expect the numbers to grow even more
once we get rid of the immediate ofpbuf copy in user space.
Zerocopy as implemened right now does not provide much gains on
top of mmap. We have no way yet to inject the skb frags into the
ring so we are forced to copy the data. The mapped skb is simply a
buffer with a tremendous tailroom to the zerocopy code.
Eventually we can find a way to make the skb frags shared and link
them to the ring buffer and avoid the copy. This would especially
make sense if we add GSO support to openvswitch user space as nfqueue
provides and avoid the segmentation before the upcall.
next prev parent reply other threads:[~2013-11-30 14:04 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-30 12:21 [PATCH net-next 0/8 v8] Open vSwitch upcall optimiziations Thomas Graf
2013-11-30 12:21 ` [net-next 1/7] genl: Add genlmsg_new_unicast() for unicast message allocation Thomas Graf
[not found] ` <cover.1385813891.git.tgraf-G/eBtMaohhA@public.gmane.org>
2013-11-30 12:21 ` [net-next 2/7] netlink: Avoid netlink mmap alloc if msg size exceeds frame size Thomas Graf
2013-11-30 12:21 ` [net-next 3/7] openvswitch: Enable memory mapped Netlink i/o Thomas Graf
[not found] ` <9f7f05a726935c434d43d92c2908a997c403725b.1385813891.git.tgraf-G/eBtMaohhA@public.gmane.org>
2013-11-30 12:35 ` Florian Westphal
2013-11-30 14:04 ` Thomas Graf [this message]
2013-12-04 5:45 ` Jesse Gross
2013-11-30 12:21 ` [net-next 4/7] net: Export skb_zerocopy() to zerocopy from one skb to another Thomas Graf
2013-11-30 12:21 ` [net-next 5/7] openvswitch: Allow user space to announce ability to accept unaligned Netlink messages Thomas Graf
2013-11-30 12:21 ` [net-next 6/7] openvswitch: Drop user features if old user space attempted to create datapath Thomas Graf
2013-11-30 12:21 ` [net-next 7/7] openvswitch: Use skb_zerocopy() for upcall Thomas Graf
2013-12-04 5:43 ` Jesse Gross
2013-12-05 21:29 ` Thomas Graf
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=20131130140420.GF4100@casper.infradead.org \
--to=tgraf@suug.ch \
--cc=bhutchings@solarflare.com \
--cc=davem@davemloft.net \
--cc=dborkman@redhat.com \
--cc=dev@openvswitch.org \
--cc=eric.dumazet@gmail.com \
--cc=ffusco@redhat.com \
--cc=fleitner@redhat.com \
--cc=fw@strlen.de \
--cc=jesse@nicira.com \
--cc=netdev@vger.kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).