aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-08-14MLCE-126 Delete unused Protobuf header importJames Conroy
* Removed wire_format_lite_inl.h header import as it is not used by ArmNN. * In Protobuf==3.8.0, the contents of this header are in wire_format_lite.h. Signed-off-by: James Conroy <james.conroy@arm.com> Change-Id: Ie3d80f49e79aedf4932a0a090635b541a11ba0f9
2019-08-14IVGCVSW-3610 Remove unused leftover variable from TransposeConvolution2dImplAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I496f95ab464f3a38e0601799a6ff6ba5ffe3a776
2019-08-14IVGCVSW-3474 Refactor Lstm and QuantizedLstm Param GettersFrancis Murtagh
* Change Getter Signatures to follow coding guidelines Change-Id: Ic02621e834dbf79b9df63f8b4c6339f71651e944 Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
2019-08-14IVGCVSW-3546 Extend the backend docsMatteo Martincigh
* Mentioned the TestDynamicBackend source files * Added the RefDynamicBackend example Change-Id: I395c9f6c3107a5a5b16f658327d6048ff2ae68d8 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-08-14IVGCVSW-3416 Create Command Handler Key classFrancis Murtagh
* Add CommandHandlerKey class with all comparison operators * Add UnitTests to check key sorting in collection Change-Id: Icbd493d1e51e681cbe22a9e70ab9428a8a2ad107 Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
2019-08-13IVGCVSW-3635 Remove temporary check from ↵Aron Virginas-Tar
RefLayerSupport::IsTransposeConvolution2dSupported() Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I85a9563e2d12a5eb9dbcac1b70563a303905b67b
2019-08-13IVGCVSW-3616 Add multi-channel unit test for TransposeConvolution2dAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: Ib9271920b39fb9d730006c79a322e32008096b56
2019-08-13IVGCVSW-3615 Update Transpose Convolution algorithmMike Kelly
* Now supports channel multiplier != 1 in Ref TransposeConvolution2d Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: Ice95444025311b8b952c8f7f5fa0f1ecf483df41
2019-08-13IVGCVSW-3620 Fix VTS CpuRef failuresSadik Armagan
* Fixed Max and Min VTS test failures. Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I133f5ff43774f74ad6e1c698a3570066ad45527c
2019-08-13IVGCVSW-3607 Add CreateWorkloadFactory with TensorHandleFactoryRegistryNarumol Prangnawarat
in IBackendInternal Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Id40b825649d0447058273b8bc4f7133a3ac3c96c
2019-08-12IVGCVSW-3541 Treat an empty list of backend paths as a special caseMatteo Martincigh
* Silently considering the dynamic backend loading feature as disabled if an empty list of paths is passed to ArmNN * This was causing problems during testing as ArmNN's output was containing extra unnecessary warning messages Change-Id: I4ebda412004179817cd54494ccddc964b04b8232 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-08-12IVGCVSW-3546 Create a reference dynamic backend to use for testing and asMatteo Martincigh
an example in the docs * Wrapped the reference backend into a dynamic backend * Moved the static registration code to a separate file, so that it is possible to create the reference dynamic backend that does not register statically into armnn * Added unit test Change-Id: I1074d21b020820f9ac8c7178388be773b447555a Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-08-12IVGCVSW-3598 Add Neon backend support for Strided_SliceFinnWilliamsArm
Signed-off-by: FinnWilliamsArm <Finn.Williams@arm.com> Change-Id: Ia9bf55ca93e36ad7fa052b70e477cd46078e0a30
2019-08-09IVGCVSW-3474 Add end to end tests for Quantized_LSTMFrancis Murtagh
Change-Id: Iaec6956b5c459308d77d29f699ae4558bee66cd5 Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
2019-08-09IVGCVSW-3603 *Json printer prints full profiling hierarchyDerek Lamberti
Change-Id: Ide5acbf993c2bcff5265b72fc979caa6f183bb22 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-08-09IVGCVSW-3597 Add complete test suite for the dynamic backendsMatteo Martincigh
* Added Runtime tests with dynamic backends * All other unit tests have already implemented in previous stories Change-Id: I0167b3b45dd00c1956514e2df051e4445727f014 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-08-09IVGCVSW-3596 Register the dynamic backends in the BackendRegistryMatteo Martincigh
* 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>
2019-08-07IVGCVSW-3595 Implement the LoadDynamicBackends function in the Runtime classMatteo Martincigh
* 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>
2019-08-07IVGCVSW-3608 Fix Neon depthwise convolution 5x5 failureMatthew Jackson
* 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
2019-08-06IVGCVSW-3614 Remove limitation of axis=1 support for Softmax in Cl and NeonNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Id990ae7445080f6b4d5a0e6f942f871879a52f75
2019-08-06GitHub #240 Fix bias shape in CreatePreCompiledWorkloadTest()Aron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I10b8d5e2e95eb8f48a6be29005136459c3da2957
2019-08-06IVGCVSW-3600 Update the docs with the naming convention for dynamicMatteo Martincigh
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
2019-08-05IVGCVSW-3612 Update the docs to include description of dynamicMatteo Martincigh
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>
2019-08-05IVGCVSW-3599 Create the GetSharedObjects method in DynamicBackendUtilsJan Eilers
* 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
2019-08-05IVGCVSW-3541 Get the paths where to load the dynamic backends fromMatteo Martincigh
* 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>
2019-08-05IVGCVSW-3341 Add Neon backend support for Quantized_LSTM (16bit cell state)Francis Murtagh
* 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>
2019-08-05IVGCVSW-3541 Change the makefiles to generate the necessary test filesMatteo Martincigh
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>
2019-08-05IVGCVSW-3277 Mem export/import suppor for TensorsDerek Lamberti
* 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>
2019-08-05IVGCVSW-3342 Add CL backend support for Quantized_LSTM (16bit cell state)Ferran Balaguer
!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
2019-08-05IVGCVSW-3611 Report TransposeConvolution2d as unsupported on CpuRef when ↵Aron Virginas-Tar
channel multiplier != 1 Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I784bbff3f7b6650881d3f70ba7cd1891171195b1
2019-08-02IVGCVSW-3609 Fix decoding and encoding of INT32 tensorsAron Virginas-Tar
* 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
2019-08-02IVGCVSW-3561 Fix the linker issues of the test shared objects inMatteo Martincigh
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>
2019-08-02IVGCVSW-3604 Fix channel shape calculation in ↵Narumol Prangnawarat
TransposeConvolution2dLayer::InferOutputShapes Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I2e3d5922bb89c8f3b84ff5458fda981ff177c3ce
2019-08-02IVGCVSW-3539 Add Neon support and tests for StackMatthew Jackson
* 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
2019-08-02IVGCVSW-3470 Add Quantized_LSTM testsJames Conroy
* 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
2019-08-02IVGCVSW-3577 Update ACL pin to include NEON convolution output multiplier fixAron Virginas-Tar
!android-nn-driver:1668 Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I33de31d35fa9c7d76f1738e343c5d28270e9a2c1
2019-08-01IVGCVSW-3571 Fix VTS Test SkipsMike Kelly
* 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
2019-08-01IVGCVSW-3539 Add CL support and tests for StackMatthew Jackson
* 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
2019-07-31IVGCVSW-3571 Add Gpu backend to CI tests for Android QSadik Armagan
* Fixed Quantized FP16 failures on GpuAcc Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Ia6372da1305c3e826f56ba537e11acf7875c2d74
2019-07-31IVGCVSW-3561 Use absolute path of unit testsMatteo Martincigh
* 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
2019-07-30IVGCVSW-3581 Fix AddCopyLayers and associated testsMatthew Bentham
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>
2019-07-30IVGCVSW-3561 Test the DynamicBackend classMatteo Martincigh
* 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
2019-07-30IVGCVSW-3555 Add unit tests for the dynamic backend utility functionsMatteo Martincigh
* 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
2019-07-30IVGCVSW-3592 Add Support for Quantize to HAL 1.2 DriverSadik Armagan
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Ib93c94a15fe15495664d509630cce373a69e1612
2019-07-29IVGCVSW-3471 Add Serialization support for Quantized_LSTMJan Eilers
* Adds serialization/deserialization support * Adds related Unit test Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: Iaf271aa7d848bc3a69dbbf182389f2241c0ced5f
2019-07-29IVGCVSW-3574 Update the docs with the backend versioning infoMatteo Martincigh
* 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
2019-07-29IVGCVSW-3556 Create the DynamicBackend classMatteo Martincigh
* 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
2019-07-26MLCE-130: Enabled optimized path for DepthwiseConv 5x5Pablo Tello
Change-Id: I5cd90121e5fe1b49b394ee6f5a87e86520a30119 Signed-off-by: Pablo Tello <pablo.tello@arm.com>
2019-07-26IVGCVSW-3554 Update workloads to pass Softmax Axis Parameter to BackendsFrancis Murtagh
* 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>
2019-07-26IVGCVSW-3537 Add support for L2 Normalization with < 4 dimensional tensorsMatthew Jackson
* 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