pub struct MixedPrecisionConfig {
pub enabled: bool,
pub loss_scale: f32,
pub growth_factor: f32,
pub backoff_factor: f32,
pub growth_interval: u32,
pub use_bfloat16: bool,
/* private fields */
}Expand description
Mixed precision configuration for automatic mixed precision (AMP) training
Fields§
§enabled: boolWhether to enable automatic mixed precision
loss_scale: f32Loss scaling factor to prevent gradient underflow
growth_factor: f32Growth factor for loss scaling
backoff_factor: f32Backoff factor for loss scaling
growth_interval: u32Growth interval (number of steps without overflow)
use_bfloat16: boolWhether to use bf16 instead of f16
Implementations§
Source§impl MixedPrecisionConfig
impl MixedPrecisionConfig
Sourcepub fn with_loss_scale(self, scale: f32) -> Self
pub fn with_loss_scale(self, scale: f32) -> Self
Set the initial loss scale
Sourcepub fn with_bfloat16(self) -> Self
pub fn with_bfloat16(self) -> Self
Use bfloat16 instead of float16
Sourcepub fn update_loss_scale(&mut self, has_overflow: bool)
pub fn update_loss_scale(&mut self, has_overflow: bool)
Check for gradient overflow and update loss scaling
Sourcepub fn target_dtype(&self) -> DType
pub fn target_dtype(&self) -> DType
Get the target half precision type
Trait Implementations§
Source§impl Clone for MixedPrecisionConfig
impl Clone for MixedPrecisionConfig
Source§fn clone(&self) -> MixedPrecisionConfig
fn clone(&self) -> MixedPrecisionConfig
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 MixedPrecisionConfig
impl Debug for MixedPrecisionConfig
Auto Trait Implementations§
impl Freeze for MixedPrecisionConfig
impl RefUnwindSafe for MixedPrecisionConfig
impl Send for MixedPrecisionConfig
impl Sync for MixedPrecisionConfig
impl Unpin for MixedPrecisionConfig
impl UnsafeUnpin for MixedPrecisionConfig
impl UnwindSafe for MixedPrecisionConfig
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> 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