pub struct CacheMetrics {
pub hit_rate: f64,
pub l1_hits: usize,
pub l2_hits: usize,
pub l3_hits: usize,
pub misses: usize,
pub total_accesses: usize,
pub memory_bandwidth_gbs: f64,
pub avg_latency_cycles: f64,
}Expand description
Cache metrics for a computation.
Fields§
§hit_rate: f64Estimated cache hit rate (0.0-1.0)
l1_hits: usizeL1 cache hits
l2_hits: usizeL2 cache hits
l3_hits: usizeL3 cache hits
misses: usizeCache misses
total_accesses: usizeTotal accesses
memory_bandwidth_gbs: f64Estimated memory bandwidth (GB/s)
avg_latency_cycles: f64Estimated latency (cycles)
Implementations§
Source§impl CacheMetrics
impl CacheMetrics
Sourcepub fn calculate_hit_rate(&mut self)
pub fn calculate_hit_rate(&mut self)
Calculate hit rate.
Sourcepub fn calculate_avg_latency(&mut self)
pub fn calculate_avg_latency(&mut self)
Calculate average latency.
Sourcepub fn estimate_bandwidth(&mut self, data_size_bytes: usize, time_secs: f64)
pub fn estimate_bandwidth(&mut self, data_size_bytes: usize, time_secs: f64)
Estimate memory bandwidth usage.
Trait Implementations§
Source§impl Clone for CacheMetrics
impl Clone for CacheMetrics
Source§fn clone(&self) -> CacheMetrics
fn clone(&self) -> CacheMetrics
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 CacheMetrics
impl Debug for CacheMetrics
Source§impl Default for CacheMetrics
impl Default for CacheMetrics
Source§impl<'de> Deserialize<'de> for CacheMetrics
impl<'de> Deserialize<'de> for CacheMetrics
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
Source§impl Display for CacheMetrics
impl Display for CacheMetrics
Source§impl PartialEq for CacheMetrics
impl PartialEq for CacheMetrics
Source§impl Serialize for CacheMetrics
impl Serialize for CacheMetrics
impl StructuralPartialEq for CacheMetrics
Auto Trait Implementations§
impl Freeze for CacheMetrics
impl RefUnwindSafe for CacheMetrics
impl Send for CacheMetrics
impl Sync for CacheMetrics
impl Unpin for CacheMetrics
impl UnwindSafe for CacheMetrics
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