aboutsummaryrefslogtreecommitdiff
path: root/src/backends/reference
AgeCommit message (Collapse)Author
2019-06-17IVGCVSW-3285 Remove out of date check from ↵Aron Virginas-Tar
RefLayerSupport::IsDilatedDepthwiseConvolutionSupported Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: Ie8d0247a65774e4e9717501439014dd0e973f9f3
2019-06-17IVGCVSW-3218 Refactor the Reference Workloads for the ResizeBilinear layerEllen Norris-Thompson
* Refactored ResizeBilinear Reference Workloads to combine Float32 and Uint8 files Signed-off-by: Ellen Norris-Thompson <ellen.norris-thompson@arm.com> Change-Id: I725a830f4c4755a7d3a37ca68e31e44e7eb267cb
2019-06-14MLCE-121 Github: Build error on GCC 9Mike Kelly
* Fixed an error encountered when building on GCC 9 error: moving a local object in a return statement prevents copy elision * Fixed failures in unit tests due to std::initializer_list handling in GCC 9 Change-Id: I4bfdd2113dfedcecd29479ee556e4ae22278755d Signed-off-by: Mike Kelly <mike.kelly@arm.com>
2019-06-14IVGCVSW-3225 Add QSymm16 support for Rsqrt workloadnikraj01
Change-Id: I83b8494af24ff271dc4cd609944a1c5c55c405e0 Signed-off-by: nikraj01 <nikhil.raj@arm.com>
2019-06-14IVGCVSW-3275 Add Uint8 support for L2NormalizationFerran Balaguer
Signed-off-by: Ferran Balaguer <ferran.balaguer@arm.com> Change-Id: I7f2bcf0596a4f654166aad9657bc7084f55e7451
2019-06-14IVGCVSW-3229 Refactor L2Normalization workload to support multiple data typesFerran Balaguer
Signed-off-by: Ferran Balaguer <ferran.balaguer@arm.com> Change-Id: I848056aad4b172d432664633eea000843d85a85d
2019-06-14IVGCVSW-3224 Add Uint8 support for Rsqrtnikraj01
Change-Id: I45598fc9b6d408b19d8d050e64c12b1d48535fa3 Signed-off-by: nikraj01 <nikhil.raj@arm.com>
2019-06-12IVGCVSW-3217 Refactor the Layer tests for ResizeBilinear to make them genericEllen Norris-Thompson
* Refactored the ResizeBilinear tests so can be used for both Float32 and Uint8. * Moved to .hpp file and renamed tests accordingly. Signed-off-by: Ellen Norris-Thompson <ellen.norris-thompson@arm.com> Change-Id: Icf79b0616db0c307cfcf94747fe0a6d4343588bd
2019-06-12IVGCVSW-3010: Unit Test for Activation Workload for Float32 and Uint8konsof01
Unit tests for following Activations have been added *Relu *SoftRelu *LeakyRelu *Abs *Sqrt *Square *Tanh Signed-off-by: Konstantin Sofeikov <konstantin.sofeikov@arm.com> Change-Id: I2812a24842400c8b2c2d87933fbe1eca8c66e911
2019-06-07IVGCVSW-3237 Add type check to RefLayerSupport::IsDetectionPostProcessSupportedAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I68ff6f3682a93689a890fff46bb1a6ccb1acda20
2019-06-07IVGCVSW-3223 Fix ref convolution performance regressionMatteo Martincigh
* Do not use DataLayoutIndexed::GetIndex for weights and inputs, as it causes a large regression in performance * It turned out that the calculation of the indexes for the weights and inputs was the way it was because of an optimization done many months ago * Reverted the relevant hunks and added some comments so we won't make the same mistake again in the future * Made the GetIndex function inline to speed up other usages Change-Id: I343b2ef0446993086f58b9dea1f0de0ba2d92216 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-06-06IVGCVSW-3211 Refactor reference Rsqrt workloadnikraj01
Change-Id: Ia413c6b5352dbb3390e7d84e837a542c24ae8813 Signed-off-by: nikraj01 <nikhil.raj@arm.com>
2019-06-06IVGCVSW-3143 Extend the Pooling 2d workload to support QSymm16Teresa Charlin
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: I4026a77377002f4f9c15a923e8fcb7075d700f6e
2019-06-06IVGCVSW-3227 Extend the reference normalization workload to support QSymm16Matteo Martincigh
* Added support for QSymm16 * Added unit tests Change-Id: I7ba57793830bed7958ac9a94e9ac39d6dbe708b5 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-06-06IVGCVSW-3226 Refactor the reference normalization workloadMatteo Martincigh
* Refactored RefNormalizationFloat32Workload into RefNormalizationWorkload * Added ref support of Uint8 norm workloads * Added workload unit tests for Uint8 Change-Id: I063ce919c267e02a32e739848e49d75fd98a5eb6 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-06-06IVGCVSW-3142 Refactor reference Pooling2d workloadTeresa Charlin
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: I94c973ab747309c0214268c9c39f6d8f3fc7b255
2019-06-05IVGCVSW-2971 Support QSymm16 for DetectionPostProcess workloadsAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I8af45afe851a9ccbf8bce54727147fcd52ac9a1f
2019-06-05IVGCVSW-3223 Use GetIndex from DataLayoutIndexed.cpp in ConvImpl.cppMatteo Martincigh
* Used DataLayoutIndexed::GetIndex wherever possible * Removed unnecessary GetOffset function Change-Id: Ieaad2def60e8de48dbc3afb63e550ac5883b3690 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-06-05IVGCVSW-3212 Refactor the Reference BatchNormalization workloadsMatteo Martincigh
* Used the new DataLayoutIndexed::GetIndexmethod in BatchNormImpl for convenience Change-Id: Ifb7e5abbdb48d958ee2139d22b97cd8d479357bc Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-06-05IVGCVSW-3216 Make Rsqrt f32 layers test genericnikraj01
Change-Id: Ibb8b71058039d0fb7345c2e6cba6382023541269 Signed-off-by: nikraj01 <nikhil.raj@arm.com>
2019-06-05IVGCVSW-3142 Refactor DataLayoutIndexed and TensorBufferArrayViewMatteo Martincigh
for convenience * Added GetIndex method to DataLayoutIndexed * Refactored TensorBufferArrayView::Get to use the new method Change-Id: Iae08b2761bddeda9e935b25e6bc4985f2d386cd3 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-06-04IVGCVSW-3213 Extend the Reference BatchNormalization workload toMatteo Martincigh
support the new QSymm16 type * Added QSymm16 to the range of supported types for batch normalization ref workloads * Added unit tests for QSymm16 Change-Id: I5b2fcfbd9cb5af149ebfe24e2d95f3affa2e3690 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-06-04IVGCVSW-3212 Refactor the Reference BatchNormalization workloads toMatteo Martincigh
handle Float32 and QAsymm8 types * Removed the type-specific workload implementations * Added type-independent RefBatchNormalizationWorkload implementation * Reworked BachNormImpl to use decoders/encoders * Improved the validation of the BatchNorm queue descriptor * Fixed unit tests where necessary Change-Id: Icf3fa1332292d38ec2fa0b1cb984cab78426034b Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-06-04Add support for all data type for input and output layersNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I688f4db5f5950877ad88f637cf71c05270fd5338
2019-06-04IVGCVSW-3215 Add CreateWorkload test for Rsqrt Fp32nikraj01
Change-Id: Iea6edf90148773b12f361bfa4b1d572c5322d18b Signed-off-by: nikraj01 <nikhil.raj@arm.com>
2019-06-04IVGCVSW-3179 Extend floor workload to support QSymm16James Conroy
* Added support for QSymm16 in Floor workload * Added unit test for QSymm16 Floor Signed-off-by: James Conroy <james.conroy@arm.com> Change-Id: I6d36a07b3cfff212056125232f7842ca04bf4947
2019-06-03IVGCVSW-3148 Add end to end test for Dequantize layer to Ref, Cl, NeonNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Iaf9c290c093b7d84949993439568e55433938b4e
2019-05-31IVGCVSW-3177 Refactor Floor reference workloadJames Conroy
* Renamed RefFloorFloat32Workload to RefFloorWorkload and updated references to reflect this change. * RefFloorWorkload now uses Decoders/Encoders and supports the use of multiple data types. * Deleted FloorTestImpl.hpp and moved its contents into LayerTests.hpp. Change-Id: Ie079d05f2f6a578172f0fe3024f9607c030bce64 Signed-off-by: James Conroy <james.conroy@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-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-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-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-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-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>