Re: [PATCH RFC 2/2] mm: kmem: add direct objcg pointer to task_struct

From: Michal Koutný
Date: Mon Jan 02 2023 - 11:10:23 EST


Hello.

On Thu, Dec 22, 2022 at 08:21:49AM -0800, Roman Gushchin <roman.gushchin@xxxxxxxxx> wrote:
> Do you have any numbers to share?

The numbers are in bko#216038, let me explain them here a bit.
I used the will-it-scale benchmark that repeatedly locks/unlocks a file
and runs in parallel.

The final numbers were:
sample metric δ δ_cg
no accounting implemented 32307750 0 % ­
accounting in cg 2.49577e+07 -23 % 0 %
accounting in cg + cache 2.51642e+07 -22 % +1 %

Hence my result was only 1% improvement.

(But it was a very simple try, not delving into any of the CPU cache
statistics.)

Question: Were your measurements multi-threaded?

> 1) some people periodically complain that accounted allocations are slow
> in comparison to non-accounted and slower than they were with page-based
> accounting,

My result above would not likely satisfy those complainers I know about.
But if your additional changes are better the additional code complexity
may be justified in the end.


> Btw, I'm working on a patch 3 for this series, which in early tests brings
> additional ~25% improvement in my benchmark, hopefully will post it soon as
> a part of v1.

Please send it with more details about your benchmark to put the numbers
into context.


Michal

Attachment: signature.asc
Description: Digital signature