ArmNN
 24.02
WorkloadFactoryBase Class Reference

#include <WorkloadFactoryBase.hpp>

Inheritance diagram for WorkloadFactoryBase:
[legend]
Collaboration diagram for WorkloadFactoryBase:
[legend]

Public Member Functions

bool SupportsSubTensors () const override
 
std::unique_ptr< ITensorHandleCreateSubTensorHandle (ITensorHandle &, TensorShape const &, unsigned int const *) const override
 
std::unique_ptr< ITensorHandleCreateTensorHandle (const TensorInfo &, const bool) const override
 
std::unique_ptr< ITensorHandleCreateTensorHandle (const TensorInfo &, DataLayout, const bool) const override
 
std::unique_ptr< IWorkloadCreateWorkload (LayerType, const QueueDescriptor &, const WorkloadInfo &) const override
 Backends should implement their own CreateWorkload function with a switch statement. More...
 
- Public Member Functions inherited from IWorkloadFactory
virtual ~IWorkloadFactory ()
 
virtual void AfterWorkloadsCreated ()
 
virtual const BackendIdGetBackendId () const =0
 

Additional Inherited Members

- Static Public Member Functions inherited from IWorkloadFactory
static bool IsLayerSupported (const BackendId &backendId, const IConnectableLayer &layer, Optional< DataType > dataType, std::string &outReasonIfUnsupported)
 
static bool IsLayerSupported (const IConnectableLayer &layer, Optional< DataType > dataType, std::string &outReasonIfUnsupported)
 
static bool IsLayerSupported (const IConnectableLayer &layer, Optional< DataType > dataType, std::string &outReasonIfUnsupported, const ModelOptions &modelOptions)
 
static bool IsLayerSupported (const BackendId &backendId, const IConnectableLayer &layer, Optional< DataType > dataType, std::string &outReasonIfUnsupported, const ModelOptions &modelOptions)
 

Detailed Description

Definition at line 13 of file WorkloadFactoryBase.hpp.

Member Function Documentation

◆ CreateSubTensorHandle()

std::unique_ptr<ITensorHandle> CreateSubTensorHandle ( ITensorHandle ,
TensorShape const &  ,
unsigned int const *   
) const
inlineoverridevirtual

Implements IWorkloadFactory.

Reimplemented in ClWorkloadFactory, and NeonWorkloadFactory.

Definition at line 19 of file WorkloadFactoryBase.hpp.

22  { return nullptr; };

◆ CreateTensorHandle() [1/2]

std::unique_ptr<ITensorHandle> CreateTensorHandle ( const TensorInfo ,
const bool   
) const
inlineoverridevirtual

Implements IWorkloadFactory.

Reimplemented in ClWorkloadFactory, and NeonWorkloadFactory.

Definition at line 25 of file WorkloadFactoryBase.hpp.

27  { return nullptr; }

◆ CreateTensorHandle() [2/2]

std::unique_ptr<ITensorHandle> CreateTensorHandle ( const TensorInfo ,
DataLayout  ,
const bool   
) const
inlineoverridevirtual

Implements IWorkloadFactory.

Reimplemented in ClWorkloadFactory, and NeonWorkloadFactory.

Definition at line 29 of file WorkloadFactoryBase.hpp.

32  { return nullptr; }

◆ CreateWorkload()

std::unique_ptr<IWorkload> CreateWorkload ( LayerType  type,
const QueueDescriptor descriptor,
const WorkloadInfo info 
) const
inlineoverridevirtual

Backends should implement their own CreateWorkload function with a switch statement.

The case for the switch should be the LayerType and based on that they will call their specific workload creation functionality.

Implements IWorkloadFactory.

Reimplemented in ClWorkloadFactory, and NeonWorkloadFactory.

Definition at line 34 of file WorkloadFactoryBase.hpp.

37  { return nullptr; }

◆ SupportsSubTensors()

bool SupportsSubTensors ( ) const
inlineoverridevirtual

Implements IWorkloadFactory.

Reimplemented in ClWorkloadFactory, and NeonWorkloadFactory.

Definition at line 16 of file WorkloadFactoryBase.hpp.

17  { return false; };

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