pub struct MemoryAllocations {Show 21 fields
pub current_generation: Option<u64>,
pub manager_layout_version: u8,
pub bucket_size_pages: u16,
pub bucket_size_bytes: u64,
pub bucket_capacity: u32,
pub allocated_buckets: u16,
pub remaining_buckets: u32,
pub maximum_bucket_bytes: u64,
pub physical_extent: DiagnosticMemorySize,
pub virtual_extent: DiagnosticMemorySize,
pub manager_metadata_bytes: u64,
pub manager_header_bytes: u64,
pub manager_bucket_table_bytes: u64,
pub manager_padding_bytes: u64,
pub allocated_bucket_bytes: u64,
pub bucket_slack_bytes: u64,
pub known_binding_bytes: u64,
pub unknown_binding_bytes: u64,
pub unmanaged_bytes: u64,
pub metadata_bytes_read: u64,
pub memories: Vec<MemoryAllocation>,
}Expand description
MemoryAllocations
Owned, bounded, read-only physical allocation accounting for one runtime’s backing memory. Exactly 255 entries are ordered by ID. Numeric sizes are measured from validated persisted metadata or exact arithmetic on those measurements; none are estimates. Physical extent is the supplied backing memory’s extent, which is the IC stable extent only for that backing type.
Conservation: physical_extent.bytes = manager_metadata_bytes + allocated_bucket_bytes + unmanaged_bytes. Also allocated_bucket_bytes = sum(memories.allocated_bytes) = virtual_extent.bytes + bucket_slack_bytes.
Known binding bytes include the reserved ledger slot; unknown binding bytes
include allocations whose historical owners were deliberately not decoded.
Fields§
§current_generation: Option<u64>In-memory committed generation; unavailable before bootstrap.
manager_layout_version: u8§bucket_size_pages: u16Actual persisted bucket size, never a requested/default assumption.
bucket_size_bytes: u64§bucket_capacity: u32§allocated_buckets: u16§remaining_buckets: u32§maximum_bucket_bytes: u64Finite table capacity, excluding the metadata page and backing limits.
physical_extent: DiagnosticMemorySize§virtual_extent: DiagnosticMemorySize§manager_metadata_bytes: u64The complete first page, including header, table, and padding.
manager_header_bytes: u64§manager_bucket_table_bytes: u64§manager_padding_bytes: u64§allocated_bucket_bytes: u64§bucket_slack_bytes: u64§known_binding_bytes: u64§unknown_binding_bytes: u64§unmanaged_bytes: u64Backing bytes after the assigned bucket region; ownership is unknown.
metadata_bytes_read: u64Exact fixed metadata read budget; no ledger history or payload is read.
memories: Vec<MemoryAllocation>Trait Implementations§
Source§impl Clone for MemoryAllocations
impl Clone for MemoryAllocations
Source§fn clone(&self) -> MemoryAllocations
fn clone(&self) -> MemoryAllocations
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more