pub struct CheckpointConfig {
pub checkpoint_every_n_layers: usize,
pub max_checkpoints: usize,
pub use_mixed_precision: bool,
}Expand description
Configuration for activation checkpointing.
Fields§
§checkpoint_every_n_layers: usizeSave an activation checkpoint every N layers.
For example, 3 means layers 0, 3, 6, 9, … will have their
activations stored.
max_checkpoints: usizeMaximum number of checkpoint slots.
Once this limit is reached, older checkpoints may be evicted.
use_mixed_precision: boolWhether to use reduced precision (f16-like truncation) for stored activations to further save memory.
When enabled, stored activations are quantised to half-precision (simulated by rounding to 3 decimal places) and restored on retrieval.
Trait Implementations§
Source§impl Clone for CheckpointConfig
impl Clone for CheckpointConfig
Source§fn clone(&self) -> CheckpointConfig
fn clone(&self) -> CheckpointConfig
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 CheckpointConfig
impl Debug for CheckpointConfig
Auto Trait Implementations§
impl Freeze for CheckpointConfig
impl RefUnwindSafe for CheckpointConfig
impl Send for CheckpointConfig
impl Sync for CheckpointConfig
impl Unpin for CheckpointConfig
impl UnsafeUnpin for CheckpointConfig
impl UnwindSafe for CheckpointConfig
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