Compute Library
 22.08
InputPatchElement< T, IsGeneric, OutputStage > Class Template Reference

#include <depthwise_depthfirst_multiplier.hpp>

Data Structures

struct  Workspace
 

Static Public Member Functions

static size_t get_element_size (const WorkspaceArgs< IDepthfirstStrategy, OutputStage > &args)
 
template<class WorkspaceType >
static void * initialise (WorkspaceType *ws, void *buffer, const WorkspaceArgs< IDepthfirstStrategy, OutputStage > &args)
 

Detailed Description

template<typename T, bool IsGeneric = false, typename OutputStage = Nothing>
class arm_conv::depthwise::depthfirst_multiplier::InputPatchElement< T, IsGeneric, OutputStage >

Definition at line 251 of file depthwise_depthfirst_multiplier.hpp.

Member Function Documentation

◆ get_element_size()

static size_t get_element_size ( const WorkspaceArgs< IDepthfirstStrategy, OutputStage > &  args)
inlinestatic

Definition at line 262 of file depthwise_depthfirst_multiplier.hpp.

263  {
264  return sizeof_input_rows(args) + sizeof_input_padding(args) + sizeof_input_patch(args);
265  }

◆ initialise()

static void* initialise ( WorkspaceType *  ws,
void *  buffer,
const WorkspaceArgs< IDepthfirstStrategy, OutputStage > &  args 
)
inlinestatic

Definition at line 268 of file depthwise_depthfirst_multiplier.hpp.

References GemmTuner::args.

269  {
270  auto buffer_bytes = reinterpret_cast<char *>(buffer);
271 
272  ws->input_rows = reinterpret_cast<const T **>(buffer_bytes);
273  buffer_bytes += sizeof_input_rows(args);
274 
275  ws->input_padding = reinterpret_cast<T*>(buffer_bytes);
276  buffer_bytes += sizeof_input_padding(args);
277 
278  ws->input_patch = reinterpret_cast<T*>(buffer_bytes);
279  buffer_bytes += sizeof_input_patch(args);
280 
281  // Initialise the padding
282  memset(ws->input_padding,
283  get_input_buffer_fill_value(args.output_stage),
284  sizeof_input_padding(args));
285 
286  return buffer_bytes;
287  }

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