netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Cathy Zhang <cathy.zhang@intel.com>
To: edumazet@google.com, davem@davemloft.net, kuba@kernel.org,
	pabeni@redhat.com
Cc: jesse.brandeburg@intel.com, suresh.srinivas@intel.com,
	tim.c.chen@intel.com, lizhen.you@intel.com,
	cathy.zhang@intel.com, eric.dumazet@gmail.com,
	netdev@vger.kernel.org
Subject: [PATCH net-next 0/2] net: fix memcg overhead caused by sk->sk_forward_alloc size
Date: Sun,  7 May 2023 19:07:59 -0700	[thread overview]
Message-ID: <20230508020801.10702-1-cathy.zhang@intel.com> (raw)

Dear Reviewers,

memcg charge overhead is observed while we benchmark memcached with
memtier by running containers. It's caused by commit 4890b686f408 ("net:
Keep sk->sk_forward_alloc as small as possible"), which aims to reduce
system memory pressure, but makes the per-socket forward allocated
memory too small. The impact of this change is to trigger more
frequently memory allocation during TCP connection lifecycle and leads
to memcg charge overhead finally.

To avoid memcg charge overhead mentioned above, this series defines 64KB
as reclaim threshold when uncharging per-socket memory. It reduces the
frequency of memory allocation and charging during TCP connection, and
it's much less than the original 2MB per-socket reserved memory before
commit 4890b686f408 ("net: keep sk->sk_forward_alloc as small as
possibile"). Run memcached/memtier test with the 64KB reclaim threshold,
RPS gains around 2.07x.

This series also provides a new ABI /proc/sys/net/core/reclaim_threshold
with flexibility to tune the reclaim threshold according to system
running status.

This series is based on the latest net-next/main tree.

Thanks for your time to help review and your feedback will be greatly!

Cathy Zhang (2):
  net: Keep sk->sk_forward_alloc as a proper size
  net: Add sysctl_reclaim_threshold

 Documentation/admin-guide/sysctl/net.rst | 12 +++++++++
 include/net/sock.h                       | 32 +++++++++++++++++++++++-
 net/core/sysctl_net_core.c               | 14 +++++++++++
 3 files changed, 57 insertions(+), 1 deletion(-)


base-commit: ed23734c23d2fc1e6a1ff80f8c2b82faeed0ed0c
2.34.1


             reply	other threads:[~2023-05-08  2:08 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-08  2:07 Cathy Zhang [this message]
2023-05-08  2:08 ` [PATCH net-next 1/2] net: Keep sk->sk_forward_alloc as a proper size Cathy Zhang
2023-05-09  2:02   ` Jakub Kicinski
2023-05-09  6:52     ` Zhang, Cathy
2023-05-09  2:06   ` Jakub Kicinski
2023-05-09  6:57     ` Zhang, Cathy
2023-05-09  8:43       ` Simon Horman
2023-05-09  9:36         ` Zhang, Cathy
2023-05-09  9:45           ` Simon Horman
2023-05-09 10:41             ` Zhang, Cathy
2023-05-09  8:48   ` Eric Dumazet
2023-05-09  9:33     ` Zhang, Cathy
2023-05-09  9:51   ` Paolo Abeni
2023-05-09 10:39     ` Zhang, Cathy
2023-05-09 11:01       ` Zhang, Cathy
2023-05-09 11:58         ` Eric Dumazet
2023-05-09 15:07           ` Zhang, Cathy
2023-05-09 15:43             ` Eric Dumazet
2023-05-09 16:09               ` Shakeel Butt
2023-05-10  6:54                 ` Zhang, Cathy
2023-05-10 11:11                 ` Zhang, Cathy
2023-05-10 11:24                   ` Eric Dumazet
2023-05-10 13:52                     ` Zhang, Cathy
2023-05-10 15:07                       ` Eric Dumazet
2023-05-10 16:09                         ` Zhang, Cathy
2023-05-10 19:00                           ` Shakeel Butt
2023-05-11  0:53                             ` Zhang, Cathy
2023-05-11  6:59                               ` Zhang, Cathy
2023-05-11  7:50                                 ` Eric Dumazet
2023-05-11  9:26                                   ` Zhang, Cathy
2023-05-11 16:23                                     ` Shakeel Butt
2023-05-11 16:35                                       ` Eric Dumazet
2023-05-11 17:10                                         ` Shakeel Butt
2023-05-11 21:18                                     ` Shakeel Butt
2023-05-12  2:38                                       ` Zhang, Cathy
2023-05-12  3:23                                         ` Zhang, Cathy
2023-05-12  5:06                                           ` Shakeel Butt
2023-05-12  5:51                                             ` Zhang, Cathy
2023-05-12 17:17                                               ` Shakeel Butt
2023-05-15  3:46                                                 ` Zhang, Cathy
2023-05-15  4:13                                                   ` Shakeel Butt
2023-05-15  6:27                                                     ` Zhang, Cathy
2023-05-15 19:50                                                       ` Shakeel Butt
2023-05-16  5:46                                                         ` Oliver Sang
2023-05-17 16:24                                                           ` Shakeel Butt
2023-05-17 16:33                                                             ` Eric Dumazet
2023-05-17 17:04                                                               ` Shakeel Butt
2023-07-28  2:26                                                                 ` Zhang, Cathy
2023-05-19  2:53                                                             ` Oliver Sang
2023-05-31  8:46                                                             ` Oliver Sang
2023-05-31 19:45                                                               ` Shakeel Butt
2023-06-01  2:48                                                                 ` Zhang, Cathy
2023-06-01  3:21                                                                   ` Eric Dumazet
2023-06-01  2:46                                                               ` Zhang, Cathy
2023-05-10  7:43               ` Zhang, Cathy
2023-05-09 17:58             ` Shakeel Butt
2023-05-10  7:21               ` Zhang, Cathy
2023-05-09 17:19   ` Shakeel Butt
2023-05-09 18:04     ` Chen, Tim C
2023-05-09 18:17       ` Shakeel Butt
2023-05-10  7:03         ` Zhang, Cathy
2023-05-10  7:32           ` Zhang, Cathy
2023-05-08  2:08 ` [PATCH net-next 2/2] net: Add sysctl_reclaim_threshold Cathy Zhang
2023-05-09  2:05   ` Jakub Kicinski
2023-05-09  6:55     ` Zhang, Cathy
2023-05-09 13:36   ` Eric Dumazet

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230508020801.10702-1-cathy.zhang@intel.com \
    --to=cathy.zhang@intel.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=eric.dumazet@gmail.com \
    --cc=jesse.brandeburg@intel.com \
    --cc=kuba@kernel.org \
    --cc=lizhen.you@intel.com \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=suresh.srinivas@intel.com \
    --cc=tim.c.chen@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).