Enum coaster_nn::ConvBackwardDataAlgo
source · pub enum ConvBackwardDataAlgo {
Auto,
ImplicitGEMM,
ImplicitGEMMSum,
FFT,
FFTTiling,
Winograd,
WinogradNonFused,
}
Expand description
Different algorithms to compute the gradient with respect to the filter.
Variants§
Auto
Attempt to automatically find the best algorithm of all the other available ones.
ImplicitGEMM
Compute the convolution as matrix product without forming the matrix that holds the input data.
Does not need any memory workspace.
The results are deterministic.
ImplicitGEMMSum
Compute the convolution as sum of matrix product without forming the matrix that holds the input data.
Does not need any memory workspace.
The results are non-deterministic.
FFT
Compute the convolution as Fast-Fourier Transform.
Needs a significant memory workspace.
The results are deterministic.
FFTTiling
Compute the convolution as Fast-Fourier Transform with 32x32 tiles.
Needs a significant memory workspace.
The results are deterministic.
Winograd
Winograd Transform
WinogradNonFused
Winograd Transform Non-Fused
Implementations§
Trait Implementations§
source§impl Clone for ConvBackwardDataAlgo
impl Clone for ConvBackwardDataAlgo
source§fn clone(&self) -> ConvBackwardDataAlgo
fn clone(&self) -> ConvBackwardDataAlgo
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ConvBackwardDataAlgo
impl Debug for ConvBackwardDataAlgo
source§impl PartialEq for ConvBackwardDataAlgo
impl PartialEq for ConvBackwardDataAlgo
source§fn eq(&self, other: &ConvBackwardDataAlgo) -> bool
fn eq(&self, other: &ConvBackwardDataAlgo) -> bool
self
and other
values to be equal, and is used
by ==
.