aboutsummaryrefslogtreecommitdiff
path: root/src/backends/reference/RefWorkloadFactory.cpp
AgeCommit message (Collapse)Author
2019-11-15Add FP16 support to DebugWorkloadAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: Ia879f2d84a1b977474ee0dafa976f2aab32bd3ae
2019-10-21IVGCVSW-3993 Add frontend and reference workload for ComparisonLayerAron Virginas-Tar
* Added frontend for ComparisonLayer * Added RefComparisonWorkload * Deprecated and removed Equal and Greater layers and workloads * Updated tests to ensure backward compatibility Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: Id50c880be1b567c531efff919c0c366d0a71cbe9
2019-10-15IVGCVSW-3975 Add reference workload for LOG_SOFTMAXAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I10bb7133e0e2d6d7199abdf39562b1226bbbd3e7
2019-10-09IVGCVSW-3888 Add INSTANCE_NORMALIZATION Reference implementationKevin May
Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: I725022f86e990c482ea323fc90fd136fe493ed68
2019-09-24IVGCVSW-3885 Add reference workload for DepthToSpaceAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: Id937dc4425884ad1985dcdfaae8bf3fb64f0c766
2019-09-24IVGCVSW-3623 Implement NeonTensorHandle::ImportDavid Monahan
Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: I7213788725fd4e4cf1176998604e999d0b7ed6cc
2019-09-19IVGCVSW-3723 Adding reference workload support for ArgMinMaxNikhil Raj
Change-Id: I65209ecec4e3abf808163239748d6e830568c2e3 Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
2019-09-18IVGCVSW-3878 Add reference workload for SLICEAron Virginas-Tar
* Added reference workload implementation and layer tests for all supported tensor dimensions (1d, 2d, 3d, 4d) Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I40eb300828933e9183027281105d1a7e597d1569
2019-09-12IVGCVSW-3857 Add Reference FP16 workload support to remaining layersMatthew Jackson
* Adds Reference FP16 support and unit tests for layers not already supported !referencetests:202156 Signed-off-by: Matthew Jackson <matthew.jackson@arm.com> Change-Id: I6fc9b9ce2809e163f72e27e877025c8fb85d9fbe
2019-09-11IVGCVSW-3845 Add Reference FP16 support for required layersMatthew Jackson
* Working on layers required by FSRCNN, FCRN and DeepSpeaker * Updates RefLayerSupport and RefWorkloadFactory methods * Adds RefPadFloat16Workload * Tested by successful execution of these networks on Reference FP16 backend Signed-off-by: Matthew Jackson <matthew.jackson@arm.com> Change-Id: I4817dca0a89bba6902f0feffc494b27a26a0ab2d
2019-09-10IVGCVSW-3824 Implement Float 16 Encoder and DecoderMatthew Jackson
* Implement Float 16 Encoder and Decoder * Add Stack Float 16 layer and create workload tests Signed-off-by: Matthew Jackson <matthew.jackson@arm.com> Change-Id: Ice4678226f4d22c06ebcc6db3052d42ce0c1bd67
2019-09-06IVGCVSW-3740 Add Reference Workload support for ABSSadik Armagan
* Implemented RefAbsWorkload and unit tests Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Ibfcdb2b37fd8d240c181f96856e2c997a4b88914
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-01IVGCVSW-3571 Fix VTS Test SkipsMike Kelly
* Fixed FP16 failures on Max, Min, BatchToSpace on Gpu * Fixed Signed32 skips on Maximum and Minimum Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: I4bea19af1a0ae4c8950af8c6d5d68622cdd9b674
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-09IVGCVSW-3399 Add support of QuantisedSymm16 to PadNarumol Prangnawarat
* Add support of QuantisedSymm16 to Pad * Fix custom padding tests * Add unit tests for Pad QuantisedSymm16 Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Ieb9a4492760b13fa030a42eb4d38fd9ffd7a8c76
2019-07-08IVGCVSW-3399 Add support of QuantisedSymm16 to Permute and unit testsNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Id6ab073ae3e0ff5f60c2f4bef975798ce71c9f88
2019-07-08IVGCVSW-3399 Add support of QuantisedSymm16 to Debug and unit tests,Narumol Prangnawarat
refactor to be done Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I6dbf6a2aa328b8c843632e1231931b4e1c6888bb
2019-07-04IVGCVSW-3307 Add RefMemoryManagerMatthew Bentham
Simple pool memory manager for use in the reference backend, in order to make the backend usable for testing large networks. Change-Id: I5694da29052c60f95b57da595c64cc114d75b8ba Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com>
2019-07-02IVGCVSW-3382 Deprecate ResizeBilinear and use Resize with Bilinear methodAron Virginas-Tar
!android-nn-driver:1451 Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: Ieedbce1f6e95891137a250fdd07e2f7e4e1f4828
2019-07-02IVGCVSW-3307 Introduce RefTensorHandleMatthew Bentham
Use it for intermediate tensors on reference backend. Lays the groundwork for memory management in the reference backend. Change-Id: I7d3ee132cac31bde70ae6e1b815f4f0b03d550a6 Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com>
2019-07-01IVGCVSW-3365 Add reference workload support for ResizeLayerTeresa Charlin
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: Id551690065dca0686ce597d1f0c14fd73163481e
2019-06-27IVGCVSW-3324 Add end-to-end tests for TransposeConvolution2d on CpuRefAron Virginas-Tar
* Added one end-to-end test for all supported data types and data layout * Implemented RefLayerSupport::IsTransposeConvolution2dSupported() * Fixed formula used in TransposeConvolution2dLayer::InferOutputShapes() Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: If1ba3c226ecfa17f7fceffae857f39297c6433f2
2019-06-27IVGCVSW-3320 Add reference workload support for TransposeConvolution2dLayerAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: Icc64f8148c9d8a0d14d772e6e4e7865e70585cd9
2019-06-24IVGCVSW-3247: Refactor reference Gather workloadEllen Norris-Thompson
* Refactored Gather reference workload to not use templates for different types * Added quantization values in Gather unit tests for Quantized types Signed-off-by: Ellen Norris-Thompson <ellen.norris-thompson@arm.com> Change-Id: Ibe5d655aa1c287824e45b83818c5862bda7f92b0
2019-06-20IVGCVSW-3248 Refactor reference BatchToSpace workloadFrancis Murtagh
* Add Decoders and Encoders to workload to make it data type agnostic * Merge float32 and Uint8 into single workload Change-Id: I8adfa1898a63f13889eaaf55a31c26fd1e2d7ee8 Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
2019-06-19IVGCVSW-3231 Add reference workload support for SpaceToDepthKeith Davis
* Added reference workload for SpaceToDepth * Added unit tests for float32 & uint8 * Minor sort refactoring to RefWorkloads.hpp to alphabetical order Change-Id: I2e01f8101650e2aae102a8a32bc0064f067141ab Signed-off-by: Keith Davis <keith.davis@arm.com>
2019-06-19IVGCVSW-3268 Add Reference workload support for the new Prelu Activation layerMatteo Martincigh
* Added reference workload for the PReLU Activation layer * Added factory methods * Added validation support * Added Int16 support * Added unit tests Change-Id: Ic950d908c5e0a335dccd2960a3ffab0f8b599876 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-06-17IVGCVSW-3221 Refactor Mean ref workload and testsJames Conroy
* Renamed RefMeanFloat32Workload and RefMeanUint8Workload to RefMeanWorkload, updated references to reflect this change. * Refactored RefFloorWorkload to use Decoders/Encoders, to support the use of multiple data types. * Deleted reference Unit8 Mean tests as they were duplicates of the Float32 tests. Refactored these tests to support multiple data types and updated references. * Adjusted the values used in the tests' input tensors so that they are more like floating point numbers e.g. change 1.0f to 1.5f. * Replace size_t with unsigned int in Mean ref workload, for better compatibility with the Encoder/Decoder, removed some unnecessary casts after this. * Added ValidateTensorDataTypesMatch() function to WorkloadData.cpp, added CreateIncorrectDimensionsErrorMsg function to RefLayerSupport.cpp. * Added passing and failing tests for ref IsMeanSupported. Signed-off-by: James Conroy <james.conroy@arm.com> Change-Id: Id3d44463d1385255c727a497d4026d21a49e7eb2
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-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-06IVGCVSW-3211 Refactor reference Rsqrt workloadnikraj01
Change-Id: Ia413c6b5352dbb3390e7d84e837a542c24ae8813 Signed-off-by: nikraj01 <nikhil.raj@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-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-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-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-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-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-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-20IVGCVSW-3124 Rename workloadFactory CreateMerger to CreateConcatJim Flynn
Change-Id: Id836372c0e4ef0c3996085facc4da6263366abcf Signed-off-by: Jim Flynn <jim.flynn@arm.com>