pub struct LaunchLogger { /* private fields */ }Expand description
Collects LaunchLog entries for inspection and analysis.
Provides append-only storage of launch records with methods to retrieve entries, clear the log, and produce aggregate summaries.
§Example
use oxicuda_launch::arg_serialize::*;
use oxicuda_launch::Dim3;
let mut logger = LaunchLogger::new();
logger.log(LaunchLog::new("kern_a".into(), Dim3::x(4), Dim3::x(256), 0, vec![]));
logger.log(LaunchLog::new("kern_a".into(), Dim3::x(8), Dim3::x(256), 0, vec![]));
logger.log(LaunchLog::new("kern_b".into(), Dim3::x(1), Dim3::x(128), 0, vec![]));
let summary = logger.summary();
assert_eq!(summary.total_launches(), 3);Implementations§
Source§impl LaunchLogger
impl LaunchLogger
Sourcepub fn summary(&self) -> LaunchSummary
pub fn summary(&self) -> LaunchSummary
Produces a LaunchSummary from all recorded entries.
The summary aggregates per-kernel launch counts and provides the total number of launches.
Trait Implementations§
Source§impl Debug for LaunchLogger
impl Debug for LaunchLogger
Auto Trait Implementations§
impl Freeze for LaunchLogger
impl RefUnwindSafe for LaunchLogger
impl Send for LaunchLogger
impl Sync for LaunchLogger
impl Unpin for LaunchLogger
impl UnsafeUnpin for LaunchLogger
impl UnwindSafe for LaunchLogger
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