aboutsummaryrefslogtreecommitdiff
path: root/src/backends
AgeCommit message (Collapse)Author
2019-05-31IVGCVSW-3147 Add CL Dequantization workloadJim Flynn
Change-Id: I9baf6af3d98a26005a31075cd9c4e1f40938789b Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-05-31IVGCVSW-3195 Extend reference SpaceToBatch workload to support QSymm16nikraj01
Change-Id: I253eee2bbe1f48b94b03936af8f18603c1d58986 Signed-off-by: nikraj01 <nikhil.raj@arm.com>
2019-05-31IVGCVSW-3165 Added accidentally removed CreateFakeQuantization FunctionSadik Armagan
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I50a1a364f13df03dea0833023ec0f2c2794f24db
2019-05-31IVGCVSW-3171 Extend the Strided Slice Ref workload to support the QSymm16Matteo Martincigh
* Added support for QSymm16 in the Strided Slice workload * Added unit tests Change-Id: I84485bc2fd5ad2b4edb49c644b644878e0e5aded Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-05-31IVGCVSW-3170 Refactor the Strided Slice Ref workload for Float32 andMatteo Martincigh
QAsymm8 types * RefStridedSliceWorkload is no longer a template class * Refactoring of the ref StridedSlice implementation * Added ValidateTensorQuantizationSpace function Change-Id: Ifa182a33d79d42137731f48b995a7973c9d92152 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-05-31IVGCVSW-3148 Add Neon backend support for DequantizeNarumol Prangnawarat
* Add NeonDequantizeWorkload * Add IsDequantizeSupported to call validate from ACL function * Add CreateDequantize to NeonWorkloadFactory * Unit tests Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I96a216ef78cc3f6a57aa439a16ae6aafd783ff93
2019-05-31IVGCVSW-3186 Add ClQuantizeWorkloadSadik Armagan
* Added ClQuantizeWorkload to enable quantization on CL backend Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Id49d5ec29514f6f853c2500a34b1a12444c49168
2019-05-31IVGCVSW-3185 Add NeonQuantizeWorkloadSadik Armagan
* Added NeonQuantizeWorkload to ArmNN Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I41f8707dda35c894841eddae2d3b78f088038c8e
2019-05-30IVGCVSW-3194 Refactor SpaceToBatchNd workloadnikraj01
Change-Id: Iac2ded9b20c37299e3de51465dcbfb5a7bfc52d5 Signed-off-by: nikraj01 <nikhil.raj@arm.com>
2019-05-30IVGCVSW-3159 Support QSymm16 for Splitter workloadsRuomei Yan
Change-Id: I9af5d2d8ade97b9ecd2e6fbf13db9fa3bb622ed8 Signed-off-by: Ruomei Yan <ruomei.yan@arm.com>
2019-05-30fix reference IsConvolution2dSupported error messagesLes Bell
Signed-off-by: Les Bell <les.bell@arm.com> Change-Id: Id454ac91ae1c0216f5ecfa1c3cde9430691f51f4
2019-05-30IVGCVSW-2771 Add more end to end tests for splitter on Cl, Neon, RefNarumol Prangnawarat
to cover different number of dimensions and split axis Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Ia9a111c8dcfc08d04b54aa770d1ae5312c6b1c93
2019-05-29IVGCVSW-3173 Extend reference softmax workload to support qsymm16nikraj01
Change-Id: I9ad5a04368a4587588d733ac36ad157f79b6c432 Signed-off-by: nikraj01 <nikhil.raj@arm.com>
2019-05-29IVGCVSW-3172 Add QSymm16 support for reshape workloadNina Drozd
* Added QSymm16 to supported types in WorkloadData * Added QSymm16 to supported types in RefLayerSupport * Created templated SimpleReshapeTest in LayerTests * Updated ClLayerTests to use templated SimpleReshapeTest * Updated NeonLayerTests to use templated SimpleReshapeTest * Added test for QSymm16 to RefCreateWorkloadTests, RefLayerTests * Removed ReshapeTestImpl as all reshape test methods were moved * Added FloorTestImpl for existing SimpleFloorTest Change-Id: I78efede8aab74c2d4cb0841dd426b8e06186133d Signed-off-by: Nina Drozd <nina.drozd@arm.com>
2019-05-29IVGCVSW-2745 Unit test error running ArmNN on Raspberry PiConor Kennedy
* Fix bad_alloc on NeonTimerMeasure test Change-Id: Ia4ab24abfe0305a3d7773162dc423bc049e1a3cc Signed-off-by: Conor Kennedy <conor.kennedy@arm.com>
2019-05-29IVGCVSW-3168 Refactor reference softmax workload into a single workloadnikraj01
Change-Id: Ie290efcbb9e3a6365cbd630cb2041e7b0f542505 Signed-off-by: nikraj01 <nikhil.raj@arm.com>
2019-05-28IVGCVSW-3119 Rename MergerLayer to ConcatLayerJim Flynn
!android-nn-driver:1210 Change-Id: I940b3b9e421c92bfd55ae996f7bc54ac077f2604 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-05-28IVGCVSW-3145 Refactor Reference Reshape workloadsNina Drozd
* Removed reference reshape workloads for float32 and uint8 * Added RefReshapeWorkload * Added check for supported datatypes for reshape in WorkloadData * Added check for supported datatypes for reshape in RefLayerSupport * Updated CMakeLists.txt * Updated references to reshape workloads Signed-off-by: Nina Drozd <nina.drozd@arm.com> Change-Id: I9941659067b022f8f7686ab0ff14776944dca3e5
2019-05-28IVGCVSW-2771 Add end to end tests for splitter on Cl, Neon, RefNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I44f8f1799f6182721751b1d117c9ada5b91f52e1
2019-05-28IVGCVSW-3033 Unit test using a MockBackend to validate OptimizerDavid Monahan
Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: I5b446905c496001ba3c48ad5090e79e80d060d4e
2019-05-28IVGCVSW-2970 Support QSymm16 for FullyConnected workloadsFrancis Murtagh
* Add support for QSymm16 for FullyConnected * Add templating to Uint8 RefLayerTest to test QSymm16 Change-Id: Ie6e989daf2ca966d6c6805b8017126eb77ebfec4 Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
2019-05-27IVGCVSW-3134 Refactor FullyConnected workloads into single workloadFrancis Murtagh
* Refactor FullyConnected workloads into single workload. * Refactor FullyConnected ref implementation to use Encoders and Decoders to support all DataTypes. * Deleted RefFullyConnectedFloat32Workload and RefFullyConnected2dUint8Workload. Change-Id: Iad30fb0287ab7491e1297997e7d61f1d00785541 Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
2019-05-24IVGCVSW-3033 Adding MockLayerSupport to MockBackendDavid Monahan
Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: I90903af1b8c961a7727da9172a7f02031521a6ad
2019-05-23IVGCVSW-2771 Fix SubTensor error in vgg16 ExecuteNetwork CLNarumol Prangnawarat
* Add check if Sub-tensors cannot be used, call ACL function * Add ClSplitterWorkload functions * Modify IsSplitterSupported to call ACL validate function if sub-tensor cannot be used * Also check if quantization parameters match when using sub-tensors Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I5dfd0e422b7d485dd4421a664add83d870bec5d6
2019-05-23IVGCVSW-3026 Extend RefConvolution2dWorkload to support QSymm16Mike Kelly
* Added QuantisedSymm16 as supported type for Conv2D * Added Unit Tests for QSymm16 Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: I4a8176091e75abfb0ea3a4b913c213111512df75
2019-05-23IVGCVSW-3074 Extend the DepthwiseConvolution2d workload to support QSymm16Ruomei Yan
Change-Id: I47bb0f782acfa5b2d2fee9132875f9a655ea635e Signed-off-by: Ruomei Yan <ruomei.yan@arm.com>
2019-05-23IVGCVSW-2771 Fix SubTensor error in vgg16 ExecuteNetwork NEONNarumol Prangnawarat
* Add check if Sub-tensors cannot be used, call ACL function * Add computation of SplitAxis from SplitterDescriptor * Add NeonSplitterWorkload functions * Modify IsSplitterSupported to call ACL validate function if sub-tensor cannot be used * Also check if quantization parameters match when using sub-tensors * Add more unit tests for Splitter in TfParser and TfLiteParser Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I31e4c7d055117c83c65b598c4125442173242226
2019-05-23IVGCVSW-3073 Refactor reference DepthwiseConvolution2d workloadsRuomei Yan
Change-Id: I3cf8d9dbc4f8c95e0e2311505dd7e9f9069f1ab5 Signed-off-by: Ruomei Yan <ruomei.yan@arm.com>
2019-05-23IVGCVSW-3025: Refactor reference Convolution2d workloadMike Kelly
* Refactored RefConvolution2dWorkload to support all DataTypes through Encoders and Decoders. * Added Convolute function to ConvImpl that uses Encoders and Decoders to support all DataTypes. * Deleted RefConvolution2dFloat32Workload and RefConvolution2dUint8Workload. Signed-off-by: Mike Kelly <mike.kelly@arm.com> Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: Ic5ef0f499d08b948fa65fdee54b5f681fd0b1c05
2019-05-22IVGCVSW-3132 Reintroduce SubGraph definition, but deprecatedMatteo Martincigh
* Restored old SubGraph class definition as an alias of SubgraphView for backward compatibility * Restored SubGraphUniquePtr * Restored CreateSubGraphConverter method (and the corresponding ISubGraphConverterPtr type) as a deprecated method that's been removed from the backend interface * Chaged the defautl implementation of OptimizeSubgraphView to call the deprecated OptimizeSubGraph * Changed the default implementation of OptimizeSubgraphView in the backends Change-Id: If69903926bf5ff2aae52c9b64b4572b355662757 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-05-22IVGCVSW-3116 Fix failing NN Driver Tests on Android QSadik Armagan
* Fixed ResizeBilinear test failure on Cpu Reference Change-Id: I2cf317eae65f1a86ef87badefb3b32ff05dca9e8 Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
2019-05-22IVGCVSW-3088 Update the backends README fileMatteo Martincigh
* Updated the src/backends/README.md file with details on the new OptimizeSubgraphView method * Added section describing the new OptimizationViews class * Deprecated GetOptimizations in the code Change-Id: Icb1a9aa015394e56fb4b5120b0645a752f44134e Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-05-21IVGCVSW-3033 New unit tests to ensure the Optimizer canDavid Monahan
handle multiple Graph objects Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: I7ccc10a4d81eaac724a374a0d8abc70c9c79a3f4
2019-05-20IVGCVSW-3125 Deprecate CreateMergerDescriptorForConcatenation functionJim Flynn
!android-nn-driver:1183 Change-Id: Ia69995b7f09cb86b64611e8efd315413e3064ca1 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-05-20IVGCVSW-3030 Add unit testing for the Optimization APIMatteo Martincigh
* Added OptimizeSubgraphViewTests file covering a number of use cases for the Optimization API * Fixed a bug in the sub-graph selector algorithm that skipped the first layer in a sub-graph if it wasn't an input layer * Changed the graph splitting logic to make use of maps instead of unordered_maps to keep the split sub-graphs in consistent order between executions * Added more common unit test utils * Minor fixes to comply to the include file conventions Change-Id: Iad464eaedd004109e5ef41aa487cea3ad86177d3 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-05-20IVGCVSW-3124 Rename workloadFactory CreateMerger to CreateConcatJim Flynn
Change-Id: Id836372c0e4ef0c3996085facc4da6263366abcf Signed-off-by: Jim Flynn <jim.flynn@arm.com>
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-20IVGCVSW-3117 Rename NeonMergerWorkload to NeonConcatWorkloadJim Flynn
Change-Id: I9a373a31bfabbe0f691d7f9e240ac08e072b2c7d Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-05-20IVGCVSW-3117 Rename ClMergerWorkload to ClConcatWorkloadJim Flynn
Change-Id: Ie0394336a772afa7b075eb562ac5191c8b3ec9f3 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-05-17IVGCVSW-3117 Rename RefMergerWorkload to RefConcatWorkloadJim Flynn
Change-Id: Ifeb33db919ef77bf777e114f2d84b88fd595ca2c Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-05-17IVGCVSW-3030 Add a mock backend for unit testingMatteo Martincigh
* Added a mock implementation of an ArmNN backend for unit testing * Implemented a mock version of OptimizeSubgraphView * Fixed a typo in the Optimization API Change-Id: Ic7acf7cc5c2a76a918e94cdc356baae7c7597a6d Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-05-16IVGCVSW-2972 Support QSymm16 for MergerJim Flynn
Change-Id: If2289b2d1fc20f4524fcf4620f01ea3a36d727d2 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2019-05-14Use the new deprecation APIMatteo Martincigh
* Used the new ARMNN_DEPRECATED_MSG macro instead of @deprecated * Refactored the code to no longer use the deprecated methods where applicable !android-nn-driver:1126 Change-Id: Ib0578d3d6fc5a763f5fb922f67ba91fafc7796f6 Signed-off-by: Matteo Martincigh <matteo.martincigh@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-14MLCE-101 Add default dilation depthwise convolution implementationMatteo Martincigh
to LayerSupportBase Change-Id: Ib075a53cfe639e2624910a767abac6cba0fee8ed Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-05-14MLCE-101 Add dilation support for DepthWiseConv workloadBruno Goncalves
Adds unit tests for dilated depthwise conv Change-Id: Iad0a1b33d07fb0ef8f9f6edf0fd0f83a5800a36d Signed-off-by: Bruno Goncalves <bruno.slackware@gmail.com> Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
2019-05-13MLCE-101 Add dilation support to reference backendMatthew Bentham
Change-Id: I6d1ea80c9fabd8c50ee030272c51cb66e85e431d Signed-off-by: Matthew Bentham <Matthew.Bentham@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-10IVGCVSW-3030 Refactor code and fix OptimizeSubgraphViewMatteo Martincigh
* Refactored the Optimizer code for readibility, in view of upcoming changes * Rename one of the ISubgraphViewConverter interface methods to give it a more meaningful name * Improved the OptimizationViews class, added comments and useful funtion overloads * Fixed an error in the default implementationof the new OptimizeSubgraphView method in IBackendInternal Change-Id: I683a56d562aa093bac06f0e83fb13e144ed81485 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>