20.11
|
#include <ClBackend.hpp>
Static Public Member Functions | |
static const BackendId & | GetIdStatic () |
![]() | |
static constexpr BackendVersion | GetApiVersion () |
Returns the version of the Backend API. More... | |
Additional Inherited Members | |
![]() | |
using | IWorkloadFactoryPtr = std::unique_ptr< IWorkloadFactory > |
using | IBackendContextPtr = std::unique_ptr< IBackendContext > |
using | IBackendProfilingContextPtr = std::shared_ptr< armnn::profiling::IBackendProfilingContext > |
This is the bridge between backend and backend profiling we'll keep it in the backend namespace. More... | |
using | IBackendProfilingPtr = std::unique_ptr< armnn::profiling::IBackendProfiling > |
using | OptimizationPtr = std::unique_ptr< Optimization > |
using | Optimizations = std::vector< OptimizationPtr > |
using | ILayerSupportSharedPtr = std::shared_ptr< ILayerSupport > |
using | IBackendSpecificModelContextPtr = std::shared_ptr< IBackendModelContext > |
using | IMemoryManagerUniquePtr = std::unique_ptr< IMemoryManager > |
using | IMemoryManagerSharedPtr = std::shared_ptr< IMemoryManager > |
using | GraphUniquePtr = std::unique_ptr< Graph > |
using | SubgraphViewUniquePtr = std::unique_ptr< SubgraphView > |
using | supported = std::unique_ptr< ISubGraphConverter > |
using | instead = std::unique_ptr< SubGraph > |
![]() | |
IBackendInternal ()=default | |
Creation must be done through a specific backend interface. More... | |
![]() | |
IBackend () | |
virtual | ~IBackend () |
Definition at line 12 of file ClBackend.hpp.
|
default |
|
default |
|
overridevirtual |
Create the runtime context of the backend.
Implementations may return a default-constructed IBackendContextPtr if no context is needed at runtime. Implementations must throw BackendUnavailableException if the backend cannot be used (for example, necessary accelerator hardware is not present). The default implementation always returns a default-constructed pointer.
Reimplemented from IBackendInternal.
Definition at line 104 of file ClBackend.cpp.
Referenced by ClBackend::GetId().
|
overridevirtual |
Create context specifically used for profiling interaction from backends.
Reimplemented from IBackendInternal.
Definition at line 109 of file ClBackend.cpp.
Referenced by ClBackend::GetId().
|
overridevirtual |
Reimplemented from IBackendInternal.
Definition at line 120 of file ClBackend.cpp.
Referenced by ClBackend::CreateWorkloadFactory(), ClBackend::GetId(), ClBackend::GetLayerSupport(), and ClBackend::OptimizeSubgraphView().
|
overridevirtual |
Reimplemented from IBackendInternal.
Definition at line 48 of file ClBackend.cpp.
Referenced by ClBackend::GetId().
|
overridevirtual |
Implements IBackendInternal.
Definition at line 53 of file ClBackend.cpp.
Referenced by ClBackend::GetId().
|
overridevirtual |
Reimplemented from IBackendInternal.
Definition at line 67 of file ClBackend.cpp.
References TensorHandleFactoryRegistry::RegisterFactory(), and TensorHandleFactoryRegistry::RegisterMemoryManager().
|
overridevirtual |
Reimplemented from IBackendInternal.
Definition at line 60 of file ClBackend.cpp.
References ClBackend::CreateBackendSpecificModelContext().
|
overridevirtual |
Reimplemented from IBackendInternal.
Definition at line 79 of file ClBackend.cpp.
References ClBackend::CreateBackendSpecificModelContext(), TensorHandleFactoryRegistry::RegisterFactory(), and TensorHandleFactoryRegistry::RegisterMemoryManager().
|
overridevirtual |
(Optional) Returns a vector of supported TensorHandleFactory ids in preference order.
Reimplemented from IBackendInternal.
Definition at line 91 of file ClBackend.cpp.
References ClTensorHandleFactory::GetIdStatic().
Referenced by ClBackend::GetId().
|
inlineoverridevirtual |
Implements IBackend.
Definition at line 19 of file ClBackend.hpp.
References ClBackend::CreateBackendContext(), ClBackend::CreateBackendProfilingContext(), ClBackend::CreateBackendSpecificModelContext(), ClBackend::CreateMemoryManager(), ClBackend::CreateWorkloadFactory(), ClBackend::GetHandleFactoryPreferences(), ClBackend::GetIdStatic(), ClBackend::GetLayerSupport(), ClBackend::GetOptimizations(), ClBackend::OptimizeSubgraphView(), and ClBackend::RegisterTensorHandleFactories().
|
static |
Definition at line 42 of file ClBackend.cpp.
References armnn::ClBackendId().
Referenced by ClBackend::GetId().
|
overridevirtual |
Implements IBackendInternal.
Definition at line 126 of file ClBackend.cpp.
Referenced by ClBackend::GetId().
|
overridevirtual |
Reimplemented from IBackendInternal.
Definition at line 135 of file ClBackend.cpp.
References ClBackend::CreateBackendSpecificModelContext().
|
overridevirtual |
Reimplemented from IBackendInternal.
Definition at line 115 of file ClBackend.cpp.
Referenced by ClBackend::GetId().
|
overridevirtual |
Reimplemented from IBackendInternal.
Definition at line 144 of file ClBackend.cpp.
References armnn::Activation, armnn::Addition, OptimizationViews::AddUntouchedSubgraph(), armnn::BatchNormalization, SubgraphView::begin(), Layer::BeginOutputSlots(), armnn::ClAdditionValidate(), armnn::ClBatchNormalizationValidate(), armnn::ClConvolution2dWorkloadValidate(), armnn::ClDepthwiseConvolutionWorkloadValidate(), armnn::ClDivisionWorkloadValidate(), armnn::ClFullyConnectedWorkloadValidate(), armnn::ClMultiplicationWorkloadValidate(), armnn::ClSubtractionValidate(), armnn::Convolution2d, ClBackend::CreateBackendSpecificModelContext(), armnn::DepthwiseConvolution2d, armnn::Division, SubgraphView::end(), Layer::EndOutputSlots(), armnn::FullyConnected, Layer::GetAdditionalInformation(), InputSlot::GetConnectedOutputSlot(), Layer::GetGuid(), Layer::GetInputSlot(), Layer::GetName(), LayerWithParameters< Parameters >::GetParameters(), OptimizationViews::GetSubstitutions(), OutputSlot::GetTensorInfo(), Layer::GetType(), ClBackendModelContext::IsFastMathEnabled(), BatchNormalizationLayer::m_Beta, FullyConnectedLayer::m_Bias, DepthwiseConvolution2dLayer::m_Bias, Convolution2dLayer::m_Bias, Convolution2dDescriptor::m_BiasEnabled, DepthwiseConvolution2dDescriptor::m_BiasEnabled, BatchNormalizationLayer::m_Gamma, BatchNormalizationLayer::m_Mean, BatchNormalizationLayer::m_Variance, FullyConnectedLayer::m_Weight, DepthwiseConvolution2dLayer::m_Weight, Convolution2dLayer::m_Weight, armnn::Multiplication, armnn::ReportUntouchedLayers(), and armnn::Subtraction.
Referenced by ClBackend::GetId().
|
overridevirtual |
(Optional) Register TensorHandleFactories Either this method or CreateMemoryManager() and IWorkloadFactory::CreateTensor()/IWorkloadFactory::CreateSubtensor() methods must be implemented.
Reimplemented from IBackendInternal.
Definition at line 96 of file ClBackend.cpp.
References TensorHandleFactoryRegistry::RegisterFactory(), and TensorHandleFactoryRegistry::RegisterMemoryManager().
Referenced by ClBackend::GetId().