Age | Commit message (Collapse) | Author |
|
* Added getter for the factory function in the DynamicBackend class
* Added new RegisterDynamicBackends method in utils class
* Added dynamic backend registration process in the Runtime class
* Added new dummy dynamic backend objects for testing
* Added unit tests for dynamic backend registration
* Added convenience methods to BackendId
Change-Id: I01e147d1d6f01bf56747ad946f73f867af5770c4
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
|
|
* Changed the way the handle is acquired, loaded symbols are now kept local
* Updated the makefiles to add more test files for the dynamic backends
* Fixed the GetSharedObjects method so that the files are parsed in
alphabetical order
* Updated the unit tests to make them more strict wrt the order of the
files
* Created a new CreateDynamicBackends method in the utils class
* Added new unit tests for the new function
* Added LoadDynamicBackends in the Runtime class
!android-nn-driver:1707
Change-Id: I1ef9ff3d5455ca6a7fd51cb7cfb3819686234f70
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
|
|
* Fix issued caused by layers with 5x5 filters and depth multipliers > 1
Signed-off-by: Matthew Jackson <matthew.jackson@arm.com>
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I58435a1f0e3c7e69861dc130fad525a01e2a849d
|
|
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: Id990ae7445080f6b4d5a0e6f942f871879a52f75
|
|
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I10b8d5e2e95eb8f48a6be29005136459c3da2957
|
|
backend files
* Added a section to the backends' README file to detail the
dynamic backend file naming scheme
* Added table with examples of valid/not valid filenames
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I59b88b96292a189056b9fceb155aedd07ee27225
|
|
backend loading paths
* Described the DYNAMIC_BACKEND_PATHS macro usage
* Described the override in the CreationOptions class
Change-Id: I1ec17fa586acb5c1e3d2f0dfb6c954532d594830
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
|
|
* Added GetSharedObjects to DynamicBackendUtils
* Goes through the given paths and returns a list of files that
match the naming scheme for dynamic backends
* Added unit test
* Update the cmake file to generate the test files/symlinks
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Ibfc0bad740b72696714d343eb32a593c2ec1f8c6
|
|
* Adds GetBackendPaths and IsPathValid to DynamicBackendUtils
* Adds related unit tests
Change-Id: I94e377d92a88a4b5d48026f6ad5b4d5387d20c21
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
|
|
* Add Neon Workload
* Update NeonWorkloads.hpp
* Update NeonWorkloadFactory
* Update NeonLayerSupport
* Update backends.mk and CMakeLists.txt
* Add NeonCreateWorkload test
* Enable LayerTest
!android-nn-driver:1685
Change-Id: Idd799bbf039acf0d59084d02c3b57766ce3691b5
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com>
|
|
for dynamic backends
* Added dummy files and directories to use for the dynamic backend
unit tests
* Created a combination of valid/invalid files, valid/invalid directories
and valid/invalid symlinks to cover all the use cases
* Provides a base on top of which to rebase further changes for the
developemnt of the dynamic backend feature
Change-Id: I6e157d8ba035d7931c9ea20f70ffd5b76d03334e
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
|
|
* Rename MemoryStrategy to EdgeStrategy
* Add MemImportLayer
* Import memory rather than copy when possible
Change-Id: I1d3a9414f2cbe517dc2aae9bbd4fdd92712b38ef
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
|
|
!android-nn-driver:1685
Signed-off-by: Ferran Balaguer <ferran.balaguer@arm.com>
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
Change-Id: I17278562f72d4b77e22c3af25bf7199b9150a765
|
|
channel multiplier != 1
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I784bbff3f7b6650881d3f70ba7cd1891171195b1
|
|
* Added Int32Decoder and Int32Encoder to decode INT32 tensors
* Changed MakeDecoder to return ScaledInt32Decoder only
if the scale is different from 0, i.e. for quantized bias
tensors
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: I278061d445d1c549c7ace11f51aa172ce7c691ae
|
|
the Android builds
* Changed the test libs from SHARED to MODULE
* Added IBackendInternal.cpp to separate the default
implementation of OptimizeSubgraphView from the header file
* Linked the modules against armnn to get the missing symbols
* Renamed the test modules to avoid name clashing in the CI system
* Moved the test shared objects to separate folders to keep the
filesystem tidy
Change-Id: I987c56d2d66bdb86f7b391a83c602d0dadf4c674
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
|
|
TransposeConvolution2dLayer::InferOutputShapes
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I2e3d5922bb89c8f3b84ff5458fda981ff177c3ce
|
|
* Added Neon backend support for Stack
* Added unit tests for Stack on the Neon backend
Signed-off-by: Matthew Jackson <matthew.jackson@arm.com>
Change-Id: I21379966a6303285f8b65418d0d4ac7982cc9f04
|
|
* Added Layer and Create Workload tests
for the new Quantized LSTM layer.
* Tests to be enabled on NEON and CL in
their respective patches.
Signed-off-by: James Conroy <james.conroy@arm.com>
Change-Id: I7e9e9768dd63010ab58367c45fffcff452377cfb
|
|
* Fixed FP16 failures on Max, Min, BatchToSpace on Gpu
* Fixed Signed32 skips on Maximum and Minimum
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I4bea19af1a0ae4c8950af8c6d5d68622cdd9b674
|
|
* Added CL backend support for Stack
* Added unit tests for Stack on the CL backend
* Refactored unit tests to support generic data types
Signed-off-by: Matthew Jackson <matthew.jackson@arm.com>
Change-Id: I38ee3e9d8947ea98a3104c982698001e704d7d89
|
|
* Fixed Quantized FP16 failures on GpuAcc
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: Ia6372da1305c3e826f56ba537e11acf7875c2d74
|
|
* Using the absolute path of the unit tests executable so that
the unit tests can be run from anywhere and the relative path
to the test shared objects would still work
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I57401daa162570e9ab1717d28a54a19f421afb0e
|
|
Take a copy of the MemoryStrategies for a layer before inserting
new connections. Use the copy when looking up the original MemoryStrategies
during the graph transformation.
Fix the unit tests for AddCopyLayers to have cases where copies are needed.
Fix the validation for clarity and correctness - was previously comparing
Layers by pointer when it should have been by name (as it was comparing
with a cloned graph).
Change-Id: Ie282dc11913e977b8151ce1ad8bfba5e11617d40
Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com>
|
|
* Added unit test for valid dynamic backends
* Added unit tests for various cases of invalid dynamic backends
(invalid handle, malformed backends, incompatible version, etc.)
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I4c3b33702bb0faac2bbebe224f69908639b4fc54
|
|
* Added a test library to exercise the utility functions that
handle the shared objects
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Ic8095febca2a46050831eb42f55a714f3ae3bfe3
|
|
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: Ib93c94a15fe15495664d509630cce373a69e1612
|
|
* Adds serialization/deserialization support
* Adds related Unit test
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Iaf271aa7d848bc3a69dbbf182389f2241c0ced5f
|
|
* Added new Dynamic Backends section
* Added new sub-section for the dynamic backends base interface
* Added new sub-section for the backend versioning rules
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: Icf8ce9573b13004eac5a238a259e79936f2d26fb
|
|
* Created the new DynamicBackend class with all the necessary
getters/utility functions
* Created function types to mirror the backend interface functions
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I80a29e6e8a8d0b0655caba63d12cf62e0d8fc832
|
|
Change-Id: I5cd90121e5fe1b49b394ee6f5a87e86520a30119
Signed-off-by: Pablo Tello <pablo.tello@arm.com>
|
|
* Add check in CL and Neon to ensure axis is 1 otherwise
return unsupported.
* Edit CreateWorkload test and JsonPrinter test to ensure axis of 1.
Change-Id: I499b405532e26fefc2dd1c18b6dc6005813b5604
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
|
|
* Fix reference L2 Normalization workload to support < 4 dimensional tensors
* Add unit test for L2 Normalization with 2d tensor to Reference, Neon and CL test suites
* Fix typo in StackLayer
Signed-off-by: Matthew Jackson <matthew.jackson@arm.com>
Change-Id: I48a6a1289bcb02955b24f261bc70b467bd1abc23
|
|
Signed-off-by: Matthew Jackson <matthew.jackson@arm.com>
Change-Id: Icd89230d0698f32a5ebe36ec5012a0fcc19e1565
|
|
Signed-off-by: Ferran Balaguer <ferran.balaguer@arm.com>
Change-Id: I586415357d0f0d315c7174ad385167effa66b195
|
|
* Added version structure for backends, with comparisons operators
* Added version to IBackendInternal
* Added version utility function to DynamicBackendUtils class
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I3697469675c27f79f7cfb296cfa69ec7e06375e5
|
|
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I97d5fe93e1448778fc020fd6fbd5a47a3f5e7235
|
|
* Pad value for QASYMM8 is no longer stored in quantized form.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I048e1d233353c0560ae03a7cc1ed5199295352bc
|
|
* Created new DynamicBackendUtils class
* Added OpenHandle, CloseHandle, GetEntryPoint and GetDlError methods to it
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
Change-Id: I88c683b2c5d37968a9ebdf335be932ae2d9061e5
|
|
* Added new layer QuantizedLstm (Android Q)
* Made necessary changes to APIs
* Added unit tests
Change-Id: I3b9f16b0e7e49f51932cf204c87cb7118798123a
Signed-off-by: James Conroy <james.conroy@arm.com>
|
|
* Convolution2d, DepthwiseConvolution2d & TransposeConvolution2d
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I2490c684765d8c7349183572f46e86c201b8eefd
|
|
* Replace u_int32_t with uint32_t
* Replace size_t with uint32_t for initializer list of TensorInfo
* Replace variable size arrays with std::vector
* Replace reference to local variable during its initialisation
Change-Id: I298b3995f1525f90a1ab2416d7e270315698fae3
|
|
The mainSubgraph variable held references to layers in the optimised
graph that become invalid when a graph substitution is made.
The fix is to always use the optimised graph itself rather than a
view of it. The view served no purpose anyway.
Change-Id: Iad75f5829597ec43a774cfd7f2e5e7dede09dfa4
|
|
* Adds layer norm support for serialization/deserialization
* Adds related unit tests
Change-Id: If80b668accc8b0754a93d18ab3a243284cb383d1
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
|
|
* Add Axis parameter to Softmax Descriptor
* Add new reference implementation for Softmax using Axis parameter
* Add unit tests to cover each Axis
Change-Id: Iafac2275d2212337456f2b1b56b0f76f77fb9543
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
|
|
workloads
* Refactoring: use existing utility function for creating arm_compute::PadStrideInfo
objects in CL and NEON convolution workloads instead of duplicating code
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: Id5e5a0f264e20af99dabce8dd8c6b782dedb94e6
|
|
* experimental/filesystem is unavailable in some versions of LLVM
Change-Id: I0136bc911f2607561e8000fe9fa7c07f480554b6
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
|
|
* Remove multiplier check in TfLite parser
* Add reference unit test for depthwise multipler of 64, as in DeepSpeaker
Signed-off-by: Matthew Jackson <matthew.jackson@arm.com>
Change-Id: I787339ab4c4d269333985353d191202d070906ba
|
|
* Added ParseL2Normalization in TfLiteParser
* Added new unit tests L2Normalization.cpp
* Added documentation for supported L2 Normalization to TensorflorLiteSupport.md
Signed-off-by: Matthew Jackson <matthew.jackson@arm.com>
Change-Id: I83ea75d1791ac8a00390aed3e5d0a7b337fcd46d
|
|
* Use ValidateTensorDataTypesMatch() instead of ValidateDataTypes() to
check whether two tensors have the same DataType
* Use const TensorInfo& aliases for tensor infos checked in multiple
places
* Use a const std::string& alias for the descriptorName instead of
using string literals throughout the code
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: Ie59db29b74d8b75bf07c5a6944f65f5e186cf8db
|