Age | Commit message (Collapse) | Author |
|
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>
|
|
!android-nn-driver:6532
!armnn-internal-tests:372451
* Made fix to 2 out of 3 ConstTensor() constructors in Tensor.hpp to
throw InvalidArgumentException when TensorInfo isConstant parameter
is false.
* Added new ConstTensor() constructor in Tensor.cpp to accept vector<>.data()
using template<typename MemoryType>.
* Fixed runtime->GetOutputTensorInfo()/GetInputTensorInfo() methods and
called submethods to return TensorInfo& rather than TensorInfo.
* Fixed all failing unit tests for CpuRef/CpuAcc/GpuAcc to ensure any
ConstTensor created has it's TensorInfo isConstant set to true.
* Added unit tests in TensorTest.cpp to ensure ConstTensor constructors
throw InvalidArgumentException when TensorInfo isConstat parameter is
false.
* Added unit test to ensure an empty ConstTensor constructor will set
TensorInfo isConatant to true.
* Indentation fixes.
* Fix to arm_tensor.i to add isConstant parameter to TensorInfo
constructor. Added methods IsConstant() and SetConstant().
* Fix to const_tensor.py to throw ValueError when TensorInfo
isConstant is set to false when constructing a ConstTensor.
* Fixed PyArmnn unit tests to set TensorInfo isConstant to
True when ConstTensor is used.
* Added unit tests in test_const_tensor.py to ensure ConstTensor
constructors throw ValueError when TensorInfo isConstat parameter
is false.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I44e440dd0422c366d31bbdbc77ad2b4db0bde148
|
|
* 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
|
|
Change-Id: Iee9720a9df6f2f0d8e00313e1972f3a3df33cb15
Signed-off-by: Keith Davis <keith.davis@arm.com>
|
|
* Moves the creation of a DelegateOption object from
armnn_external_delegate to DelegateOptions.
* This allows this code to be reused elsewhere
* Allow boolean values of DelegateOptions to be passed as
strings e.g. 'true' or 'false'
* Add unit tests
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I0ada17f511027dd3f47a85142cae346464682f5a
|
|
* Move TContainer to armnnUtils library
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I3c0f895d11b66f6ee224ac689a19d0477f990b98
|
|
* 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
|
|
* Added PaddingMode enum to PaddingDescriptor to enable Symmetric and
Reflect padding.
* Added Symmetric and Reflect Ref implementation.
* Added Serializer & Deserializer support.
* Added unit tests.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I4bed907b31742b32ccefe5e8ca39a6f1e5bd9dee
|
|
* Pass through the value of m_EnableProfiling from Executenetwork to
DelegateOptions.
* If internal profiling is enabled print it out from inside the delegate.
* Remove an unnecessary ProfilerImpl instance from WorkingMemhandle.hpp
* Remove an unnecessary parameter from TfLiteDelegateMainImpl in
ExecuteNetwork.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: Ia1d4b1eb3a05ca5b4d80cc39e138c7fac182d948
|
|
* Remove ConfigureDetailsObject function as it does not have ProfilerImpl scope
* Add Graph title into Json structure
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: Ia5068a5a457a77fd01e974e0b5aa0f309f15bfa7
|
|
* Refactor the strategy library to be more generic
* Shorten the names of the current strategies
* Change validatorStrat to throw exceptions
Change-Id: I0d9c9ef609b2d8675e5788610d1accac6767c660
Signed-off-by: Finn Williams <finwil01@e127804.cambridge.arm.com>
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
* Added a single definition of TContainer to include/armnn/Utils.hpp
* Change all files which contained their own identical definitions of TContainer to use the new one
Signed-off-by: David Monahan <David.Monahan@arm.com>
Change-Id: I63e633693a430bbbd6a29001cafa19742ef8309a
|
|
* Add parent LoadedNetwork profiling point
* Make generic populateParent function to print new descendents in json
Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I41dc876bffae88e61a16d07fb13b062c321e78a6
|
|
Signed-off-by: Finn Williams <finwil01@e127804.cambridge.arm.com>
Change-Id: If128ed0a8ed2b9a0ed8001715133ba5a6c6d682c
|
|
* Constant weights and biases are now stored as Constant layers.
* Updated Serializer, Deserializer and unit tests to reflect this.
* Updated TfLiteParser.
* Updated Ref backend to handle constant weights and
bias as inputs rather than reading from member variables.
* Added Conv3d EndToEnd test.
* Added NCDHW DataLayout and unit tests.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I10cdd354ca5f1c748730f92ffdb36bf810f83c8e
|
|
Signed-off-by: Finn Williams <finwil01@e127804.cambridge.arm.com>
Change-Id: I84b52f8c7d7d0c1063c0daae0750dd820447aa6c
|
|
* This is to enable later work to instrument the Optimizer.
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
Change-Id: I2cf1fe022e0d100d6d8705adfbb8cab3ffc96a86
|
|
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
Change-Id: Ifcdafc12ca09455af2389bf84e34b6b87bbb0b15
|
|
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
Change-Id: I2705fe04b5ec3a6046584d443f10d2d5cb3b5b87
|
|
* Created method in Graph.cpp/hpp ConstructErrorMessageForUnconnectedInputs() to
verify weights and bias are set for FullyConnected layers.
* Above method called in Graph.cpp InferTensorInfos() to print a more descriptive
message when the weights or bias for a FullyConnectedLayer is not set.
* Added try-catch in TestUtils.cpp Connect() to ensure input slot is available
when connecting two layers. This ensures we catch the case where bias is
is not enabled and we try and set a bias layer.
* Added unit tests to check for LayerValidationError when weights or
bias is not set on a FullyConnectedLayer.
* Added unit test to check for LayerValidationError when bias is not
enabled and we try and connect bias to FullyConnected Layer.
* Seperated FullyConnected EndToEnd unit test method into two methods.
First, performs tests on EndToEnd examples asserting output value.
Second, performs tests on error catching.
* Added comments to created methods.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I5207d8c5ebacfff598556742ccd4f53eef7dee0c
|
|
* Upgrade doctest to version 2.4.6 to allow Arm NN to build with
glibc 2.34
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Iff2ef286ba5ad0e0ec0f54f510253a2ec4b464d3
|
|
* 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>
|
|
isn't set
* Updated code in Graph.cpp InferTensorInfos() to be more descriptive.
* Added method VerifyConstantLayerSetTensorInfo() in Graph.cpp/hpp
to error when ConstantLayer TensorInfo is not set.
* Updated Optimize() in Network.cpp to call VerifyConstantLayerSetTensorInfo().
* Added unit test with ConstantLayer TensorInfo not
set to catch error in VerifyConstantLayerSetTensorInfo().
* Added comments around method VerifyConstantLayerSetTensorInfo().
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I366596243f7c5823676222e2d0cce1335bc8c325
|
|
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: Id1e933f6ae55ddc1a57c80c9f6a5757ccb61f018
|
|
in BackendRegistry'
* Updated IRuntime interface for providing custom memory optimizer strategy.
* Enabled selecting existing memory optimizer strategy by using BackendOptions
* Added MemoryOptimizerStrategyLibrary that sets one of the existing memory optimizer
strategies selected by user
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I037f8ac8efa79c0f71bd63e379101e3ad92d80c9
|
|
* 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
|
|
* Add ParseGather to support Gather operator on ONNX
* Add Support of int64 converted to int32 for constant
* Add OnnxParserTestUtils
* Refactor ValidateTensorShapesFromInputs of GatherLayer
* Unit tests
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: Ie9dff640240e14a062fef38f7faf0ccc212de5f7
|
|
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: I257c3e79fa715170ac57caafc59131057c3a3b9c
|
|
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I2503e6995c83316094257318743a756da600bb6c
|
|
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: Ifc5e6f2e36767cb2a5cbf281d40ec9989b581abc
|
|
* Update acl and ref backend capabilities
* Add check for AsyncExecution capability in LoadedNetwork
* Add new exception for capabilities
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: I2f053c845a64f336e96d452793639c6e0d3eaa89
|
|
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I69a6ceda0d3e8d39947df71a2ad0d365ac7767d8
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
|
|
* Add functionality to only output network details in ExNet
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I0c45e67193f308ce7b86f1bb1a918a266fefba2e
|
|
compatibility
* Deprecate publicly visible API and forward to new function name
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I25fe8a303b50ecb478abd35ca034ad09bd737fe4
|
|
* Deregister backends in BackendHintTest.
* Deregister backend in ThrowBackendUnavailableException
* Clean up dynamic backends when an exception is thrown from
RuntimeImpl::RuntimeImpl.
* Use CHECK_THROWS_AS_MESSAGE syntax in ClCustomAllocatorTests.
Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: I0e6e5413dd074b5fcfc9515c85cb8d40a4a0b73c
|
|
* Initialized the new variable.
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I3d86d43455dd2df4246d76a2ac7cb49d8a48b786
|
|
* Condition used to check if m_BiasTensorInfo had a value then obtain a value from m_WeightsTensorInfo
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I1b68ed98baa54a20663728b8871dcfa35c3347f0
|
|
* Add test for invalid backend and nullptr
* Small refactor
* Throw exception on nullptr allocator instead of assert
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I94ce4f61d7cb3123831f1acd98165ae14c40033a
|
|
* Added missing comma to output.
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I10dde7666ea1e6ea7ebe5bd497d18fc838cb9812
|
|
Add conditional compilation check to Cl specific header
Signed-off-by: David Monahan <david.monahan@arm.com>
Change-Id: Ib196b8ef4dc5fcfd1d1ccd3f29abf8e0ecd020cb
|
|
* 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 switch for network details during profiling
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I8bd49fd58f0e0255598106e9ab36806ee78391d6
|
|
* Pass m_shapeInferenceMethod to OptimizerOptions in ExecuteNetwork
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: I90280fb7629092d3b66e8a3968ca9e35a0df854a
|
|
* Updated FullyConnected layer member variables when cloning as
some backends still require them.
* Added SetConstant call when using deprecated AddFullyConnectedLayer
method to ensure backwards compatibility.
* Added SetConstant to SimpleSample to ensure it runs on all backends.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ie7b4e4b868f23f8fcf9c41ffd12e2ea9ea53afca
|
|
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: I2a7a9b7b21848e2b3258788f06b01159f95a0d6c
|
|
* Constant weights and biases are now stored as Constant layers.
* Updated Serializer, Deserializer and unit tests to reflect this.
* Updated TfLiteDelegate, TfLiteParser and OnnxParser.
* Updated Schema with IsConstant and ConstantTensorsAsInputs.
* Updated Ref backend to handle constant weights and
bias as inputs rather than reading from member variables.
* Added dynamic or constant input EndToEnd tests.
!android-nn-driver:5959
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ibf3cf437df1100e4b322b0d303c575c6339f9696
|
|
* Fixed unit test failures happening on threads.
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I2a6048f75ece4a9f4c2116306838ff55385aabe7
|
|
* Add GUID as field to layer details and profiling events
* Add Optional GUID param to existing tests
* Improve Details macro to be inline function
* Fix some formatting
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I66f192a90a7642b3ee8e7dda0d3f428cce002581
|