Enum collenchyma_nn::ConvForwardAlgo [] [src]

pub enum ConvForwardAlgo {
    Auto,
    GEMM,
    ImplicitGEMM,
    ImplicitPrecompiledGEMM,
    FFT,
    Direct,
}

Different algorithms to compute the convolution forward algorithm.

Variants

Auto

Attempt to automatically find the best algorithm of all the other available ones.

GEMM

Compute the convolution as explicit matrix product.

Needs a significant memory workspace.

ImplicitGEMM

Compute the convolution as matrix product without forming the matrix that holds the input data.

Does not need any memory workspace.

ImplicitPrecompiledGEMM

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

FFT

Compute the convolution as Fast-Fourier Transform.

Needs a significant memory workspace.

Direct

Compute the convolution without implicit or explicit matrix-multiplication. Do not try to use this.

Listed in cuDNN docs but cuDNN does not provide a implementation.

Methods

impl ConvForwardAlgo

fn is_auto(&self) -> bool

Check if algorithim should be chosen automatically.

Trait Implementations

Derived Implementations

impl Clone for ConvForwardAlgo

fn clone(&self) -> ConvForwardAlgo

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

impl Copy for ConvForwardAlgo

impl Debug for ConvForwardAlgo

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