aboutsummaryrefslogtreecommitdiff
path: root/src/backends/reference/RefLayerSupport.cpp
AgeCommit message (Collapse)Author
2019-05-20IVGCVSW-2967 Support QSymm16 for Constant workloadsNina Drozd
* Validate that output is any of supported types in WorkloadData * Validate that output is any of supported types in RefLayerSupport * Add test for constant with QuantisedSymm16 in LayerTests * Add test for creating constant workload in RefCreateWorkloadTests * Add test for constant with QuantisedSymm16 in RefLayerTests * Refactor RefConstantWorkload - BaseWorkload instead of TypedWorkload * Refactor RefConstantWorkload - remove m_RanOnce, use PostAllocationConfigure() Signed-off-by: Nina Drozd <nina.drozd@arm.com> Change-Id: Ic30e61319ef4ff9c367689901f7c6d498142a9c5
2019-05-16IVGCVSW-2972 Support QSymm16 for MergerJim Flynn
Change-Id: If2289b2d1fc20f4524fcf4620f01ea3a36d727d2 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-05-14IVGCVSW-3076 Add ConcatLayer methods to public APIJim Flynn
!android-nn-driver:1120 Change-Id: I5192fa3deb4ea9766d38ad0bf4dfbfa0b4924c41 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-05-13MLCE-101: Adding dilation support in conv and dconvPablo Tello
Added support for dilation in DepthwiseConvolution2d in the Neon and CL backends. Change-Id: Ie1522b498c07f80d6efcf9dc79e926c8cfa06ca5 Signed-off-by: Pablo Tello <pablo.tello@arm.com>
2019-05-13IVGCVSW-3013 Add unit tests for QSymm16 LSTMConor Kennedy
* Add unit tests for QSymm16 LSTM * Update supportedTypes in WorkloadData & RefLayerSupport with DataType::QuantisedSymm16 Change-Id: I1a2627b11b707d68d7d7002f63b985f9571ee177 Signed-off-by: Conor Kennedy <conor.kennedy@arm.com>
2019-05-07IVGCVSW-2997 Refactor reference LSTM workloadNattapat Chaimanowong
Signed-off-by: Nattapat Chaimanowong <nattapat.chaimanowong@arm.com> Change-Id: I6883f878d9f701a55153292769d2fc0530d2529e
2019-04-29IVGCVSW-2983 activation layers support for QSymm16Teresa Charlin
!armnn:1023 Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: Ie4e5c4e7cb9edec690235393fff0721fca5da6cc
2019-04-09IVGCVSW-2862 Extend the Elementwise Workload to support QSymm16 Data TypeSadik Armagan
IVGCVSW-2863 Unit test per Elementwise operator with QSymm16 Data Type * Added QSymm16 support for Elementwise Operators * Added QSymm16 unit tests for Elementwise Operators Change-Id: I4e4e2938f9ed2cbbb1f05fb0f7dc476768550277 Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
2019-04-02IVGCVSW-2875 Enable QuantisedSymm16 support for ref Dequantize workloadNattapat Chaimanowong
Change-Id: I4b1c1f963214433ad67d5a311fbea5f21177f6a2 Signed-off-by: Nattapat Chaimanowong <nattapat.chaimanowong@arm.com>
2019-04-01IVGCVSW-2871 Ref QuantizeLayer workloadDerek Lamberti
Change-Id: If048b2a053c542b31ae344fe0af04d9b4f40eb6d Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-03-29IVGCVSW-2875 Reference implementation and unit tests for DequantizeNattapat Chaimanowong
Change-Id: Ie4ade0519cb0bbe35dc36be6c9cd749b9171c74b Signed-off-by: Nattapat Chaimanowong <nattapat.chaimanowong@arm.com>
2019-03-26IVGCVSW-2881 Remove DebugDescriptorNattapat Chaimanowong
* Also update Debug layer to use layer guid information Change-Id: I9ec1f639299c3f855b670ff031a0e88d685cfc6b Signed-off-by: Nattapat Chaimanowong <nattapat.chaimanowong@arm.com>
2019-03-20IVGCVSW-2814 AllTypesAreEqualImpl handles odd num params correctly.Derek Lamberti
Change-Id: I9b661cabab41f6997dac808cca15995834bb0313 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-03-20IVGCVSW-2814 Extensive ref IsSupported for Activation & AdditionDerek Lamberti
Change-Id: Ib1a795eb129de1ec3f02807a2dff7613d7c6c28d Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-02-04IVGCVSW-2557 Ref Workload Implementation for Detection PostProcessNarumol Prangnawarat
* implementation of DetectionPostProcessQueueDescriptor validate * add Uint8ToFloat32Workload * add implementation of Detection PostProcess functionalities * add ref workload implemenentation for float and uint8 * add layer support for Detection PostProcess in ref * unit tests Change-Id: I650461f49edbb3c533d68ef8700377af51bc3592
2019-01-24IVGCVSW-2503 Refactor RefElementwiseWorkload around Equal and Greaterkevmay01
* Remove Equal and Greater from RefElementwiseWorkload * Create RefComparisonWorkload and add Equal and Greater * Update ElementwiseFunction for different input/output types * Update TfParser to create Equal/Greater with Boolean output * Update relevant tests to check for Boolean comparison Change-Id: I299b7f2121769c960ac0c6139764a5f3c89c9c32
2019-01-23IVGCVSW-2511 Add end to end Gather layer testnarpra01
* Add end to end test for Gather operator * Add Support for int32 to Constant layer for Ref * Add Int32Workload * Add RefConstantWorkload as template for float, uint8, int32 * Remove unused RefBaseConstantWorkload * Remove unused RefConstantFloat32Workload * Remove unused RefConstantUint8Workload * Add support check for int32 in LayerSupport functions Change-Id: Ic970588a49ebe2aafb12be8adef52371feacaa7b
2019-01-23IVGCVSW-1048 RESIZE_BILINEAR NEON operatorSadik Armagan
* Implemented NeonResizeBilinearWorkload * Enable ResizeBilinear Operator unit tests for Neon !android-nn-driver:405 Change-Id: Iec3100ccaf7d246e8eaf683d1f3ec9191df5241e
2019-01-22IVGCVSW-2510 Ref workload implementation for Gather operatornarpra01
* add implemenentation for GatherQueueDescriptor validate function * add FirstInputTypedWorkload to allow type check on the first input tensor only * add ref workload implemenentation for float and uint8 * add Gather layer support in Ref * unit tests Change-Id: I4578a3211f11d24aa29d15bcf7f45b0445bcd1ee
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-07IVGCVSW-2371 Add Rsqrt Ref implementationMohamed Nour Abouelseoud
*Added Unit Tests Change-Id: I6cceb8e6dcda35ce08415f8e5ca86019a64d26e3
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-07IVGCVSW-2316 Add reference implementation and unit tests for DebugNattapat Chaimanowong
Change-Id: Ib2e5de2a057da57ef77a9f5c4367d699d4773294
2018-12-05IVGCVSW-2296 Add ParsePad method to TfParserjimfly01
* Also added unit test armnnTfParser/test/Pad.cpp * Added missing 'Pad' entry to GetLayerTypeAsCString(LayerType) * Fixed the RefLayerSupport.IsPadSupported, now it returns true * Small fix in Optimize. Only resolve stringstream to string once Change-Id: Ieaa1886858a48cd761ac5f30454f73e44bdd4b8f
2018-12-04IVGCVSW-2247 Adding a min Elementwise Workload and testsÉanna Ó Catháin
Change-Id: I017ca6c23b62a8978982de0ca4ad204cb8cf7c67
2018-11-29IVGCVSW-2254 Add Reference workload for Maximumsaoste01
Change-Id: Id7302c6b1df995ebe6eb8eb94bab38bee1b31b0b
2018-11-26IVGCVSW-2087 Reference implementation and unit tests for StridedSliceNattapat Chaimanowong
Change-Id: Ifeacc0adb4547c72537b9ea7a61bf3c4ec3673fa
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-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-2095 Add reference implementation and unit tests for SpaceToBatchNdNattapat Chaimanowong
Change-Id: I27ffebdece6e68460931a44c15b9b029f9fce638
2018-11-05Revert "IVGCVSW-2056 + IVGCVSW-2064 : move ClContextControl to the ClBackend"David Beck
This reverts commit d4dfa684941a21314b70593d01b0fc2167eebad4. Change-Id: Id61ce69215505c3cf5d30ec2a7ec9127fb2554fc
2018-11-02IVGCVSW-1946: Remove armnn/src from the include pathsAron Virginas-Tar
Change-Id: I663a0a0fccb43ee960ec070121a59df9db0bb04e
2018-10-26IVGCVSW-2056 + IVGCVSW-2064 : move ClContextControl to the ClBackendDavid Beck
Change-Id: Ice19d3f763298bc14585267df389e99df846320d
2018-10-22IVGCVSW-2037 : separate registry for layer support intrefacesDavid Beck
* because their lifetime is different from backends Change-Id: I9ba525e7e503b148cde1294933f3954b8bad3d68
2018-10-22IVGCVSW-2004: Get rid of IsLayerSupportedRef functions in favor of ↵Aron Virginas-Tar
ILayerSupport interface Change-Id: Ia147a0b408b2ca951c214963432d6e0f9b27b973
2018-10-22IVGCVSW-1998 : replace Compute enum in LayerSupport free functionsDavid Beck
!android-nn-driver:153490 Change-Id: I1c2a5f942e3a1c3626e093c90545ca27c64ba5e8
2018-10-10IVGCVSW-1985: Replace std::string* reasonIfNotSupported with ↵arovir01
Optional<std::string&> in IsLayerSupported implementations Change-Id: I2f054f0dcff9bdc86ee90c55b3e94c6b4ae25085
2018-10-10IVGCVSW-1966: Ref implementation for the ILayerSupport interfacearovir01
Change-Id: Idd572cae3a131acb11e884e33c0035ca74c95055
2018-10-10IVGCVSW-1964 : replace optional biases with home-grown OptionalDavid Beck
!android-nn-driver:151788 Change-Id: Ibdc41d09b8df05e7a0360dcb8a060860dfb1bd99
2018-10-10IVGCVSW-1886 - forward layer support for padNina Drozd
Ref returning false for now until implementation complete in 1885 Change-Id: I28cbc584eaa6ce3ad79a531db7155b3f9716f30c
2018-10-10IVGCVSW-1863 Support NHWC for L2NormalizationMatteo Martincigh
* Added L2NormalizationDescriptor struct with m_DataLyaout member * Updated all IsL2NormalizationSupported calls to take a descriptor as an argument * Updated L2NormalizationLayer to take a descriptor as an argument !android-nn-driver:150116 Change-Id: I0459352d19cfd269bc864a70cf73910bf44fdc01
2018-10-10IVGCVSW-1812 Adding Ref implementation and tests of MeanWorkloadsnarpra01
Change-Id: I6fb15c407024e3b91d5abf4513f8090be5821760
2018-10-10IVGCVSW-1898 : Ref backend folder structureDavid Beck
* Reference backend is renamed to backends/reference as per https://confluence.arm.com/display/MLENG/Pluggable+backends Change-Id: I27a13c274eb60995dfb459e3c49c0e2f60bcd32c