Age | Commit message (Collapse) | Author |
|
Change-Id: I048c538d4f8c21770aec2b2751c934d9fa15a4dc
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
IBackendProfilingContext
Change-Id: I9ea1da47198a2d60d1a2b81905083d1dfe6b90d5
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Change-Id: I00521756c8a19d10bfdc98c6ef4204c7f84901c6
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
* Updated ABI version to 29 due to being the first ABI break in 22.05
!android-nn-driver:7226
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I9c50007dcd5b5e792757e7bd1213606df5ffec36
|
|
* Find and replace all workloads associated with imported IO
* Only attempt tensorhandle replacement if supported by all workloads
* Add new RefBaseWorkload to enable forced input for ref backend
* Store imported tensorhandles in preImportedTensorhandles instead of outputHandles
* Create pre-imported tensorhandles at network load-time
* Front load import workload validation to load network time
* Only call ReplaceTensorHandle when needed
Change-Id: I3816a71b7f57ae90388bb16462a75d4ef3544fa7
Signed-off-by: Finn Williams <finn.williams@arm.com>
|
|
* Add AfterEnqueueWorkload to IBackendContext
* Implement AfterEnqueueWorkload in ClBackendContext to call Cl sync
* Set allocated data on outputhandler only once
* Handle PreImportedHandles and CurImportedId the same way as Async
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I9f59d57e298d4a494569faec3078d66af799f77b
|
|
* Add pointer to SubgraphView allowing it to store a working copy
implementation of its own representation of graph.
* Make SubgraphView a friend of Graph to allow access to layers.
* Add constructor to SubgraphView taking SubgraphViewWorkingCopyPtr
* Rewrite Graph::SubstituteSubgraph for use on SubgraphView
* Add GetWorkingCopy() method
* Add tests for replacement of multiplication with DepthwiseConv2d
* Check GetBackendHint() has value before passing to PrecompiledLayer
* Add GetOwningIConnectableLayer to IInputSlot to allow traversing from
IConnectableLayer->IOutputSlot->IInputSlot->IConnectableLayer
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: Iaaef14448d8b73867eaee9d69f4f98d5d1bf171c
|
|
* This is to allow EthosN more time to adjust to new API.
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I7da32a7317827dfa619c74fc8801447e7172e7c8
|
|
* This saves new backend implementing old and new pure virtual functions
only to have to remove their implementations of our old api when we
remove in 22.08.
* Make deprecation warnings more descriptive.
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I36c34c3c85f1c359e0b6974866e70edf0bbb4227
|
|
* Make subgraphview a public interface for backends.
Change-Id: I615a29ffec41e947215c3d29c2d7d214e327fb90
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
|
|
* New Virtual Function Added.
* Implemented in Ref Neon CL with switch statement for all layers.
* Deprecate original IsXXXLayerSupported functions.
* Ensure Npu not broken with change.
Change-Id: Icf61b16beec83d6af1cb287e24ab1e98a6138c8c
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I9f80b9f45206db920568e28e363fcb60f5c0819a
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ia941be9bf2c15fe56e49a9b9a2bbe943a8152438
|
|
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: If32049f6c101871eb7c94d8e9d9a4688f45ace5a
|
|
layers
* Deprecate the GetGraph() function in OptimizationViews & remove/fix
occurances where OptimizationViews.GetGraph() is called.
* OptimizationViews has member INetworkPtr.
* OptimizationViews has GetINetwork() method.
* Unit test added to OptimizationViewsTests.cpp.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: Ifc1e53f1c34d786502279631942f0472f401038e
|
|
Move the following header files from backendsCommon to armnn/backends.
* MemCopyWorkload.hpp
* TensorHandle.hpp
* Workload.hpp
* WorkloadData.hpp
* WorkloadFactory.hpp
Replace them with forwarding headers and a pragma deprecation message.
Resolve the deprecation messages in Arm NN code.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I47f116b30f86e478c9057795bc518c391a8ae514
|
|
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: Ie593a5c3882ab8fc7d1d0a4ade30dc69973e6d32
|
|
Subtask of story: IVGCVSW-6164 Add a Pooling3d FrontEnd and Ref Implementation
* Add front end
* Add reference workload
* Add corresponding unit tests
Change-Id: Icce4146dd0a06a1da46a2def00a82d343e171750
Signed-off-by: Tamas Nyiri <tamas.nyiri@arm.com>
|
|
* enable external memory management for neon and ref backends
* change m_TensorMemoryVector to hold shared pointers
* change input layer backend Id to match backend id of connected layer
Signed-off-by: Finn Williams <finn.williams@arm.com>
Change-Id: I2216a724028312eb101b290df3f224177826b1a0
|
|
* Added implementation of ClBackendDefaultAllocator
* Added back in some pure virtual functions that were mistakenly removed from the CustomMemoryAllocatorSample
* Added a new Gralloc MemorySource for memory which originates from the gpu
* Added unittests
Signed-off-by: David Monahan <David.Monahan@arm.com>
Change-Id: Id2abb33d82697df36426f5709756c616af3e8ed7
|
|
* Get number of inputs and outputs from optimized network.
* Get number of cached files if backend supports caching.
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: Ie02ac123bb7df9b0593a2fe46b5bb564a5994780
|
|
backends
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: If2879e8a82692285e7fa3f4d09abd608ca28de12
|
|
* Add ClearImportedInputs/Outputs function to IRuntime
* Add UnImport function to ITensorHandle
* Remove mutex from IWorkingMemHandle
Change-Id: I34c9b6e1618755e10f3b4597afa1d9a9ea97e5fe
Signed-off-by: Finn Williams <finwil01@e127804.cambridge.arm.com>
|
|
* Add validator wrapper
* Add validation logic:
Condition #1: All Memblocks have been assigned to a MemBin
Condition #2: No Memblock is assigned to multiple MemBins
Condition #3: No two Memblocks overlap in both the X and Y axis
Memblocks can overlap on the X axis for
SingleAxisPacking
Memblocks can overlap on the Y axis or
the X for MultiAxisPacking but not both
* Add test strategies and tests for overlap, duplicates
and unassigned blocks
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I7a779b35538ecf18a33b62b84512eba69eda1f86
|
|
* Removes deprecated AddLayer, IsLayerSupported functions
* Marks the whole LayerVisitor class as deprecated not just the
constructor. This required to wrap all Accept functions in a
no deprecate macro because the LayerVisitor is used as a parameter in
there
* Removes usage of deprecated LayerVisitor and replaces it
with ExecuteStrategy. This required a few structural changes
in the unit tests
* Adds a default implementation for IStrategy called StrategyBase
* Changes pyarmnn to use non deprecated constructor for
INetworkProperties and adds related unit test
* Marks usage of deprecated code in pyarmnn as deprecated. This
required to extend INetworkProperties to allow backwards compatibility
* Removes deprecated functions from CpuAcc, GpuAcc and Ref backends
Note: This patch breaks compatibility with backends that are not
updated in this patch
!android-nn-driver:6325
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Id13b6f37a74d26eadeda2da1dc92915e725ed5a5
|
|
* Added front-end
* Added Reference workload
* Added Serializer & Deserializer support
* Added unit tests
* Added NDHWC DataLayout
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Iec4d39e7433b5334d52fa44cf8efc6bcd39319d8
|
|
* Add front end
* Add reference workload
* Add unit tests
* Add Serializer and Deserializer
* Update ArmNN Versioning
Signed-off-by: Simon Obute <simon.obute@arm.com>
Change-Id: I9ac1f953af3974382eac8e8d62d794d2344e8f47
|
|
strategy'
* Added IMemoryOptimizerStrategy interface
* Added ConstLayerMemoryOptimizer strategy
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I6a92e659379e5cc39c375b669678eee8a8c08c20
|
|
* Backend API is still unstable and we shouldn't
start to increment until we are ready, the change it was incremented
in originally was also a major break due to the addition of
a virtual method which would misalign the v-table.
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I9c15bba29fe3b3258ae592e96889402f950b2a95
|
|
* Updated supported sources in ICustomAllocator
* Added MemorySource to the overridden MemoryRegion in ClBackend
* Added switch statements to handle mapping/unmapping of differing memory sources
* Added Import handler to map allocated DmaBuf memory
Signed-off-by: David Monahan <david.monahan@arm.com>
Change-Id: I2125f6f6fe72363d87ead62e211fc45e4fa28b3f
|
|
* Updates the runtime options with a CustomAllocatorMap which allows to define a CustomAllocator for specific backends
* Change IBackendInternal interface to use a shared pointer to a custom allocator
* Update ClBackend.hpp/cpp to use the CustomAllocator
* Adds an example application and unit test which uses a CustomAllocator for GpuAcc
* Refactor of the interface to use MemorySource instead of the user Mapping cl_mem directly
* Modify the BackendRegistry to also hold a registry of CustomAllocators
* BackendRegistry Deregister will also deregister any allocators associated with that backend id
* set_global_allocator within the BaseMemoryManager so that it always matches the currently used allocator
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I156d819686021865f4375e6cb7a5c5dec8fee9e8
Signed-off-by: David Monahan <david.monahan@arm.com>
|
|
* Add new ProfilingDetails class to construct operator details string
* Add new macro which helps append layer details to ostream
* Add ProfilingEnabled to NetworkProperties so that profiling can be
realised when loading the network
* Add further optional info to WorkloadInfo specific to convolutions
* Generalise some JsonPrinter functions into JsonUtils for reusability
* Remove explicit enabling of profiling within InferenceModel as it is
done when loading network
* Add ProfilingDetails macros to ConvolutionWorkloads for validation
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: Ie84bc7dc667e72e6bcb635544f9ead7af1765690
|
|
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I57bcbdec3eb0155f41af0fe7d6abf9bac2ec86eb
|
|
* Adds logic to the Runtime to activate protected mode
* Adds ProtectedContentAllocation backend capability to ClBackend
It's not fully activated yet because the CustomAllocator is
missing. Will print an error message and won't register the backend
but won't fail.
* Extends IBackendInternal with an UseCustomAllocator function.
* Adds related unit tests
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I64f465c5800eb104aa90db1bbf772a4148b5072f
|
|
* Added ICustomAllocator.hpp to include/armnn/backends/
* Added the ability to specify an ICustomAllocator to the CreationOptions
Signed-off-by: David Monahan <david.monahan@arm.com>
Change-Id: I820e468b691aa032c9bd2c1e1257dc9d02f981d9
|
|
* Add front end
* Add reference workload
* Serialization/Deserialization
* Add unit tests
* Update ArmNN Versioning
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I6fcb1fa341d6f08dea4003b13544e6e9f53fefd3
|
|
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: I05fc331a8e91bdcb6b8a2f32cfb555060fc5d797
|
|
into profiling common
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: I0d672cc782cc2de66a88acf0d83fcd40208ace95
|
|
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I4e4eb107aa2bfa09625840d738001f33152e6792
|
|
* Generalises ConstCpuTensorHandle and inherited
classes by removing 'Cpu' from aliases.
* New renamed classes: ConstTensorHandle, TensorHandle,
ScopedTensorHandle, PassthroughTensorHandle,
ConstPassthroughTensorHandle.
Signed-off-by: James Conroy <james.conroy@arm.com>
Change-Id: I1824e0e134202735fb77051f20a7252f161dfe16
|
|
* ILayerSupport is a backend interface, and so in order
to prevent false positives in ABI Compliance Checker
move it to backends folder.
* Front end users should use ABI stable
GetILayerSupportByBackendId which takes
advantage of LayerSupportHandle
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: Ie119451c5d55f114525dc79b6f3474b2df7e3418
!android-nn-driver:5516
|
|
* Added thread safe execution mechanism for armnn
* Removed duplicate function bool Compare(T a, T b, float tolerance)
* Added StridedSliceAsyncEndToEndTest
* Fixed memory leak
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I2d367fc77ee7c01b8953138543e76af5e691211f
|
|
TfLiteDelegate support for FullyConnected Operator'
* Added front-end support for non-const weights for FULLY_CONNECTED operator
* Added FULLY_CONNECTED end-to-end test
* Updated FULLY_CONNECTED operator support in TfLite Arm NN Delegate for non-const weights
* Updated the version numbers
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: Iffa5b9aa9297aca4c02d923cce4636c88ac21faa
|
|
* Added Fused Activation Optimization to both CL and Neon backends.
* Added Fused Activation support to all the CL and Neon workloads
that support it.
* Changed ProfilingTest network to be a Convolution layer
followed by an Abs layer rather than an Activation layer.
* Added IBackendInternal::OptimizeSubgraphView function that can accept a
ModelOptions.
* Network will now call OptimizeSubgraphView passing in the ModelOptions.
Signed-off-by: Keith Davis <keith.davis@arm.com>
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ib536ac3cbafc7d9b35c139ad9a65b7735262cd9d
|
|
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I4eb3e27837aea926593d49f9ccea07bab8388d5b
|
|
factory'
* Pass ModelOptions to WorkloadFactory
* Updated signature of CL and NEON Convolution2d workloads added FastMathEnabled param.
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I536178be8e4dd4083489e69febadaf0feeba46d2
|
|
* Introduced ModelOptions to IBackendInternal
* Introduced ModelOptions to Network
* Added FastMathEnabled parameter to Conv2d Validate function in CL and NEON
* Added Optimizer tests
Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com>
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: Ib54c1e82cb3d89a52756ed499cf91b6a7fdb2063
|
|
* Added functionality to query if TensorHandleFactory supports InPlaceComputation
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: Icf5bfc5f999fc5d03681dcb8cec88d921842458b
|
|
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: Ie8acb9c729af4f95488aecf795f45ff12364f9ca
|
|
Change-Id: Ia4b4bb3be0ed6e933c77d58f8e9879b1370e9537
Signed-off-by: Laurent Carlier <laurent.carlier@arm.com>
|