pub struct FragmentationMetrics {
pub external_fragmentation_ratio: f64,
pub internal_fragmentation_ratio: f64,
pub total_fragmentation_ratio: f64,
pub largest_free_block: usize,
pub free_block_count: usize,
pub average_free_block_size: f64,
pub memory_utilization_ratio: f64,
}
Expand description
Quantitative metrics measuring different aspects of memory fragmentation
Fields§
§external_fragmentation_ratio: f64
Ratio of external fragmentation (unusable gaps between allocations)
internal_fragmentation_ratio: f64
Ratio of internal fragmentation (unused space within allocations)
total_fragmentation_ratio: f64
Combined ratio of all fragmentation types
largest_free_block: usize
Size of the largest contiguous free memory block
free_block_count: usize
Total number of free memory blocks
average_free_block_size: f64
Average size of free memory blocks
memory_utilization_ratio: f64
Ratio of memory actually used vs. total allocated
Trait Implementations§
Source§impl Clone for FragmentationMetrics
impl Clone for FragmentationMetrics
Source§fn clone(&self) -> FragmentationMetrics
fn clone(&self) -> FragmentationMetrics
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for FragmentationMetrics
impl Debug for FragmentationMetrics
Source§impl Default for FragmentationMetrics
impl Default for FragmentationMetrics
Source§impl<'de> Deserialize<'de> for FragmentationMetrics
impl<'de> Deserialize<'de> for FragmentationMetrics
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for FragmentationMetrics
impl RefUnwindSafe for FragmentationMetrics
impl Send for FragmentationMetrics
impl Sync for FragmentationMetrics
impl Unpin for FragmentationMetrics
impl UnwindSafe for FragmentationMetrics
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more