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: f64Ratio of external fragmentation (unusable gaps between allocations)
internal_fragmentation_ratio: f64Ratio of internal fragmentation (unused space within allocations)
total_fragmentation_ratio: f64Combined ratio of all fragmentation types
largest_free_block: usizeSize of the largest contiguous free memory block
free_block_count: usizeTotal number of free memory blocks
average_free_block_size: f64Average size of free memory blocks
memory_utilization_ratio: f64Ratio 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