]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
uma: grow slabs to enforce minimum memory efficiency
authorRyan Libby <rlibby@FreeBSD.org>
Tue, 4 Feb 2020 22:40:34 +0000 (22:40 +0000)
committerRyan Libby <rlibby@FreeBSD.org>
Tue, 4 Feb 2020 22:40:34 +0000 (22:40 +0000)
commit27ca37acb7c2519832d11ce0fef816f9e9a469d2
treec7b324da3d54f48dd1c81e401c30c4f03f5deff0
parent10c8fb47d976589ad459356329b390a684a7f4a5
uma: grow slabs to enforce minimum memory efficiency

Memory efficiency can be poor with awkward item sizes (e.g. 1/2 or 1
page size + epsilon).  In order to achieve a minimum memory efficiency,
select a slab size with a potentially larger number of pages if it
yields a lower portion of waste.

This may mean using page_alloc instead of uma_small_alloc, which could
be more costly.

Discussed with: jeff, mckusick
Sponsored by: Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D23239
sys/vm/uma_core.c