24.02
|
Go to the documentation of this file.
9 #include <arm_compute/core/CPP/CPPTypes.h>
17 {
"NonConstWeights",
true},
18 {
"AsyncExecution",
false},
19 {
"ProtectedContentAllocation",
false},
20 {
"ConstantTensorsAsInputs",
true},
21 {
"PreImportIOTensors",
false},
22 {
"ExternallyManagedMemory",
true},
23 {
"MultiAxisPacking",
false},
24 {
"SingleAxisPacking",
true},
25 {
"HasFp16", arm_compute::CPUInfo::get().has_fp16()}
BackendCapabilities GetCapabilities() const override
Returns a BackendCapability if the backend lists the capability The BackendCapability must then be in...
std::shared_ptr< IMemoryManager > IMemoryManagerSharedPtr
BackendOptions BackendCapabilities
std::unique_ptr< IBackendContext > IBackendContextPtr
std::vector< ITensorHandleFactory::FactoryId > GetHandleFactoryPreferences() const override
(Optional) Returns a vector of supported TensorHandleFactory ids in preference order.
IBackendInternal::IBackendContextPtr CreateBackendContext(const IRuntime::CreationOptions &) const override
Create the runtime context of the backend.
const BackendCapabilities cpuAccCapabilities("CpuAcc", { {"NonConstWeights", true}, {"AsyncExecution", false}, {"ProtectedContentAllocation", false}, {"ConstantTensorsAsInputs", true}, {"PreImportIOTensors", false}, {"ExternallyManagedMemory", true}, {"MultiAxisPacking", false}, {"SingleAxisPacking", true}, {"HasFp16", arm_compute::CPUInfo::get().has_fp16()} })
std::unique_ptr< ICustomAllocator > GetDefaultAllocator() const override
Returns the default memory allocator for the backend.
OptimizationViews OptimizeSubgraphView(const SubgraphView &subgraph, const ModelOptions &modelOptions) const override
IBackendInternal::IBackendProfilingContextPtr CreateBackendProfilingContext(const IRuntime::CreationOptions &, IBackendProfilingPtr &backendProfiling) override
Create context specifically used for profiling interaction from backends.
The SubgraphView class represents a subgraph of a Graph.
const BackendId & GetId() const override
IBackendInternal::IMemoryManagerUniquePtr CreateMemoryManager() const override
static const BackendId & GetIdStatic()
std::shared_ptr< arm::pipe::IBackendProfilingContext > IBackendProfilingContextPtr
This is the bridge between backend and backend profiling we'll keep it in the backend namespace.
IBackendInternal::ILayerSupportSharedPtr GetLayerSupport() const override
IBackendInternal::IBackendSpecificModelContextPtr CreateBackendSpecificModelContext(const ModelOptions &modelOptions) const override
Struct for the users to pass backend specific options.
void RegisterTensorHandleFactories(class TensorHandleFactoryRegistry ®istry) override
(Optional) Register TensorHandleFactories Either this method or CreateMemoryManager() and IWorkloadFa...
std::unique_ptr< arm::pipe::IBackendProfiling > IBackendProfilingPtr
std::unique_ptr< IMemoryManager > IMemoryManagerUniquePtr
Copyright (c) 2021 ARM Limited and Contributors.
std::shared_ptr< ILayerSupport > ILayerSupportSharedPtr
std::vector< BackendOptions > ModelOptions
std::unique_ptr< IWorkloadFactory > IWorkloadFactoryPtr
IWorkloadFactoryPtr CreateWorkloadFactory(const IBackendInternal::IMemoryManagerSharedPtr &memoryManager=nullptr) const override
std::shared_ptr< IBackendModelContext > IBackendSpecificModelContextPtr