aboutsummaryrefslogtreecommitdiff
path: root/src/armnn
AgeCommit message (Collapse)Author
2020-01-15IVGCVSW-3879 Fix output shape inference formula for TransposeConvolution2dAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I766f4297b9daa26edacc2079fe62a083ba2fa68f
2019-12-17IVGCVSW-4293 Fix multiple Concat issues.Derek Lamberti
* Fix issue with InputLayer or ConstantLayer being used as inputs to Concat. * Fix issue with same input being used multiple times for same Concat. * Fix issue where input is used by multiple concats. Change-Id: Id4819aeec5a40e2afa0351838ba082b9f74aba33 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-12-12IVGCVSW-4268 Print all Descriptors on dot graphJim Flynn
Change-Id: I82a7dcffc3771efa8350e2e1e22cfb20969551f9 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-12-12IVGCVSW-4262 Use ACL Permute and Reshape Validate function in Neon and CLKevin May
!android-nn-driver:2465 Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: Ibabb73c0ae0df2e530a68398f75c76e6b80c0701
2019-12-12IVGCVSW-4267 Add missing layers to GetLayerTypeAsCStringJim Flynn
Change-Id: I8c017a5222ca58a6fae6e2fae9c483d29a5cc76d Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-12-11MLCE-143 Fixed driver crash during CTS testsMike Kelly
MLCE-144 Fix cts MAX_POOL_2D_V1_0 tests * Only apply the Optimization when the base ReshapeLayer is connected to the child ReshapeLayer and no other Layer. Signed-off-by: Finn Williams <Finn.Williams@arm.com> Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: Id1215e8b1c06d7bdb77905fec9649a8ec26436f0
2019-08-28IVGCVSW-3656 Rename ARMCOMPUTEREF to ARMNNREFMatteo Martincigh
* Renamed ARMCOMPUTEREF to ARMNNREF (and relative symbols) as the previous name was misleading !android-nn-driver:1822 Change-Id: I912e9f521750b91539e48f8a2fb4de73fb6f7425 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-08-27IVGCVSW-3277 Fix RequiresCopy in case a tensor handle factory is not availableMatteo Martincigh
* Added null checks prior of using either the source or the destination handle factory when checking if the tensor requires to be copied Change-Id: Icc6737562849be5e7d1a62243327366e06312eb9 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-08-23Fix Windows build:Rob Hughes
* CMake "install" commands require a RUNTIME argument for platforms with DLLs (e.g. Windows). * Replace use of non-standard variable length array with vector * Remove unnecessary #include of unistd.h * Add #ifdefs to dynamic backend code to disable for non-Unix platforms where you can't use dlopen etc. We could implement this properly for Windows later using LoadLibrary etc., but for now erroring is fine. * Add missing #include of <algorithm> Change-Id: Ic8ef5fd599b37bf8772510157b6e479819f6a1eb
2019-08-22IVGCVSW-3656 Make the reference backend optionalMatteo Martincigh
* Made the build of the reference backend depend on a new ARMCOMPUTEREF macro * Made the relevant targets dependent on the ref backend * Moved Cl and Neon static registry initializers to separate files * Wrapped some of the unit tests into proper ifdefs where necessary Change-Id: I7f2c42699682630233a4c4b6aed2f005083de189 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-08-20IVGCVSW-3163 Support Neon TransposeConv2dSadik Armagan
* NEON support for TransposeConolution2d * Indentation fix on SpaceToDepth LayerSupport method Signed-off-by: Keith Davis <keith.davis@arm.com> Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Signed-off-by: Aron Virginas-Tar <aron.virginas-tar@arm.com> Change-Id: Ie3a01a22e05f62f475f768dfe05ce561d2f3b0ad
2019-08-20IVGCVSW-3606 Support memory import for Reference backendFerran Balaguer
Signed-off-by: Ferran Balaguer <ferran.balaguer@arm.com> Change-Id: I94bd191f88e0911ad4e4727610e81cd7afa95512
2019-08-19IVGCVSW-3545 Update the device specs with the dynamic backend idsMatteo Martincigh
* Now the utility function RegisterDynamicBackends returns a list of the backend ids that have been registered * The list of registered ids is added to the list of supported backends in the Runtime * Added unit tests Change-Id: I97bbe1f680920358f5baba5a4666e4983b849cac Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-08-16IVGCVSW-3639 Add 5d tensor supportMatthew Jackson
* Increased MaxNumOfTensorDimensions and fixed issues related to its use * Fixed issues caused by assuming 5d tensors are invalid * Updated ArmComputeTensorUtils for 5d tensors * Added 5d tensor unit tests for add, mul, stack and reshape (needed by IVGCVSW-3527) Signed-off-by: Matthew Jackson <matthew.jackson@arm.com> Change-Id: I5bcd64942d0d04efcc6c5acb240ad4b88e010743
2019-08-14IVGCVSW-3622 Add Neon TensorHandleFactoryNarumol Prangnawarat
Signed-off-by: James Conroy <james.conroy@arm.com> Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I9f24f7d97c1e7d37ee7d58ff85c6c3f8496e52ec
2019-08-14IVGCVSW-3636 Fix Graph and WorkloaData to support backend Import functionalityFerran Balaguer
Signed-off-by: Ferran Balaguer <ferran.balaguer@arm.com> Change-Id: I634aa3b1d609ca33b196fd68ce7fb7881be73e6e
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-13IVGCVSW-3607 Add CreateWorkloadFactory with TensorHandleFactoryRegistryNarumol Prangnawarat
in IBackendInternal Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Id40b825649d0447058273b8bc4f7133a3ac3c96c
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-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-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-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-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-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-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-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-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-19IVGCVSW-3479 Add End to End test for PreluNikhil Raj
Change-Id: I041bdf9e721a4384ea3c2be0184787dd1f4ea08e Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
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-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-15MLCE-103 Add necessary enhancements to ModelAccuracyToolSiCong Li
* Evaluate model accuracy using category names instead of numerical labels. * Add blacklist support * Add range selection support Signed-off-by: SiCong Li <sicong.li@arm.com> Change-Id: I7b1d2d298cfcaa56a27a028147169404b73580bb
2019-07-15IVGCVSW-3421 Add Quantizer support for the new Stack layerMatthew Jackson
* Implemented VisitStackLayer * Added unit test for Stack layer quantization Signed-off-by: Matthew Jackson <matthew.jackson@arm.com> Change-Id: I6f708543711c3600fa6c78d6d1f41ef14bbb90bb
2019-07-12Github #227 Remove unnecessary includesMatthew Bentham
Change-Id: I08640891a206b40da478fdaa7634e7a2f76784af Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
2019-07-11IVGCVSW-3454 Fix VTS dilated conv2d test failuresMike Kelly
* Updated InferOutputShapes to take dilation into account Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: I84e999dc037fa47ce5290e9baa0df94bc9e7ce4d
2019-07-10IVGCVSW-3418 Add Arm NN front end support for the new Stack layerMatthew Jackson
* Added new StackLayer class * Made necessary changes to Descriptors, ILayerSupport, ILayerVisitor, etc. * Added unit tests Signed-off-by: Matthew Jackson <matthew.jackson@arm.com> Change-Id: Ieb97a928a342ffe1901c6058eb895711c358fd3d
2019-07-09IVGCVSW-3397 Join lstm parameter infos in a struct for isLstmSupportedJan Eilers
!android-nn-driver:1461 Change-Id: I9d8fe7adf13832ed0cbcfe98b2353c2f37011d22 Signed-off-by: Jan Eilers <jan.eilers@arm.com>
2019-07-09IVGCVSW-3391 Add SpaceToDepth CreateWorkload and EndToEnd testsJames Conroy
* Refactored existing EndToEnd tests, moved tests in reference to backendsCommon. * Enabled EndToEnd tests for CL. * Added new Ref/CL CreateWorkload tests. Signed-off-by: James Conroy <james.conroy@arm.com> Change-Id: I0a5e52961a8aca540d43241a3805d19c9c6ff56c
2019-07-05Fix the warning message reporting when sub-graphs fail to get optimizedMatteo Martincigh
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com> Change-Id: I92a83b61a0c89029cbde0a6cc26599691d171660
2019-07-03IVGCVSW-3277 Remove dead codeMatteo Martincigh
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com> Change-Id: Ibc108699f0bccf9210defac8707c4f61cb181e3f