pub struct PrecisionConfig {
pub mode: PrecisionMode,
pub loss_scale: f32,
pub dynamic_loss_scale: bool,
pub grad_clip_threshold: Option<f32>,
}Expand description
Configuration for mixed precision inference
Fields§
§mode: PrecisionModePrecision mode to use
loss_scale: f32Loss scaling factor to prevent underflow in FP16
dynamic_loss_scale: boolWhether to automatically adjust loss scale
grad_clip_threshold: Option<f32>Threshold for gradient clipping in reduced precision
Implementations§
Source§impl PrecisionConfig
impl PrecisionConfig
Sourcepub fn mode(self, mode: PrecisionMode) -> Self
pub fn mode(self, mode: PrecisionMode) -> Self
Set precision mode
Sourcepub fn mixed_fp16(self, accumulate_fp32: bool) -> Self
pub fn mixed_fp16(self, accumulate_fp32: bool) -> Self
Enable mixed precision with FP16 compute
Sourcepub fn mixed_bf16(self, accumulate_fp32: bool) -> Self
pub fn mixed_bf16(self, accumulate_fp32: bool) -> Self
Enable mixed precision with BF16 compute
Sourcepub fn loss_scale(self, scale: f32) -> Self
pub fn loss_scale(self, scale: f32) -> Self
Set loss scaling factor
Sourcepub fn dynamic_loss_scale(self, enabled: bool) -> Self
pub fn dynamic_loss_scale(self, enabled: bool) -> Self
Enable dynamic loss scaling
Sourcepub fn grad_clip_threshold(self, threshold: f32) -> Self
pub fn grad_clip_threshold(self, threshold: f32) -> Self
Set gradient clipping threshold
Trait Implementations§
Source§impl Clone for PrecisionConfig
impl Clone for PrecisionConfig
Source§fn clone(&self) -> PrecisionConfig
fn clone(&self) -> PrecisionConfig
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 Debug for PrecisionConfig
impl Debug for PrecisionConfig
Source§impl Default for PrecisionConfig
impl Default for PrecisionConfig
Source§impl<'de> Deserialize<'de> for PrecisionConfig
impl<'de> Deserialize<'de> for PrecisionConfig
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
Auto Trait Implementations§
impl Freeze for PrecisionConfig
impl RefUnwindSafe for PrecisionConfig
impl Send for PrecisionConfig
impl Sync for PrecisionConfig
impl Unpin for PrecisionConfig
impl UnwindSafe for PrecisionConfig
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,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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