Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1712642

Re: [PATCH net-next V2 3/3] tap: XDP support

From "Michael S. Tsirkin" <mst@redhat.com>
Newsgroups linux.kernel
Subject Re: [PATCH net-next V2 3/3] tap: XDP support
Date 2017-08-16 05:50 +0200
Message-ID <ueXvc-1Rc-9@gated-at.bofh.it> (permalink)
References (1 earlier) <udgBZ-315-43@gated-at.bofh.it> <udrnI-1gO-7@gated-at.bofh.it> <uduEV-3fB-3@gated-at.bofh.it> <ueq6f-6jm-31@gated-at.bofh.it> <ueCh3-5tW-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Tue, Aug 15, 2017 at 01:02:05PM +0800, Jason Wang wrote:
> 
> 
> On 2017年08月15日 00:01, Michael S. Tsirkin wrote:
> > On Sat, Aug 12, 2017 at 10:48:49AM +0800, Jason Wang wrote:
> > > 
> > > On 2017年08月12日 07:12, Jakub Kicinski wrote:
> > > > On Fri, 11 Aug 2017 19:41:18 +0800, Jason Wang wrote:
> > > > > This patch tries to implement XDP for tun. The implementation was
> > > > > split into two parts:
> > > > > 
> > > > > - fast path: small and no gso packet. We try to do XDP at page level
> > > > >     before build_skb(). For XDP_TX, since creating/destroying queues
> > > > >     were completely under control of userspace, it was implemented
> > > > >     through generic XDP helper after skb has been built. This could be
> > > > >     optimized in the future.
> > > > > - slow path: big or gso packet. We try to do it after skb was created
> > > > >     through generic XDP helpers.
> > > > > 
> > > > > Test were done through pktgen with small packets.
> > > > > 
> > > > > xdp1 test shows ~41.1% improvement:
> > > > > 
> > > > > Before: ~1.7Mpps
> > > > > After:  ~2.3Mpps
> > > > > 
> > > > > xdp_redirect to ixgbe shows ~60% improvement:
> > > > > 
> > > > > Before: ~0.8Mpps
> > > > > After:  ~1.38Mpps
> > > > > 
> > > > > Suggested-by: Michael S. Tsirkin <mst@redhat.com>
> > > > > Signed-off-by: Jason Wang <jasowang@redhat.com>
> > > > Looks OK to me now :)
> > > > 
> > > > Out of curiosity, you say the build_skb() is for "small packets", and it
> > > > seems you are always reserving the 256B regardless of XDP being
> > > > installed.  Does this have no performance impact on non-XDP case?
> > > Have a test, only less than 1% were noticed which I think could be ignored.
> > > 
> > > Thanks
> > What did you test btw?
> 
> Pktgen
> 
> >   The biggest issue would be with something like
> > UDP with short packets.
> > 
> 
> Note that we do this only when sndbuf is INT_MAX. So this is probably not an
> issue.

I'd expect to see the issue for guest to host when the packets are
queued at a UDP socket in host.

> The only thing matter is more stress to page allocator, but according
> to the result of pktgen it was very small that could be ignored.
> 
> Thanks

Besides guest to host, for bridging in host bigger truesize might affect
byte queue counts as well.

-- 
MST

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

Re: [PATCH net-next V2 3/3] tap: XDP support Jakub Kicinski <kubakici@wp.pl> - 2017-08-12 01:20 +0200
  Re: [PATCH net-next V2 3/3] tap: XDP support Jason Wang <jasowang@redhat.com> - 2017-08-12 04:50 +0200
    Re: [PATCH net-next V2 3/3] tap: XDP support "Michael S. Tsirkin" <mst@redhat.com> - 2017-08-14 18:10 +0200
      Re: [PATCH net-next V2 3/3] tap: XDP support Jason Wang <jasowang@redhat.com> - 2017-08-15 07:10 +0200
        Re: [PATCH net-next V2 3/3] tap: XDP support "Michael S. Tsirkin" <mst@redhat.com> - 2017-08-16 05:50 +0200

csiph-web