On Mon, Jun 22, 2020 at 6:58 PM Roman Gushchin <g...@fb.com> wrote:
>
> Instead of having two sets of kmem_caches: one for system-wide and
> non-accounted allocations and the second one shared by all accounted
> allocations, we can use just one.
>
> The idea is simple: space for obj_cgroup metadata can be allocated on
> demand and filled only for accounted allocations.
>
> It allows to remove a bunch of code which is required to handle kmem_cache
> clones for accounted allocations.  There is no more need to create them,
> accumulate statistics, propagate attributes, etc.  It's a quite
> significant simplification.
>
> Also, because the total number of slab_caches is reduced almost twice (not
> all kmem_caches have a memcg clone), some additional memory savings are
> expected.  On my devvm it additionally saves about 3.5% of slab memory.
>
> Suggested-by: Johannes Weiner <han...@cmpxchg.org>
> Signed-off-by: Roman Gushchin <g...@fb.com>
> Reviewed-by: Vlastimil Babka <vba...@suse.cz>

Reviewed-by: Shakeel Butt <shake...@google.com>

Reply via email to