pub struct MemoryOptimizer { /* private fields */ }Expand description
Memory optimizer with size-class pools
Implementations§
Source§impl MemoryOptimizer
impl MemoryOptimizer
Sourcepub fn set_prefetch(&mut self, enable: bool)
pub fn set_prefetch(&mut self, enable: bool)
Enable or disable prefetching
Sourcepub fn stats(&self) -> &MemoryOptStats
pub fn stats(&self) -> &MemoryOptStats
Get statistics
Sourcepub fn reset_stats(&mut self)
pub fn reset_stats(&mut self)
Reset statistics
Sourcepub fn allocate(&mut self, num_literals: usize) -> Vec<u8> ⓘ
pub fn allocate(&mut self, num_literals: usize) -> Vec<u8> ⓘ
Allocate memory for a clause of given size
Sourcepub fn clear_pools(&mut self)
pub fn clear_pools(&mut self)
Clear all pools
Sourcepub fn usage_by_size_class(&self) -> HashMap<SizeClass, usize>
pub fn usage_by_size_class(&self) -> HashMap<SizeClass, usize>
Get memory usage by size class
Sourcepub fn is_memory_pressure_high(&self) -> bool
pub fn is_memory_pressure_high(&self) -> bool
Check if memory pressure is high
Sourcepub fn recommend_action(&self) -> MemoryAction
pub fn recommend_action(&self) -> MemoryAction
Get recommended action based on memory pressure
Trait Implementations§
Source§impl Debug for MemoryOptimizer
impl Debug for MemoryOptimizer
Auto Trait Implementations§
impl Freeze for MemoryOptimizer
impl RefUnwindSafe for MemoryOptimizer
impl Send for MemoryOptimizer
impl Sync for MemoryOptimizer
impl Unpin for MemoryOptimizer
impl UnsafeUnpin for MemoryOptimizer
impl UnwindSafe for MemoryOptimizer
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> 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