[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1353943798.11754.233.camel@localhost>
Date: Mon, 26 Nov 2012 16:29:58 +0100
From: Jesper Dangaard Brouer <brouer@...hat.com>
To: Eric Dumazet <eric.dumazet@...il.com>
Cc: "David S. Miller" <davem@...emloft.net>,
Florian Westphal <fw@...len.de>, netdev@...r.kernel.org,
Pablo Neira Ayuso <pablo@...filter.org>,
Thomas Graf <tgraf@...g.ch>, Cong Wang <amwang@...hat.com>,
Patrick McHardy <kaber@...sh.net>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
Herbert Xu <herbert@...dor.hengli.com.au>
Subject: Re: [RFC net-next PATCH V1 0/9] net: fragmentation performance
scalability on NUMA/SMP systems
On Mon, 2012-11-26 at 07:15 -0800, Eric Dumazet wrote:
> On Mon, 2012-11-26 at 15:42 +0100, Jesper Dangaard Brouer wrote:
> > On Sun, 2012-11-25 at 08:11 -0800, Eric Dumazet wrote:
> > > On Sun, 2012-11-25 at 09:53 +0100, Jesper Dangaard Brouer wrote:
> > >
> > > > Yes, for the default large 64k packets size, its just a "fake"
> > > > benchmark. And notice with my fixes, we are even faster than the
> > > > none-frag/single-UDP packet case... but its because we are getting a
> > > > GSO/GRO effect.
> > >
> > > Could you elaborate on this GSO/GRO effect ?
> >
> > On the big system, I saw none-frag UDP (1472 bytes) throughput of:
> > 7356.57 + 7351.78 + 7330.60 + 7269.26 = 29308.21 Mbit/s
> >
> > While with UDP fragments size 65507 bytes I saw:
> > 9228.75 + 9207.81 + 9615.83 + 9615.87 = 37668.26 Mbit/s
> >
> > Fragmented UDP is faster by:
> > 37668.26 - 29308.21 = 8360.05 Mbit/s
> >
> > The 65507 bytes UDP size is just a benchmark test, and have no real-life
> > relevance. As performance starts to drop (below none-frag/normal case)
> > when the frag size is decreased, to more realistic sizes...
>
> Yes, but I doubt GRO / GSO are the reason you get better performance.
> GRO doesnt aggregate UDP frames.
Oh, now I think I understand your question.
I don't think GRO is helping me. Its the same "effect" as GRO. As (I
think) that the reasm frag SKB will be a "bigger" SKB, which is passed
to the rest of the stack. Thus, less (but) bigger SKBs get the overhead
of the rest of the stack. It was actually Herbert that mentioned it to
me...
--Jesper
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists