Enum collenchyma_nn::ConvBackwardFilterAlgo [] [src]

pub enum ConvBackwardFilterAlgo {
    Auto,
    ImplicitGEMM,
    ImplicitGEMMSum,
    ImplicitPrecompiledGEMMSum,
    FFT,
}

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.

ImplicitPrecompiledGEMMSum

Similar to ImplicitGEMMSum but needs some workspace to precompile the implicit indices.

The results are non-deterministic.

FFT

Compute the convolution as Fast-Fourier Transform.

Needs a significant memory workspace.

The results are deterministic.

Methods

impl ConvBackwardFilterAlgo

fn is_auto(&self) -> bool

Check if algorithim should be chosen automatically.

Trait Implementations

Derived Implementations

impl Clone for ConvBackwardFilterAlgo

fn clone(&self) -> ConvBackwardFilterAlgo

fn clone_from(&mut self, source: &Self)

impl Copy for ConvBackwardFilterAlgo

impl Debug for ConvBackwardFilterAlgo

fn fmt(&self, __arg_0: &mut Formatter) -> Result