[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20120807.162630.311474956563871276.davem@davemloft.net>
Date: Tue, 07 Aug 2012 16:26:30 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: eric.dumazet@...il.com
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH net-next] net: output path optimizations
From: Eric Dumazet <eric.dumazet@...il.com>
Date: Tue, 07 Aug 2012 14:19:56 +0200
> From: Eric Dumazet <edumazet@...gle.com>
>
> 1) Avoid dirtying neighbour's confirmed field.
>
> TCP workloads hits this cache line for each incoming ACK.
> Lets write n->confirmed only if there is a jiffie change.
>
> 2) Optimize neigh_hh_output() for the common Ethernet case, were
> hh_len is less than 16 bytes. Replace the memcpy() call
> by two inlined 64bit load/stores on x86_64.
>
> Bench results using udpflood test, with -C option (MSG_CONFIRM flag
> added to sendto(), to reproduce the n->confirmed dirtying on UDP)
>
> 24 threads doing 1.000.000 UDP sendto() on dummy device, 4 runs.
>
> before : 2.247s, 2.235s, 2.247s, 2.318s
> after : 1.884s, 1.905s, 1.891s, 1.895s
>
> Signed-off-by: Eric Dumazet <edumazet@...gle.com>
Applied, I'd like to significantly redo how the neigh confirmation
stuff works.
I'm not at all surprised it shows up on TCP workloads.
--
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