pub struct MemoryBandwidthMetrics {
pub data_size: u64,
pub processing_time: Duration,
pub read_passes: u32,
pub write_passes: u32,
pub total_bytes_accessed: u64,
pub bandwidth_bytes_per_second: f64,
pub bandwidth_gb_per_second: f64,
}Expand description
Memory bandwidth utilization metrics
Fields§
§data_size: u64Size of data being processed
processing_time: DurationTime taken for processing
read_passes: u32Number of read passes over the data
write_passes: u32Number of write passes over the data
total_bytes_accessed: u64Total bytes accessed (reads + writes)
bandwidth_bytes_per_second: f64Memory bandwidth in bytes per second
bandwidth_gb_per_second: f64Memory bandwidth in GB/s
Implementations§
Source§impl MemoryBandwidthMetrics
impl MemoryBandwidthMetrics
Sourcepub fn bandwidth_description(&self) -> String
pub fn bandwidth_description(&self) -> String
Get human-readable bandwidth description
Sourcepub fn efficiency_vs_peak(&self, theoretical_peak_gb_s: f64) -> f64
pub fn efficiency_vs_peak(&self, theoretical_peak_gb_s: f64) -> f64
Calculate memory efficiency percentage (vs theoretical peak)
Trait Implementations§
Source§impl Clone for MemoryBandwidthMetrics
impl Clone for MemoryBandwidthMetrics
Source§fn clone(&self) -> MemoryBandwidthMetrics
fn clone(&self) -> MemoryBandwidthMetrics
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 moreAuto Trait Implementations§
impl Freeze for MemoryBandwidthMetrics
impl RefUnwindSafe for MemoryBandwidthMetrics
impl Send for MemoryBandwidthMetrics
impl Sync for MemoryBandwidthMetrics
impl Unpin for MemoryBandwidthMetrics
impl UnwindSafe for MemoryBandwidthMetrics
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