Re: [PATCH] alloc_tag: avoid mem alloc and iter reset when reading allocinfo

Kent Overstreet
2025-05-08T03:31:22Z

On Thu, May 08, 2025 at 11:06:35AM +0800, David Wang wrote:
> Thanks for the feedback~
> I agree that memory allocation normally dose not take major part of a profiling report,
> even profiling a fio test, kmem_cache_alloc only takes ~1% perf samples.
>
> I don't know why I have this "the less memory allocation, the better' mindset, maybe
> I was worrying about memory fragmentation, or something else I learned on some "textbook",
> To be honest, I have never had real experience with those worries....

It's a common bias. "Memory allocations" take up a lot of conceptual
space in our heads, and generally for good reason - i.e. handling memory
allocation errors is often a major concern, and you do always want to be
aware of memory layout.

But this can turn into an aversion that's entirely disproportionate -
e.g. using linked linked lists and fixed size arrays in ways that are
entirely inappropriate, instead of vectors and other better data
structures; good data structures always require allocations.

Profile, profile, profile, and remember your basic CS (big O notation) -
90% of the time, simple code with good big O running time is all you
need.