From: Kent Overstreet <kent.overstreet@linux.dev>
To: LiZetao <lizetao.kernel@gmail.com>,
Peter Zijlstra <peterz@infradead.org>,
Ingo Molnar <mingo@redhat.com>,
Steven Rostedt <rostedt@goodmis.org>
Cc: akpm@linux-foundation.org, surenb@google.com, linux-mm@kvack.org
Subject: Re: [PATCH mm-next] alloc_tag: add total bytes allocation information
Date: Wed, 2 Jul 2025 13:14:20 -0400 [thread overview]
Message-ID: <vrbao777qvskybxhenezh5pajwwca64rnv2jc2weqcotow26p6@cstcuhto2chc> (raw)
In-Reply-To: <CALXnTC_TD=wd8o9+dEvDu+yry=T_QBbBnaUZxz2k9k58OkNH-w@mail.gmail.com>
+cc Peter, Ingo, Steven
On Wed, Jul 02, 2025 at 12:38:06AM +0800, LiZetao wrote:
> From bb3537ee638ac80eebcfe9160961e36df8d3ee4c Mon Sep 17 00:00:00 2001
> From: Li Zetao <lizetao.kernel@gmail.com>
> Date: Tue, 1 Jul 2025 09:30:16 +0000
> Subject: [PATCH mm-next] alloc_tag: add total bytes allocation information
>
> Some performance monitoring tools focus on real-time memory
> usage anddisplay the total amount of memory applied, which is
> convenient for analyzing the memory usage ratio.
>
> Added total information in /proc/allocinfo to feedback the
> total amount of memory applied to the user. Example is as
> follows:
>
> root:~# cat /proc/allocinfo|tail
> 98112 168 lib/radix-tree.c:338 func:__radix_tree_preload
> 12848 22 lib/radix-tree.c:276 func:radix_tree_node_alloc
> 300760 515 lib/radix-tree.c:253 func:radix_tree_node_alloc
> 0 0 lib/xarray.c:1214 func:xas_try_split
> 0 0 lib/xarray.c:1059 func:xas_split_alloc
> 208488 357 lib/xarray.c:378 func:xas_alloc
> 0 0 lib/xarray.c:344 func:__xas_nomem
> 0 0 lib/xarray.c:341 func:__xas_nomem
> 0 0 lib/xarray.c:309 func:xas_nomem
> total: 102208196
This makes it harder to process the output (numfmt chokes on lines it
don't understand, which makes the header a real problem).
Given this and the per-numa-node patchset, I am inclined towards adding
an ioctl interface and a userspace tool to do the processing.
Kernel text interfaces are only good when they're simple and unchanging.
We can keep /proc/allocinfo for the basic stuff (it's very nice for
discoverability), and then we could have a tool (maybe in perf) where
you guys can go completely crazy.
Peter, Ingo, want a new perf tool?
Also, memory allocation profiling has been active enough that I'm
wondering if we should either add a mailing list or move it to a less
active one - either perf or tracing, they're both way less busy than mm.
Probably perf, unless Steven is interested. But memory allocation
profiling is the new oddball thing and I dunno what direction we'll go
in more.
next prev parent reply other threads:[~2025-07-02 17:14 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-01 16:38 LiZetao
2025-07-02 17:14 ` Kent Overstreet [this message]
2025-07-02 20:19 ` Steven Rostedt
2025-07-06 6:01 ` Li Zetao
2025-07-06 15:21 ` Kent Overstreet
2025-07-08 2:05 ` Suren Baghdasaryan
2025-07-08 2:16 ` Kent Overstreet
2025-07-08 14:38 ` Suren Baghdasaryan
2025-07-08 15:13 ` Kent Overstreet
2025-07-08 15:22 ` Suren Baghdasaryan
2025-07-08 17:23 ` Kent Overstreet
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=vrbao777qvskybxhenezh5pajwwca64rnv2jc2weqcotow26p6@cstcuhto2chc \
--to=kent.overstreet@linux.dev \
--cc=akpm@linux-foundation.org \
--cc=linux-mm@kvack.org \
--cc=lizetao.kernel@gmail.com \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
--cc=surenb@google.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