aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
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-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
2019-07-26IVGCVSW-3368 Add Neon and CL unit tests for depth multiplier = 64Matthew Jackson
Signed-off-by: Matthew Jackson <matthew.jackson@arm.com> Change-Id: Icd89230d0698f32a5ebe36ec5012a0fcc19e1565
2019-07-26IVGCVSW-3566 Fix LSTM with normalization and Cifg WorkloadFactoryFerran Balaguer
Signed-off-by: Ferran Balaguer <ferran.balaguer@arm.com> Change-Id: I586415357d0f0d315c7174ad385167effa66b195
2019-07-25IVGCVSW-3543 Implement the backend versioning algorithmMatteo Martincigh
* 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
2019-07-25IVGCVSW-3555 Fix string formatting in DynamicBackendUtilsMatteo Martincigh
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com> Change-Id: I97d5fe93e1448778fc020fd6fbd5a47a3f5e7235
2019-07-25IVGCVSW-3521 CpuAcc V1.2 pad FailuresMike Kelly
* Pad value for QASYMM8 is no longer stored in quantized form. Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: I048e1d233353c0560ae03a7cc1ed5199295352bc
2019-07-24IVGCVSW-3563 + IVGCVSW-3555 Create new utility functions for dynamic backendsMatteo Martincigh
* 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
2019-07-24IVGCVSW-3469 Add front end for Quantized LSTM layerJames Conroy
* 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>
2019-07-23IVGCVSW-3476 Add InferOutputShapes unit tests for convolution workloadsTeresa Charlin
* Convolution2d, DepthwiseConvolution2d & TransposeConvolution2d Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: I2490c684765d8c7349183572f46e86c201b8eefd
2019-07-23Fix various uses of non-standard C++:Rob Hughes
* 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
2019-07-23NNXSW-1697 Remove use of SubgraphView that may become invalid.Rob Hughes
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
2019-07-23IVGCVSW-3526 Add layer norm support for lstm serializationJan Eilers
* Adds layer norm support for serialization/deserialization * Adds related unit tests Change-Id: If80b668accc8b0754a93d18ab3a243284cb383d1 Signed-off-by: Jan Eilers <jan.eilers@arm.com>
2019-07-23IVGCVSW-3536 Add Axis parameter to reference Softmax implementationFrancis Murtagh
* 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>
2019-07-22IVGCVSW-3548 Use BuildArmComputePadStrideInfo() in CL and NEON convolution ↵Aron Virginas-Tar
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
2019-07-22Github #229 Remove unused includeMike Kelly
* experimental/filesystem is unavailable in some versions of LLVM Change-Id: I0136bc911f2607561e8000fe9fa7c07f480554b6 Signed-off-by: Mike Kelly <mike.kelly@arm.com>
2019-07-22IVGCVSW-3368 Add reference support for depthwise multiplier > 3Matthew Jackson
* 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
2019-07-22IVGCVSW-3383 - Add TfLite Parser support for L2 Normalization layerMatthew Jackson
* 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
2019-07-22IVGCVSW-3311 Refactor Validate() methods in WorkloadData.cppAron Virginas-Tar
* 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
2019-07-22IVGCVSW-3481 Add End to End test for Prelu in the Neon backendNikhil Raj
Change-Id: I3061fa980fccdfb358ebfaf2870b57b110ed182e Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
2019-07-22IVGCVSW-3480 Add End to End test for Prelu in the CL backendNikhil Raj
Change-Id: Iefa78dc4c3f9d3075a8b91794eb4cf469268d946 Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
2019-07-19IVGCVSW-3479 Add End to End test for PreluNikhil Raj
Change-Id: I041bdf9e721a4384ea3c2be0184787dd1f4ea08e Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
2019-07-19IVGCVSW-3453 Fix VTS quant_output_multiplier_gt_1 test failuresFinnWilliamsArm
* Remove ValidateTensorQuantizationMultiplier * Update CL pin to COMPMID-2336 Signed-off-by: FinnWilliamsArm <Finn.Williams@arm.com> Change-Id: Iaece5b564134f7ec91f82cb246bcb10ad455999d
2019-07-17IVGCVSW-3297 Add Neon backend support for ResizeNearestNeighbourEllen Norris-Thompson
* Renamed NeonResizeBilinearWorkload.* to NeonResizeWorkload.* and added support for ResizeNearestNeighbour * Added CreateWorkload and LayerTests for Neon backend Signed-off-by: Ellen Norris-Thompson <ellen.norris-thompson@arm.com> Change-Id: I72f5340608a0928f8b32a41d1915ee2c35849f18
2019-07-17IVGCVSW-3423 Add TfLite parser support for Stack (Pack) layerMatthew Jackson
* Added ParsePack method * New unit test Pack.cpp * Updated TensorFlowLiteSupport.md with new supported operator Signed-off-by: Matthew Jackson <matthew.jackson@arm.com> Change-Id: I2310b33ee26959b036bb4452a25c90cc1d4cbf20
2019-07-17IVGCVSW-3419 Add reference workload support for the new Stack layerMatthew Jackson
* Added reference workload for the Stack layer * Added factory methods * Added validation support * Added unit tests Signed-off-by: Matthew Jackson <matthew.jackson@arm.com> Change-Id: Ib14b72c15f53a2a2ca152afc357ce2aa405ccc88
2019-07-16Remove unnecessary include from ClResizeWorkload.cppAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I5c8f6d08653646d99f839ceca11931e3be0467d8
2019-07-16IVGCVSW-3478 Refactor armnn to make new Lstm parameters available in ↵Ferran Balaguer
android-nn-driver through ILayerSupport.h !android-nn-driver:1506 Signed-off-by: Ferran Balaguer <ferran.balaguer@arm.com> Change-Id: Ia9904bd355c72a84f07d0a26faf143a4d6aead9c
2019-07-16IVGCVSW-3420 Add Serialization support for the new Stack layerMatthew Jackson
* Adds serialization/deserialization support * Adds related unit test Signed-off-by: Matthew Jackson <matthew.jackson@arm.com> Change-Id: I69deb5397b8a06c679715e24971e9bb1c282140d