Re: [RFC net-next PATCH V1 0/9] net: fragmentation performance scalability on NUMA/SMP systems
From: Jesper Dangaard Brouer <hidden>
Date: 2012-11-26 16:06:18
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:quoted
On Sun, 2012-11-25 at 08:11 -0800, Eric Dumazet wrote:quoted
On Sun, 2012-11-25 at 09:53 +0100, Jesper Dangaard Brouer wrote:quoted
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