Age | Commit message (Collapse) | Author |
|
* Add functionality to print output tensors to file in tempdir
* UnitTests
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: Idfb4c186544187db1fecdfca11c662540f645439
|
|
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
Change-Id: I3573078206272c3a72a2b3acf8781ab458ea6c90
|
|
* IRuntime.hpp includes one file from the profiling interface and it's
causing some build problems for some users. Replace the include with
a forward declaration of arm::pipe::ILocalPacketHandlerSharedPtr.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I6064e02db4ca056423bb448ddc0d712b50a704cb
|
|
* Add a breakdown of the runtime options to the documentation.
* Exclude test classes from Doxygen generation.
* Limit the file extension selection for Doxygen generation.
* Add the support library to be generated.
* Fix some broken markups.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I81896f2d7fff503a1d51d6d4ac3876aa8b84118e
|
|
* Added files based on RefBackend
* Added PreCompiled Workload skeleton
* Increment ABI version of armnnTestUtils for CreateInput which had
been left as pure virtual, added base implementation for it.
* Add IsTosaLayerSupported() for Addition
Change-Id: I4c963adf3f50593d17ecdf21554502a64ad3bd76
|
|
overridden
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: If594e291951a5f9ed1957a19a971c498f6e7843f
|
|
* AddConv and AddDWConv with weights and bias
* ResizeBilinearDescriptor
* b,blacklist option in accuracy tool
!android-nn-driver:8172
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ibbc04fd18be7f938b11590bf67cd7af103cb4d99
|
|
* Added transpose parameters to pre-transpose each input tensor's slices
* Added adjoint parameters to pre-adjoint each input tensor's slices
* Small refactoring (BatchMatMulDescriptor static helpers and BatchMatMulImpl constructor)
* Updated input validation and output shape inference for parameters
* Additional layer unit tests for parameters added
* Versionings incremented
Signed-off-by: Samuel Yap <samuel.yap@arm.com>
Change-Id: Ibe5242a8a5bf604c13de0dc65844fd6c421cc667
|
|
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
Change-Id: I3a3aab7b5042349cb2df8517678306665e037610
|
|
This reverts commit 1a7f033768acb27da11503bd29abb468d2e77f9e.
List of fixes to be able to add this code again:
* "emplacing_back" the vector inputTensors into the vector m_InputTensorsVec outside the for loop
* GetIOInfo() uses IOptimizedNetwork instead of INetwork, where the infered shapes are not saved
* Add missing data type Signed32 to SetupInputsAndOutputs()
* PrintOutputTensors() prints the actual output without dequantizing
* Add profilingDetailsMethod as input in networkProperties in ArmNNExecutor constructor
* Fix typos
Change-Id: I91de166f87228282db3efa27431fe91458834442
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ic6634d48892d11e5f146cdf285e1e333e93e9937
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
|
|
* Descriptors added for BatchMatMul
* Layer definition added
* Input validation added (will likely change when opt. param support comes in)
* Ref workload implementation for BatchMatMul added (will also change with opt. param support)
* Ref layer tests made for BatchMatMul
* CMake and other build files updated
Signed-off-by: Samuel Yap <samuel.yap@arm.com>
Change-Id: Ic885301da543ee0fbe7922b85e7f9658c4efc617
|
|
* Refactor backend capability checks in LoadedNetwork.
* ImportInputs should check the number of tensors does not exceed the
number of inputs.
* In EnqueueWorkload the check for for the count of input tensors
was ignoring pre-imported inputs.
* Added checks to verify ImportInputs/ImportOutputs worked as expected
in EndToEndTestImpl.
* Improve documentation on ImportInputs/ImportOutputs in IRuntime.hpp.
* Disabled import tests in CL and Neon EndToEndTests that cannot work.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: Iae4b2644a1c9f01ee72bce1afb211661cc9ae2e3
|
|
* ExecutionData holds a void* which can be assigned to data required
for execution in a backend. WorkingMemDescriptors are used in the Ref
backend which hold TensorHandles for inputs and outputs.
* Updated ExecuteAsync functions to take ExecutionData.
* Added CreateExecutionData and UpdateExectutionData to IBackendInternal.
* Streamlined experimental IWorkingMemHandle API by removing map related
function and unused m_workingMemDescriptorMap from WorkingMemHandle.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I54b0aab12872011743a141eb42dae200227769af
|
|
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I8c59f1feb9c44351427715b08d762b5a73320af5
|
|
* Add virtual GetSlotIndex to IInputSlot
* Fix logic in GetWorkingCopy to use index of slots; so as not
to add slots to cloned subgraphView if not in original subgraphView
* Add test to cover cases when not all inputSlots to subgraphView layer
are part of the original subgraphView
* Mark SubgraphView::GetWorkingCopy() as const
Change-Id: I1d540f84c57f97f6c834ec06ca13393ffa55d379
|
|
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: I9ccaefbe28ea572e9e2b4a2168574804667f7460
|
|
* Added non-const variants of existing const member functions in
IInputSlot and IOutputSlot to retrieve non-const IConnectableLayer
Signed-off-by: Nabeel Ahmad <nabeel.ahmad@arm.com>
Change-Id: Ic3388b578324edb4d2cca36acce6560ad1ce83c5
|
|
This reverts commit a0f8b15d4ddb5075f380003ff31b271d389d3b66.
Reason for revert: <Test ClDmaBufInternalTests review >
Change-Id: Ibc4a77fa008643849da7330391942e4c87b941e2
|
|
This reverts commit 03bf98a8bc51ad20eef4b9ca5fbf6ce15e063721.
Reason for revert: Caused failures in tests located in internal repo.
Change-Id: If35cb0ede349b270e4e7827324382e09455d8cfa
|
|
Only one bool is used to indicate whether inputs should be imported.
However, its possible for the user to want to import inputs but not
export outputs. In addition it's possible for a user to enabled import
during optimize but then pass a memory source that does not require
import.
* Add m_ExportEnabled to INetwork.hpp.
* Modify Network::dNetwork to consider both m_ImportEnabled
and m_ExportEnabled.
* Add ValidateSourcesMatchOptimizedNetwork to LoadedNetwork to validate
import options between optimize and network load.
* Update the TfLite delegate consider exportEnabled flag in the
optimizer.
!armnn-internal-tests:425350
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I776eab81595898e43f91ab40306962eae61329f4
|
|
dimensions
* Added allow-expanded-dims to TFLite parser and ArmNN delegate
* If true ArmNN will disregard dimensions with a size of 1 when
validating tensor shapes. Tensor sizes must still match.
* This allows us to support models where tensors have expanded
dimensions (i.e. extra dimensions with a size of 1).
* Fixed bug in Network where it assumed that only the first option
could be ShapeInferenceMethod.
* Fixed bug where m_ShapeInferenceMethod was lost when copying or
moving Graphs.
* Changed Delegate to pass "infer-output-shape", "allow-expanded-dims"
and other BackendOptions through to the Network during construction.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: Ibe7c5ae6597796fc9164cb07bd372bd7f8f8cacf
|
|
* Resolves: IVGCVSW-6952
Signed-off-by: Finn Williams <finn.williams@arm.com>
Change-Id: Ic85bd5267cf94e0ee8461ff4e62b9db3cb80877a
|
|
* Signature change is ABI/API break, overloaded and forwarded to new function.
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I8590a6fd65986b5aeff905c1e761cb5c51042e99
|
|
* Update Front-end and Tools.
* Updated Serializer, Deserializer and unit tests to reflect this.
* Updated TfLiteDelegate, TfLiteParser and OnnxParser.
* Updated Ref.
* Fixed resulting Neon / CL tests
* Unified optimizers for conv2d ops
* Optimizer Fix - Fp32ToBf16
* Partial implementation for ACL backends to fix VTS failures
!android-nn-driver:7477
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I5fb18877f7ee32643e15a9818945356274bb401b
|
|
!android-nn-driver:7418
* Update Front-end and Tools.
* Updated Serializer, Deserializer and unit tests to reflect this.
* Updated TfLiteDelegate, TfLiteParser and OnnxParser.
* Change NNDriver to new API.
* Updated Ref.
* Neon and Cl backend partially completed (Backend.cpp files).
* Added dynamic or constant input EndToEnd tests.
* Added ConstantTensorAsInputMemeberVariableRedirect Optimization.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: Ib18b6c10a093042e165e25237dc04a4c67ba82da
|
|
* Corrected TensorInfo order for IsUnidirectionalSequenceLstmSupported
* outputStateOut TensorInfo is not optional.
* cellStateOut TensorInfo is not optional.
* TensorInfo Order matches other QLSTM/LSTM layers.
* Added missing parameters to UnidirectionalSequenceLstmOperator for
delegate.
* Added quantized UnidirectionalSequenceLstm support to Neon
!android-nn-driver:7457
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I26dde1bb96793dd25eb9081ca5ae5f63752288c4
|
|
* Add front end
* Add reference workload
* Add unit tests
* Add EndToEnd test
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I4cebd17b18476df86162e2dda3366c10e80bd2f8
|
|
* Added Unidirectional Sequence Lstm support to TFLite Parser
* Added support for float operations with int8 weights to TFLite Parser
* Added to Conv2d, Conv3D, DepthwiseConv2D, FullyConnected,
TransposeConv and UnidirectionalSequenceLstm
* Renamed subgraphIndex to subgraph to fix name-shadowing warning.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I818976ab88abc05dcb4bad246fb4108e6e879283
|
|
Change-Id: Icc2f83c5f27f413758fee3e5c1445e9fc44f42c8
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
android-nn-driver do not execute.
* Change to src/backends/cl/workloads/ClLstmFloatWorkload.cpp fix LstmTests_GpuAcc tests.
* Change to src/backends/cl/workloads/ClConvertFp16ToFp32Workload.hpp & ClConvertFp32ToFp16Workload.hpp
fix MeanTests_GpuAcc and Convolution2DTests_1.1 tests.
* Added UnitTests to src/backends/cl/test/ClImportTensorHandleTests.cpp to test import on Convert Layers.
!android-nn-driver:7264
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I0c46dc4b9c54eca8771ab12ed0302b6224606957
|
|
!android-nn-driver:7337
Change-Id: Ide401623829cc99fb9b51e9bbce3482ce706a8dd
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Change-Id: I18b8ca22896567904768170350ee5eb22edd4a22
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Change-Id: I048c538d4f8c21770aec2b2751c934d9fa15a4dc
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Profiling code
Change-Id: Id46a9a0576091df21b2af5b472f1ca5c6335e8a3
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: Ie99fe9786eb5e30585f437d0c6362c73688148db
|
|
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>
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I82f3bd99b3c1d4d8a013b1e987a533a8071fbeea
|
|
* 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>
|
|
* Remove deprecated INetwork::AddFullyconnectedLayer() taking weights
as argument as they are now taken as separate input layers.
* Updated test that was using the deprecated function.
* Remove calls in pyarmnn
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: Ibc52ac7fa57afd9033eb226bbc24a09e88a7d361
|
|
Change-Id: I30a46f3368bbbf33019eac4fa1245f6ff69deacd
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Although the Neon and Ref backends can use each other's TensorHandles,
their TensorHandleFactories can't use each other's MemoryManagers.
Incorrectly passing the NeonMemoryManager to the RefTensorHandleFactory
in unit test utility code resulted in an incorrect static_pointer_cast
and a warning from the Undefined Behaviour Sanitizer.
This change fixes the test code, and replaces use of static_pointer_cast
with armnn::PolymorphicPointerDowncast which will check that the cast is
legal in debug builds.
Also, remove MockWorkloadFactoryHelper.hpp as it is unused.
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
Change-Id: I2b425e86fccacd7cc5ff186521fc6e53e7e50c77
|
|
* Move MemCopyTestImpl.hpp from src/backends/aclCommon/test/ to
include/armnnTestutils.
* Refactor MemCopyTests in aclCommon, cl and Neon.
* Introduce RefMemCopyTests to exercise this utility in x86 builds.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I8824f013d3656658ed0a2904bb79384e3af68641
|
|
* Replace memory area with vals in tensor creation
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: Id92173a515e643d14bd9e24eac1cb834ae55bd1e
|
|
* 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
|
|
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: I01f42a520d15c6dabd2f77c7715c91b8f7026476
|
|
* Create a MockBackend in armnnTestUtils.
* Create corresponding WorkloadFactory, TensorHandle, TensorHandleFactory
MemoryManager and WorkloadFactoryHelper classes.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I884731b109bc623a7272e5ad333ff754f8c13ae1
|
|
Change-Id: Id55a460ecb510f5b30235b03f54390f2c8188fc2
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|