pub struct EpistemicGpuKernelTimingTrace {
pub cuda_event_pairs: u32,
pub timing_sync_ops: u32,
pub kernel_elapsed_nanos: u64,
}Expand description
CUDA-event timing captured around one epistemic GPU kernel launch.
Fields§
§cuda_event_pairs: u32CUDA event pairs recorded around the launch. Runtime traces require one.
timing_sync_ops: u32CUDA event synchronizations used to make elapsed time observable on host.
kernel_elapsed_nanos: u64Event-measured stream elapsed time, converted from milliseconds to nanoseconds.
Implementations§
Source§impl EpistemicGpuKernelTimingTrace
impl EpistemicGpuKernelTimingTrace
Sourcepub const fn unrecorded() -> Self
pub const fn unrecorded() -> Self
Empty timing marker used before a runtime launch records CUDA events.
Sourcepub fn from_cuda_elapsed_ms(elapsed_ms: f32) -> Result<Self>
pub fn from_cuda_elapsed_ms(elapsed_ms: f32) -> Result<Self>
Convert CUDA’s native event elapsed time in milliseconds to a trace.
Sourcepub const fn is_recorded(&self) -> bool
pub const fn is_recorded(&self) -> bool
Whether CUDA-event timing was recorded for this trace.
Sourcepub fn saturating_add(self, other: Self) -> Self
pub fn saturating_add(self, other: Self) -> Self
Saturating sum used when aggregating multi-kernel or split-batch traces.
Sourcepub fn checked_add(self, other: Self) -> Result<Self>
pub fn checked_add(self, other: Self) -> Result<Self>
Checked sum used by accepted certification paths.
Sourcepub fn sum(traces: impl IntoIterator<Item = Self>) -> Self
pub fn sum(traces: impl IntoIterator<Item = Self>) -> Self
Aggregate timing traces from a single execution or split-batch result.
Sourcepub fn checked_sum(traces: impl IntoIterator<Item = Self>) -> Result<Self>
pub fn checked_sum(traces: impl IntoIterator<Item = Self>) -> Result<Self>
Checked aggregate timing traces for accepted certification paths.
Trait Implementations§
Source§impl Clone for EpistemicGpuKernelTimingTrace
impl Clone for EpistemicGpuKernelTimingTrace
Source§fn clone(&self) -> EpistemicGpuKernelTimingTrace
fn clone(&self) -> EpistemicGpuKernelTimingTrace
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 Default for EpistemicGpuKernelTimingTrace
impl Default for EpistemicGpuKernelTimingTrace
Source§fn default() -> EpistemicGpuKernelTimingTrace
fn default() -> EpistemicGpuKernelTimingTrace
Returns the “default value” for a type. Read more
Source§impl PartialEq for EpistemicGpuKernelTimingTrace
impl PartialEq for EpistemicGpuKernelTimingTrace
Source§fn eq(&self, other: &EpistemicGpuKernelTimingTrace) -> bool
fn eq(&self, other: &EpistemicGpuKernelTimingTrace) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Copy for EpistemicGpuKernelTimingTrace
impl Eq for EpistemicGpuKernelTimingTrace
impl StructuralPartialEq for EpistemicGpuKernelTimingTrace
Auto Trait Implementations§
impl Freeze for EpistemicGpuKernelTimingTrace
impl RefUnwindSafe for EpistemicGpuKernelTimingTrace
impl Send for EpistemicGpuKernelTimingTrace
impl Sync for EpistemicGpuKernelTimingTrace
impl Unpin for EpistemicGpuKernelTimingTrace
impl UnsafeUnpin for EpistemicGpuKernelTimingTrace
impl UnwindSafe for EpistemicGpuKernelTimingTrace
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,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more