pub struct GpuExecutionTelemetry {
pub h2d_bytes: usize,
pub d2h_bytes: usize,
pub factorization_count: usize,
pub handle_creation_count: usize,
pub kernel_launch_count: usize,
pub cpu_fallback_count: usize,
pub cpu_fallback_reasons: Vec<String>,
pub context_id: usize,
}Expand description
Monotonic counters describing what the GPU-resident solver actually did on
the current thread. Snapshot with telemetry_snapshot; reset with
telemetry_reset.
Fields§
§h2d_bytes: usizeBytes uploaded host→device.
d2h_bytes: usizeBytes read back device→host.
factorization_count: usizeCholesky / Schur factorizations performed on the device.
handle_creation_count: usizecuBLAS / cuSOLVER / stream handle creations.
kernel_launch_count: usizeDevice kernel launches (per-row + border solves).
cpu_fallback_count: usizeTimes a path that intended to use the device fell back to the CPU.
cpu_fallback_reasons: Vec<String>Human-readable reasons recorded alongside each CPU fallback.
context_id: usizeOpaque context identifier of the device this thread last touched
(e.g. the CUDA device ordinal), 0 when no device was used.
Trait Implementations§
Source§impl Clone for GpuExecutionTelemetry
impl Clone for GpuExecutionTelemetry
Source§fn clone(&self) -> GpuExecutionTelemetry
fn clone(&self) -> GpuExecutionTelemetry
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 GpuExecutionTelemetry
impl Debug for GpuExecutionTelemetry
Source§impl Default for GpuExecutionTelemetry
impl Default for GpuExecutionTelemetry
Source§fn default() -> GpuExecutionTelemetry
fn default() -> GpuExecutionTelemetry
Returns the “default value” for a type. Read more
impl Eq for GpuExecutionTelemetry
Source§impl PartialEq for GpuExecutionTelemetry
impl PartialEq for GpuExecutionTelemetry
Source§fn eq(&self, other: &GpuExecutionTelemetry) -> bool
fn eq(&self, other: &GpuExecutionTelemetry) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for GpuExecutionTelemetry
Auto Trait Implementations§
impl Freeze for GpuExecutionTelemetry
impl RefUnwindSafe for GpuExecutionTelemetry
impl Send for GpuExecutionTelemetry
impl Sync for GpuExecutionTelemetry
impl Unpin for GpuExecutionTelemetry
impl UnsafeUnpin for GpuExecutionTelemetry
impl UnwindSafe for GpuExecutionTelemetry
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T, U> Imply<T> for U
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