aboutsummaryrefslogtreecommitdiff
path: root/src/backends/cl
AgeCommit message (Collapse)Author
2020-05-20IVGCVSW-4450 Add CL Enhanced Quantized LSTM WorkloadRyan OShea
* Adds QLstm CL workload * Added Layer and CreateWorkload tests Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com> Signed-off-by: James Conroy <james.conroy@arm.com> Change-Id: I32335e528467bfd619edb249d2971705ac2a6163
2020-05-15IVGCVSW-4831 Fix Packet header includes in backendsFinn Williams
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: Iedfcf0ef487bd7836b1bc4ba8a0e4337dc4da391
2020-05-13IVGCVSW-4753 Refactor CL Softmax workload generalizing for different datatypeTeresa Charlin
* Change ComputeSoftmaxAclAxis to work with int and uint axis Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: Ibbfa9ec7e2f0416e6885673212a767419c871cca
2020-04-27IVGCVSW-4668 Add TENSOR_QUANT8_ASYMM_SIGNED data type support to CpuRef ↵Sadik Armagan
operators Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I094125ba80699cc3cf5226bda6662a54e6caa988
2020-04-27MLCE-190: Neon and CL Constant Workloads do not support newer DataTypesMike Kelly
* Added support for QASYMM8_SIGNED, QSYMM16, QSYMM8 and QSYMM8_PER_CHANNEL to Neon and CL backends * Added unit tests to Neon, CL and Ref backends Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: I4c726b6d86b4d75abedd130dcea372d1e82be5c2
2020-04-14IVGCVSW-4483 Removes boost::polymorphic_pointer_downcastJan Eilers
* replace boost::polymorphic_pointer_downcast by PolymorphicPointerDowncast * replaced/removed includes Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: I0ef934a3804cf05e4c38dec6c4ec49c76111a302
2020-04-10IVGCVSW-4483 Remove boost::polymorphic_downcastJan Eilers
* exchange boost::polymorphic_downcast with armnn::PolymorphicDowncast * remove unnecessary includes of boost::polymorphic_downcast Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: Ie603fb82860fe05fee547dc78073230cc62b2e1f
2020-04-06IVGCVSW-4485 Remove Boost assertNarumol Prangnawarat
* Change boost assert to armnn assert * Change include file to armnn assert * Fix ARMNN_ASSERT_MSG issue with multiple conditions * Change BOOST_ASSERT to BOOST_TEST where appropriate * Remove unused include statements Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I5d0fa3a37b7c1c921216de68f0073aa34702c9ff
2020-03-30IVGCVSW-4603 Support comparison operators in CLTeresa Charlin
* Deprecate ClGreaterWorkload * Add ClComparisonWorkload to encompass all comparison operators Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: Ida0ed7f59899d75b0fe7de1e7433b1ade018c6f1
2020-03-24IVGCVSW-3813 Add Unary Elementwise Operation 'NEG' support to the ↵Sadik Armagan
android-nn-driver * Implemented ClNegWorkload * Implemented NeonNegWorkload * Enabled 'NEG' operator on CL and Neon as well as Ref * Implemented unit tests for 'NEG' operator Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I3d7a892692716636cae6bdf8ddd238e3d1ea064f
2020-03-19IVGCVSW-4565 TENSOR_BOOL8 data type not supported in AndroidNN DriverSadik Armagan
* Enabled Boolean and Int32 data types in Reference Comparison inputs * Added decoder for Boolean data type * Refactored ClGreaterWorkload to work with any data type * Refactored NeonGreaterWorkload to work with any data type !android-nn-driver:2902 Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I92772810b744b388831c9dca0119ebf8cb7a447e
2020-03-18IVGCVSW-4446 Add HardSwish EndToEnd testsJan Eilers
* adds convert from armnn HardSwish to Acl HardSwish * adds EndToEnd tests for Ref, Cl and Neon Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: If997dad783ff45d7f061254e7e30bb69d4d4d564
2020-03-18IVGCVSW-4444 Adding Elu end to end testJan Eilers
* implemented activation layer end to end test * adds support for different tolerances in layer tests * added tests for Elu (Ref, Cl, Neon) Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: I81e28cfb4456e815bae2fb31f5c345134ff2432f
2020-03-13IVGCVSW-4531 Fix for failing strided slice NNT/VTS tests on Android RDavid Monahan
Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: I7f6932f0d21b5678ab9822b0fc69f589bbbb07e5
2020-03-10IVGCVSW-4482 Remove boost::ignore_unusedJan Eilers
!referencetests:229377 Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: Ia9b360b4a057fe7bbce5b268092627c09a0dba82
2020-03-05IVGCVSW-4539 Add missing Activation Unit Test to CL and NeonTeresa Charlin
*Square, Tanh, SoftReLu, LeakyReLu, Abs, ReLU Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: Id7beed0b6770177722bf0f93957706620df81b0d
2020-03-02IVGCVSW-4375 Add support for TransposeMike Kelly
* Added TransposeLayer * Added CL, Neon and Ref Workloads * Added Transpose utilities * Added Serializer and Deserializer support * Added Quantizer support Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: I04c755ba7cb5b1edf72b3c9f3c0314878032e3c7
2020-02-28IVGCVSW-4439: Adding Elu support to ActivationDavid Monahan
* Added CpuRef implementation * Added Unit Tests * Added Quantizer Test * Enabled Tests for Neon and CL backends on fp32 only * Added to Serializer Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: Ic23e1797dbc9352b40678c389d7fe2b836b582ea
2020-02-14IVGCVSW-4420 Failing Unit Test Cl: Quantize layerKeith Davis
* Fix bug with missing ValidateInputsOutputs in Cl Workload * Renamed data type tests to be more specific * Future proofing Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: I157acc318e40d727fcfb3f36f7f577fc87472f3d
2020-02-12Fix legacy ClTuner APIDerek Lamberti
Change-Id: Ib96446c753f7b794f5dc08cb9ff59888987cdf80 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2020-02-10Clean up header inclusion in CL workloads.Matthew Bentham
Remove usage of CLFunctions.h and replace with specific header for each function. Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com> Change-Id: I255a843b36a5dd8cf90a52786282192b8fe04f83
2020-02-07MLCE-139: add capability to align corners for bilinear resizeSang-Hoon Park
* Add parsing of the related parameter to TfLiteParser * Update ResizeDescriptor to store the additional parameter * Update NEON/CL workload to pass the additional parameter. * Update Reference workload to pass and handle the additional parameter. !ComputeLibrary:2538 !ComputeLibrary:2569 !armnn:2612 Signed-off-by: Sang-Hoon Park <sang-hoon.park@arm.com> Change-Id: Id149e1c24c2abed7e9dd81939acf54dfabfcdfd2
2020-02-07IVGCVSW-4317 Implement the Profiling Context InitialisationColm Donelan
* Call CreateBackendProfilingContext on each backend from Runtime passing an instance of the BackendProfiling interface. * Modify the signature of CreateBackendProfilingContext to remove const and return a shared_ptr to BackendProfilingContext * Add concrete BackendProfiling class. * Store BackendProfilingContexts in Profiling service. Signed-off-by: Colm Donelan <Colm.Donelan@arm.com> Change-Id: I975eaa2093ae91fa623835f65f9e5b25eb65117a
2020-02-05IVGCVSW-4389 Enable ClTuner in ClContextControlDerek Lamberti
Change-Id: If169736c4523a92f9aa10eac13e320eb41088624 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2020-02-03IVGCVSW-4334 Wire Signed Quantized 8 bit type into ACLKeith Davis
* Add QSymmS8 LayerSupport tests for all backends * Update BatchNormalization IsLayerSupport Bias' QSymmS8 case Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: Ib66befe11f9df5956869eb80699fc415a4d3fa16
2020-01-31IVGCVSW-4390 Refactor QUANTIZE to make use of Decoder/Encoder typesKeith Davis
* Add no-ops for CL/NEON Uint8 * Refactor Quantize workload to Decoder/Encoder types Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: I80b09de528299b925e2ac38acd9a5019b8d3e4ac
2020-01-29IVGCVSW-4149 Enable quantisation multiplier > 1 in all convolutionsRyan OShea
Signed-off-by: Ryan OShea <Ryan.OShea2@arm.com> Change-Id: I9652844a868ce8e05c0433c051e7079cf203c422
2020-01-29IVGCVSW-4316 First draft of IBackendProfiling and IBackendProfilingContextColm Donelan
* Introduce two new backend profiling interfaces IBackendProfiling and IBackendProfilingContext. * Add a mechanism to pull a context from a backend through IBackendInternal * Update CL, Neon and Ref backends to return an empty profiling backend. Signed-off-by: Colm Donelan <Colm.Donelan@arm.com> Change-Id: I6e7438fcb126ad7a073a226862dc44836c9998b7
2020-01-29IVGCVSW-4152 Remove check for QAsymm8 in ArgMinMax CL layer supportRyan OShea
* Added ClLayerTests * Added ClEndToEndTests Signed-off-by: Ryan OShea <ryaosh02@e121865.galway.arm.com> Change-Id: I1512ebae248dee9a0e6a8c4f52ecf99f677a22c6
2020-01-24IVGCVSW-4262 Use ACL Permute and Reshape Validate function in Neon and CLKevin May
!android-nn-driver:2642 Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: Ibabb73c0ae0df2e530a68398f75c76e6b80c0701
2020-01-24IVGCVSW-4370 Deprecate DataType::QuantizedSymm8PerAxisDerek Lamberti
!android-nn-driver:2622 Change-Id: If99d3eff71ff66ba28af1e5af248299fe04511b9 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2020-01-23IVGCVSW-4259 Add frontend and reference workload for UnaryOperationLayerjosh minor
* Added new layer named ElementwiseUnary * Deprecated existing Abs/Rsqrt layer functions * Updated existing Abs/Rsqrt test infrastructure to use new layer * Added boilerplate for new Exp,Neg,Sqrt elemwise op layers * AbsQuantize test removed pending future commit * Serialization support added !android-nn-driver:2550 Change-Id: Ic595c645925e17b45db568187fd05646daf2e87f Signed-off-by: josh minor <josh.minor@arm.com>
2020-01-20Remove use of ArmNN.hpp where it is unnecessary.Matthew Bentham
Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com> Change-Id: I6c90eab1c6bad76d5c7b3bf094998fa4b454bcd1
2020-01-13Rename quantized data types to remove ambiguity for signed/unsigned payloadsDerek Lamberti
!android-nn-driver:2572 Change-Id: I8fe52ceb09987b3d05c539409510f535165455cc Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2020-01-07IVGCVSW-4246 Enable -Wextra by defaultDerek Lamberti
!referencetests:218340 Change-Id: If24a604310d0363b1f09b406e4d53ebfeb106aad Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2020-01-02IVGCVSW-4246 Clean build of backends with -WextraDerek Lamberti
Change-Id: I9e8d5576b3ec04c871785d5f2f9545bf1136e59b Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-12-31IVGCVSW-4246 Clean build Layers with -WextraDerek Lamberti
Change-Id: I649cd2304fb0040164763d31a12fc77c6c3bed87 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-12-19IVGCVSW-4295 Disable mixed precision in ClPooling2dWorkloadjaneil01
* google provided a patch so mixed precision can be removed !devenv:217181 Signed-off-by: janeil01 <jan.eilers@arm.com> Change-Id: I13630f465e51c629a85ca4e1ac504feeeec39aaa
2019-12-09IVGCVSW-4157 Pass custom options directly to backendsDerek Lamberti
Change-Id: I98cfb913dbd00cb94bdb5dbe82753ca147f7f671 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-12-09IVGCVSW-4210 Create a public API for the common backend filesMatteo Martincigh
* Create a public API for the common backend files * Move OutputHandler to armnn internal * Remove unused headers Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com> Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I3e86d908b021e3561befa9d45158d87d2cbb18c0
2019-12-05Replace boost logging with simple loggerDerek Lamberti
!referencetests:214319 * Reduces arm nn binary size ~15% * Also fixed test logging black hole issues Change-Id: Iba27db304d9a8088fa46aeb0b52225d93bb56bc8 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-11-29IVGCVSW-4070 Implement "send post-optimized network structure"Narumol Prangnawarat
* Send post-optimisation network structure if profiling service is enabled * Refactor TimelineUtilityMethods * Fix RecordEvent to link eventGuid with eventClassGuid * Add common types and guid to LabelsAndEventClasses * Add CreateRelationship to TimelineUtilityMethods * Add CreateTypedEntity to TimelineUtilityMethods * Add MarkEntityWithType to TimelineUtilityMethods * Move VerifyTimeline functions to ProfilingTestUtils * Post-optimisation network structure unit tests to Ref, Cl, Neon Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I0194f2037c236450c912f4c3cb11e46b80c0f512
2019-11-29IVGCVSW-3860 Per-channel QSymm8 support of DepthwiseConvolution2d in ClTeresa Charlin
*Add the call to ReorderWeightChannelsForAcl for QuantizedSymm8PerAxis weights Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: I0d2e4c8328753ad15858130945b4fbb193943dfa
2019-11-29IVGCVSW-4209 Create a public API for the ArmNN UtilsMatteo Martincigh
* Moved the relevant armnnUtils headers to the new location: include/armnnUtils * Update the header usage throughout the source code !android-nn-driver:2387 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com> Change-Id: I2ba15cebcacafad2b5a1a7b9c3312ffc585e09d6
2019-11-28MLCE-115 Remove redundant error checking in CL backendMatthew Bentham
This stuff is handled in CLPerumuteLayer::validate now Change-Id: I552e7c0bbd1557d6b5e217c1e96aaeb2377accbd Signed-off-by: Matthew Bentham <Matthew.Bentham@arm.com>
2019-11-27IVGCVSW-4148 Extend reporting of quant multiplier > 1 as unsupported on ACL ↵Aron Virginas-Tar
to per-axis case Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I66a8360b6d86e95325dee58927dcbe62ccf6ad58
2019-11-27IVGCVSW-3859 Per-channel QSymm8 support of Convolution2d in ClKeith Davis
Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: Ie43f20e6fb2f9b4a1e9e9eb561fcf7b5d6a01806
2019-11-27IVGCVSW-3728 Add CL workload for SliceAron Virginas-Tar
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I2ed38744e1e8c839b369be8d44c0cffccfeb370e
2019-11-23IVGCVSW-4158 FP16 Mobilenet V1 and V2 30% regression on ArmNN on Mate20Sadik Armagan
* Enable FP16 mixed precision for Android Q Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I5ddb94b13385e1fec39e4407dffc8e4bc6b8d64a
2019-11-21IVGCVSW-4148 Report quant multiplier > 1 as unsupported for ACLJames Conroy
* This is a temporary measure that needs to be removed when quantization multiplier > 1.0f support has been added for NEON and CL. * Layers affected: convolution, depthwise convolution, dilated depthwise convolution and transpose convolution. Signed-off-by: James Conroy <james.conroy@arm.com> Change-Id: Ief1aec2ff0eedf8250f6a8675288e1c343dcfce4