Compute Library
 22.08
DepthwiseDepthfirstStrategy< TInput, TWeight, TOutput, TAccum, OutputStage > Class Template Referenceabstract

#include <depthwise_depthfirst.hpp>

Collaboration diagram for DepthwiseDepthfirstStrategy< TInput, TWeight, TOutput, TAccum, OutputStage >:
[legend]

Public Types

typedef void(* IndirectKernelType) (const TInput *const *input_ptrs, TOutput *const *output_ptrs, const void *params, unsigned int n_channels, const TAccum activation_min, const TAccum activation_max)
 
typedef void(* DirectKernelType) (const unsigned int n_tile_rows, const unsigned int n_tile_cols, const TInput *inptr_base, int64_t ld_input_row, int64_t ld_input_col, TOutput *outptr_base, int64_t ld_output_row, int64_t ld_output_col, const void *params, unsigned int n_channels, const TAccum activation_min, const TAccum activation_max)
 

Public Member Functions

virtual IndirectKernelType get_indirect_kernel (void) const =0
 
virtual DirectKernelType get_direct_kernel (void) const =0
 
- Public Member Functions inherited from DepthwiseDepthfirstStrategyCommon< TInput, TWeight, TOutput, TAccum, OutputStage >
 DepthwiseDepthfirstStrategyCommon (unsigned int output_rows, unsigned int output_cols, unsigned int kernel_rows, unsigned int kernel_cols, unsigned int stride_rows=1, unsigned int stride_cols=1)
 
 DepthwiseDepthfirstStrategyCommon (unsigned int output_size, unsigned int kernel_size, unsigned int stride=1)
 
virtual ~DepthwiseDepthfirstStrategyCommon ()
 
unsigned int get_output_rows () const override
 
unsigned int get_output_cols () const override
 
unsigned int get_kernel_rows () const override
 
unsigned int get_kernel_cols () const override
 
unsigned int get_stride_rows () const override
 
unsigned int get_stride_cols () const override
 
- Public Member Functions inherited from DepthfirstStrategy< TInput, TWeight, TOutput, TAccum, OutputStage >
virtual size_t get_storage_size (const DepthwiseArgs &args) const
 
virtual void pack_parameters (const DepthwiseArgs &args, void *buffer, const void *biases, const OutputStage &, const void *weights, size_t ld_weight_col, size_t ld_weight_row) const
 
- Public Member Functions inherited from DepthfirstStrategyUntyped
virtual arm_gemm::VLType get_vl_type () const =0
 
virtual unsigned int get_input_rows () const override
 
virtual unsigned int get_input_cols () const override
 
virtual unsigned int get_n_input_points () const
 
virtual unsigned int get_n_output_points () const
 
virtual unsigned int get_n_kernel_points () const
 
virtual unsigned int get_accumulator_depth_vl () const
 
virtual bool get_kernel_packing_point (const unsigned int index, unsigned int &x, unsigned int &y) const
 
- Public Member Functions inherited from IDepthfirstStrategy
virtual ~IDepthfirstStrategy ()=default
 

Detailed Description

template<typename TInput, typename TWeight, typename TOutput, typename TAccum, typename OutputStage = typename DefaultOutputStage<TOutput>::Type>
class arm_conv::depthwise::DepthwiseDepthfirstStrategy< TInput, TWeight, TOutput, TAccum, OutputStage >

Definition at line 79 of file depthwise_depthfirst.hpp.

Member Typedef Documentation

◆ DirectKernelType

typedef void(* DirectKernelType) (const unsigned int n_tile_rows, const unsigned int n_tile_cols, const TInput *inptr_base, int64_t ld_input_row, int64_t ld_input_col, TOutput *outptr_base, int64_t ld_output_row, int64_t ld_output_col, const void *params, unsigned int n_channels, const TAccum activation_min, const TAccum activation_max)

Definition at line 96 of file depthwise_depthfirst.hpp.

◆ IndirectKernelType

typedef void(* IndirectKernelType) (const TInput *const *input_ptrs, TOutput *const *output_ptrs, const void *params, unsigned int n_channels, const TAccum activation_min, const TAccum activation_max)

Definition at line 86 of file depthwise_depthfirst.hpp.

Member Function Documentation

◆ get_direct_kernel()

virtual DirectKernelType get_direct_kernel ( void  ) const
pure virtual

◆ get_indirect_kernel()

virtual IndirectKernelType get_indirect_kernel ( void  ) const
pure virtual

The documentation for this class was generated from the following file: