pub struct GradientCompressor { /* private fields */ }Expand description
Gradient compressor with error feedback.
Implementations§
Source§impl GradientCompressor
impl GradientCompressor
Sourcepub fn new(strategy: CompressionStrategy, use_error_feedback: bool) -> Self
pub fn new(strategy: CompressionStrategy, use_error_feedback: bool) -> Self
Create a new compressor.
Sourcepub fn compress(&mut self, gradients: &[f32]) -> CompressedGradient
pub fn compress(&mut self, gradients: &[f32]) -> CompressedGradient
Compress gradients.
Sourcepub fn decompress(&self, compressed: &CompressedGradient) -> Vec<f32>
pub fn decompress(&self, compressed: &CompressedGradient) -> Vec<f32>
Decompress gradients.
Sourcepub fn reset_error_feedback(&mut self)
pub fn reset_error_feedback(&mut self)
Reset error feedback.
Auto Trait Implementations§
impl Freeze for GradientCompressor
impl RefUnwindSafe for GradientCompressor
impl Send for GradientCompressor
impl Sync for GradientCompressor
impl Unpin for GradientCompressor
impl UnsafeUnpin for GradientCompressor
impl UnwindSafe for GradientCompressor
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> 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