aboutsummaryrefslogtreecommitdiff
path: root/src/backends/backendsCommon
AgeCommit message (Collapse)Author
2019-01-11IVGCVSW-2454 Refactor ArmNN to support pluggable backends from a separateMatteo Martincigh
code base * Made the virtual functions in ILayerSupport.hpp pure * Created a LayerSupportBase class with the default implementation of the interface * Made the backend layer support classes inherit from the base class, instead of directly from the interface * Refactored the profiler and the profiling event classes to use the BackendId instead of the Compute * Implemented a proper MemCopy support method * Changed Compute to BackendId in the profiling API and objects * Removed static references to pluggable backends !android-nn-driver:492 Change-Id: Id6332b5f48c980819e0a09adc818d1effd057296
2019-01-10MLCE-82 Add IsLayerSupported tests for MEANMatthew Bentham
Change-Id: I43be451f490db0154021f47a2fd49d1269cf5b95
2019-01-07IVGCVSW-2371 Add Rsqrt Ref implementationMohamed Nour Abouelseoud
*Added Unit Tests Change-Id: I6cceb8e6dcda35ce08415f8e5ca86019a64d26e3
2019-01-07IVGCVSW-2421 Remove the template-based version of armnnUtils::PermuteMatteo Martincigh
in favor of a type-indepent implementation that takes void-pointers * The new implementation requires the size of the type to be passed to the function * Updated all the usages accordingly * Removed the old implementation no longer used !android-nn-driver:469 Change-Id: I37f4e6d62a38fbb8ec8c39bb559a2c54c83365d4
2019-01-04MLCE-77 Depthwise Convolution with depth multiplier > 1 doesn't workMatteo Martincigh
* Unified ArmNN's weight format to [ M, I, H, W ] for the depthwise convolution * Added conversion utilities to permute/reshape the weights as appropriate when using CL and Neon backends * Updated the reference implementation of the convolution * Updated the relevant unit tests accordingly !android-nn-driver:459 Change-Id: I07d0818efa9d1ca1e5dad82983aac1fe78eadb18
2019-01-04IVGCVSW-2383: code cleanup, remove unnecessary isSupported implementations,Nina Drozd
default cases are handled by DefaultLayerSupport Change-Id: I31942a5e8515d6fdce9a0adf20906eaabc2b9aa6
2019-01-03IVGCVSW-2370 Code clean up after Equal operator implementation where necessaryruoyan01
StringMapping was located in the backendsCommon Change-Id: I1c4a0bfca986722c721fcb2b460c03d6e1cd4568
2019-01-02IVGCVSW-2308 Add Conv2d tests where stride > 1Mike Kelly
Change-Id: Iae6a3bfad06cb669ef0abea465d03163bb8316f5
2018-12-31IVGCVSW-2389 WorkloadUtils: Add profiling to tensor mapping.Sadik Armagan
Change-Id: Ibe1b27b268011878c7dce3c96efea01402453027
2018-12-20IVGCVSW-2401 & IVGCVSW-2402 Add end-to-end test for Greater/Equal OperatorFrancisMurtagh
* Add Arithmetic end-to-end test implementation * Enable tests for float, Uint8 and Broadcast Change-Id: I81c7096e9b6ad29eaa935b74ad5f30f823be2331
2018-12-19IVGCVSW-2379 Add Greater Ref workload implementationFrancisMurtagh
* Added the Greater operation as an element-wise workload * Added the unit tests Change-Id: Ie00ee30e47a5f5e17a728032eeb11a085d06c8f2
2018-12-18IVGCVSW-2365 Add Reference Equal Workload ImplementationFrancisMurtagh
* Add reference equal workload * Add Reference Workload Unit Test Change-Id: If2848e7dde4248566b99d91726d08143c40ff80d
2018-12-17IVGCVSW-2398 Add no-op factory implementations for all backends for theFrancisMurtagh
Equal operation * Add QueueDescriptor in WorkloadData.hpp * Add CreateEqual function in WorkloadFactory.hpp * Added stub implementation of the CreateEqual function in RefWorkloadFactory, NeonWorkloadFactory and ClWorkloadFactory Change-Id: Iec6dc2f989c67fa6f0c32cfb93508995c8580783
2018-12-17IVGCVSW-2399 Margin of error too severe for ValidateBiasTensorQuantisationkevmay01
Change-Id: I56f56398e7c2c2ac57a96952237e7f1bc0ced208
2018-12-14IVGCVSW-2377 Add no-op factory implementations for all backends for theMatteo Martincigh
Greater operation * Added QueueDescriptor in WorkloadData.hpp * Added CreateGreater function in WorkloadFactory.hpp * Added stub implementation of the CreateGreater function in RefWorkloadFactory, NeonWorkloadFactory and ClWorkloadFactory * Added GreaterLayer stub implementation * Renamed ArithmeticBaseLayer to ElementwiseBaseLayer Change-Id: I7e38c2936de905da921a92ba3f918478169ec7f5
2018-12-07IVGCVSW-836 Remove 2D validation in SoftmaxMohamed Nour Abouelseoud
Change-Id: I87c53c78dd033871dbc543550a61d2d535e752ac
2018-12-07IVGCVSW-2316 Add reference implementation and unit tests for DebugNattapat Chaimanowong
Change-Id: Ib2e5de2a057da57ef77a9f5c4367d699d4773294
2018-12-06IVGCVSW-2315 Add descriptor for DebugNattapat Chaimanowong
Change-Id: I6b26c681989ef815752186f027a245ef8da7aea2
2018-12-05IVGCVSW-2264 Move DataLayoutIndexed to armnnUtilsMatteo Martincigh
* Since DataLayoutIndexed is now required in the TF parser, this changes move it to the armnnUtils library so that it'll be accessible by the armnnTfParser * Modified CMake files and Android.mk files accordingly Change-Id: Ie2620359ef288aeff64cb9e9bec068a466eee0e9
2018-12-04IVGCVSW-2247 Adding a min Elementwise Workload and testsÉanna Ó Catháin
Change-Id: I017ca6c23b62a8978982de0ca4ad204cb8cf7c67
2018-12-03IVGCVSW-2315 Add DebugLayer and no-op factory methodNattapat Chaimanowong
Change-Id: I5455b720565248ff94278e76887d63f8434a7b58
2018-12-03IVGCVSW-2255 Add unit test for maximum reference workloadÉanna Ó Catháin
* Enable Maximum workload Change-Id: I5f7786ff66f135f0c74935dbf5861e5a4239bcc8
2018-11-29IVGCVSW-2254 Add Reference workload for Maximumsaoste01
Change-Id: Id7302c6b1df995ebe6eb8eb94bab38bee1b31b0b
2018-11-29IVGCVSW-2245 Add Minimum Layer and no-op Factory implementationkevmay01
Change-Id: I03fa374fd9692d98257de709f8c3ad0a49c88b95
2018-11-28IVGCVSW-2253 Add maximum layer and corresponding no-op factory implementationNattapat Chaimanowong
Change-Id: I8964f5e8978c2d2a07734a381e3f7c656c22456a
2018-11-28IVGCVSW-1199: BATCH_TO_SPACE_ND integrate Arm Compute CLMike Kelly
Change-Id: Ic772acf481caed6e8a6b99f68a63dfc2a34c24dc
2018-11-26IVGCVSW-2087 Reference implementation and unit tests for StridedSliceNattapat Chaimanowong
Change-Id: Ifeacc0adb4547c72537b9ea7a61bf3c4ec3673fa
2018-11-22Refactor JSON printer test implementationAron Virginas-Tar
Change-Id: Icc1de9b69d7bb74b6bf5a6a6f315cf07fe2c5223
2018-11-21IVGCVSW-2086 Update StridedSliceLayer and StridedSliceDescriptorNattapat Chaimanowong
Change-Id: Ifa88a879dd239f60ab27330d6b73859393828ef0
2018-11-20Remove leftover header from backendsCommon testDavid Beck
Change-Id: I3a6077ad9ded9002aea9c888daab68b6452bd235
2018-11-20IVGCVSW-2173 - Add end to end layer test implementation and example usagenarpra01
* Add CommonTestUtils * Add end to end layer test implementation * Add example usage for Merger layer on Ref, Cl, Neon Change-Id: I8931136288cd68b80bcdad8f5ae087ae1a70a60a
2018-11-20IVGCVSW-2144: Adding TensorUtils classNina Drozd
* helper methods for creating TensorShape and TensorInfo objects Change-Id: I371fc7aea08ca6bbb9c205a143ce36e8353a1c48
2018-11-19IVGCVSW-2169 Remove DataLayoutIndexed from public APIMatthew Bentham
Change-Id: If8d8087d9d365e467d3ca9bf9c40d7219cb75cfd
2018-11-19IVGCVSW-2105 - Unit tests for mergernarpra01
* Add LayerTests * Add WorkloadTests !android-nn-driver:166 Change-Id: I903461002879f60fc9f8ae929f18784e2d9b1fc1
2018-11-19IVGCVSW-2043 - Merger using ACL for innermost concat axisNikhil Raj
* Add ClMergerWorkload and NeonMergerWorkload to call ACL for innermost concat axis * Modify layer support to call ClMergerWorkloadValidate and NeonMergerWorkloadValidate when concat axis is inner most * Add m_ConcatAxis to MergerDescriptor * Modify MergerQueueDescriptor::Validate to check sub tensor only when using subtensor !android-nn-driver:166 Change-Id: I56676b43964c8d6d726387b41b3cc34a512c0f0a
2018-11-16IVGCVSW-2092 Port LSTMCell::Eval to ArmNNMatteo Martincigh
* Ported Google's LSTM implementation to RefLstmFloat32Workload * Fixed the code throughout because of an error in the docs around the scratch buffer size * Updated IsLstmSupported * Added the unit tests !android-nn-driver:127 Change-Id: I5577b7e39ca52df1a7f102a9b437df6aa99520b6
2018-11-15IVGCVSW-2086: Add StridedSlice layer & corresponding no-op factory ↵Conor Kennedy
implementations Change-Id: I906dcb8b4c9b491bf3a661f208c09d0ea1c0fa35
2018-11-15IVGCVSW-2136: Remove memory management methods from workload factoriesAron Virginas-Tar
Change-Id: Idc0f94590566ac362f7e1d1999361d025cc2f67a
2018-11-14IVGCVSW-2125 : Consolidate backend registries into onejimfly01
* adding missing include <functional> into BackendRegistry.hpp Change-Id: I7a4ba867a856c90a3099a782ff41b8a5fb9a9efb
2018-11-14IVGCVSW-2054: Fixing issue with InferOutputShape implementation in ↵Éanna Ó Catháin
BatchToSpaceNdLayer. * added Unit test Change-Id: I80f55e8c7afb39d96006c8dd027fc9683ea8182e
2018-11-14IVGCVSW-2017: Refactored L2Normalisation Testsjimfly01
* L2Normalisation Tests now take the layout as an argument. Change-Id: Ib393889eedb3a81c9a500da91593e90a18549c33
2018-11-13IVGCVSW-2066: Add IMemoryManager and integrate into the backends frameworkAron Virginas-Tar
Change-Id: I93223c8678165cbc3d39f461c36bb8610dc81c05
2018-11-12Tidying up multiple issuesÉanna Ó Catháin
* Fixed error in InferOutputShape implementation * Added better error checking to the BatchToSpace implementation. * Added defaults to the batchToSpace descriptors. * Changed crops to be a vector of pairs to align with the SpaceToBatch implementation Change-Id: Ib1c16d871f0898a1caeb6629c1fee6380a773e14
2018-11-12IVGCVSW-2125 : Consolidate backend registries into oneDavid Beck
Change-Id: I56da4780f8f5fcef7ff01d232d5d61bf299364bf
2018-11-12IVGCVSW-2054: BATCH_TO_SPACE_ND Reference implementation and Unit tests.Éanna Ó Catháin
Change-Id: I13c6728dbb60643d0e086d171225c5d802987f92
2018-11-09IVGCVSW-2125 : backends now can return optimizationsDavid Beck
Change-Id: Ieec34224b433e1d2f3bbe66632cd6016cac5498c
2018-11-09IVGCVSW-2095 Add reference implementation and unit tests for SpaceToBatchNdNattapat Chaimanowong
Change-Id: I27ffebdece6e68460931a44c15b9b029f9fce638
2018-11-08IVGCVSW-2056+IVGCVSW-2064 : move ClContextControl to the ClBackendexperimental/nhwc-previewDavid Beck
* add IBackendContext interface * add ClBackendContext implementation Change-Id: I13e4d12b73d4c7775069587675276f7cee7d630b
2018-11-08IVGCVSW-1709: Clean up memory manager bodgeAron Virginas-Tar
* Added quick workaround for the memory management errors in the CL/Neon unit tests Change-Id: I56250db462cdbdc1acc0a5824807d288fb0c1d11
2018-11-07IVGCVSW-1949 : Refactor ITensorHandle and move backend specifics to their placeDavid Beck
Change-Id: I48242425c6a6856e13ebcee1b140cbd2af94a3aa