pub enum GpuMixedPrecisionPolicy {
Off,
Refinement,
Never,
}Variants§
Off
Always use fp64 factorization; no refinement attempted.
Refinement
Attempt fp32 Cholesky factorization followed by up to
REFINEMENT_MAX_STEPS fp64-residual refinement steps. Policy admits
the attempt only when p ≥ REFINEMENT_MIN_P (so that the fp64 GEMV
overhead is amortized) and the measured residual drops monotonically.
Falls back to fp64 factorization automatically when the residual does
not decrease (κ(A)·u ≥ 1 regime) or when the fp32 POTRF itself fails.
Never
Always use fp64 factorization; equivalent to Off but signals that
an explicit policy decision was taken.
Trait Implementations§
Source§impl Clone for GpuMixedPrecisionPolicy
impl Clone for GpuMixedPrecisionPolicy
Source§fn clone(&self) -> GpuMixedPrecisionPolicy
fn clone(&self) -> GpuMixedPrecisionPolicy
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 moreimpl Copy for GpuMixedPrecisionPolicy
Source§impl Debug for GpuMixedPrecisionPolicy
impl Debug for GpuMixedPrecisionPolicy
Source§impl<'de> Deserialize<'de> for GpuMixedPrecisionPolicy
impl<'de> Deserialize<'de> for GpuMixedPrecisionPolicy
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
impl Eq for GpuMixedPrecisionPolicy
Source§impl PartialEq for GpuMixedPrecisionPolicy
impl PartialEq for GpuMixedPrecisionPolicy
Source§fn eq(&self, other: &GpuMixedPrecisionPolicy) -> bool
fn eq(&self, other: &GpuMixedPrecisionPolicy) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for GpuMixedPrecisionPolicy
impl Serialize for GpuMixedPrecisionPolicy
impl StructuralPartialEq for GpuMixedPrecisionPolicy
Auto Trait Implementations§
impl Freeze for GpuMixedPrecisionPolicy
impl RefUnwindSafe for GpuMixedPrecisionPolicy
impl Send for GpuMixedPrecisionPolicy
impl Sync for GpuMixedPrecisionPolicy
impl Unpin for GpuMixedPrecisionPolicy
impl UnsafeUnpin for GpuMixedPrecisionPolicy
impl UnwindSafe for GpuMixedPrecisionPolicy
Blanket Implementations§
impl<T> Boilerplate for T
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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