pub struct Stats {Show 16 fields
pub reserved_bytes: u64,
pub pinned_bytes: u64,
pub committed_bytes: u64,
pub committed_peak_bytes: u64,
pub allocated_bytes: u64,
pub allocated_peak_bytes: u64,
pub purged_bytes: u64,
pub purge_calls: u64,
pub arena_purges: u64,
pub mmap_calls: u64,
pub commit_calls: u64,
pub pages: u64,
pub threads: u64,
pub arenas: u64,
pub huge_allocations: u64,
pub huge_bytes: u64,
}Expand description
Process-wide allocator statistics, excluding allocations that C libraries make through the system allocator.
Operating system accounting (reservations, commits, purges, mappings,
arenas, threads) is current when read. Allocation counters
(Self::allocated_bytes, Self::allocated_peak_bytes,
Self::pages, Self::huge_allocations, Self::huge_bytes) are
merged from each thread when it collects or exits, but a huge allocation
is counted immediately.
Fields§
§reserved_bytes: u64Bytes mimalloc has mapped from the operating system for its arenas,
page map, and directly mapped pages. Pinned reservations are counted
in Self::pinned_bytes instead.
pinned_bytes: u64Bytes of pinned reservations, which are never purged.
committed_bytes: u64Bytes currently committed, as mimalloc accounts them. On systems that
overcommit, an eagerly committed on-demand arena counts as its slices
are first used, while an unpinned Reserve counts in full and then
again as its slices are first used. On Unix, a purge does not lower
the figure.
committed_peak_bytes: u64Peak committed bytes.
allocated_bytes: u64Bytes currently allocated to callers, counted in block sizes (so including size-class rounding).
allocated_peak_bytes: u64Sum of the separately tracked peaks of normal and huge allocations, which can exceed their combined peak.
purged_bytes: u64Cumulative bytes purged back to the operating system.
purge_calls: u64Cumulative purge operations.
arena_purges: u64Cumulative arena-level purge passes.
mmap_calls: u64Cumulative memory mappings requested from the operating system.
commit_calls: u64Cumulative commit operations.
pages: u64Pages (mimalloc’s unit of size-class storage) currently in use.
threads: u64Threads currently known to the allocator.
arenas: u64Arenas currently managed.
huge_allocations: u64Cumulative allocations larger than the largest size class, each served by a page of its own.
huge_bytes: u64Cumulative bytes of those allocations.