[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CANn89iLSgJSqc27UYDJ26YeinSzBWtDH6sj1KAHuuAkCmxuwpg@mail.gmail.com>
Date: Thu, 20 Oct 2022 11:10:54 -0700
From: Eric Dumazet <edumazet@...gle.com>
To: Paolo Abeni <pabeni@...hat.com>
Cc: netdev@...r.kernel.org, "David S. Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>, mptcp@...ts.linux.dev,
David Ahern <dsahern@...nel.org>,
Mat Martineau <mathew.j.martineau@...ux.intel.com>,
Matthieu Baerts <matthieu.baerts@...sares.net>,
Kuniyuki Iwashima <kuniyu@...zon.com>
Subject: Re: [PATCH net-next v2 2/2] udp: track the forward memory release
threshold in an hot cacheline
On Thu, Oct 20, 2022 at 10:49 AM Paolo Abeni <pabeni@...hat.com> wrote:
>
> When the receiver process and the BH runs on different cores,
> udp_rmem_release() experience a cache miss while accessing sk_rcvbuf,
> as the latter shares the same cacheline with sk_forward_alloc, written
> by the BH.
>
> With this patch, UDP tracks the rcvbuf value and its update via custom
> SOL_SOCKET socket options, and copies the forward memory threshold value
> used by udp_rmem_release() in a different cacheline, already accessed by
> the above function and uncontended.
>
> Since the UDP socket init operation grown a bit, factor out the common
> code between v4 and v6 in a shared helper.
>
> Overall the above give a 10% peek throughput increase under UDP flood.
>
> Signed-off-by: Paolo Abeni <pabeni@...hat.com>
Reviewed-by: Eric Dumazet <edumazet@...gle.com>
Powered by blists - more mailing lists