aboutsummaryrefslogtreecommitdiff
path: root/delegate/src/ElementwiseBinary.hpp
AgeCommit message (Collapse)Author
2023-02-21MLCE-753 Expand Tensorshape for relevent layers before verifying supportRyan OShea
Previously we were adding a reshape layer to "broadcast" tensors for elementwise operations. This broadcast was happening too late and was really just an expand dims. This was breaking the constant attributes of tensors and layer support of certain backends. * Remove addition of reshape layer when expanding dimensions * Replace broadcast function with expand dims to equal rank function * Fix some error status checks in various layers * Add new TensorUtil function that expands dims to a defined rank * Add unit tests to new TensorUtil function Signed-off-by: Ryan OShea <ryan.oshea3@arm.com> Change-Id: I31aca47c98075fef4f86864a15470f5faa55ab8d
2023-01-30IVGCVSW-7475 Fix uncaught warnings treated as errors in delegate release buildRyan OShea
* Add initialization of activation type in delegate layers with fused activations * Remove unused variable activationOutputInfo on layers with fused activations Signed-off-by: Ryan OShea <ryan.oshea3@arm.com> Change-Id: Ieb2ba00516a159639871c391069faf162cbb666d
2023-01-27IVGCVSW-7450 Fix delegate fallback when fused activation is unsupportedRyan OShea
In layers that support fused activations, we check for activation layer support after we already create the base layer. This breaks the fallback as we already added the base layer to the graph. * Creates ValidateFusedActivation shared function * Moves Activation validation higher in the VisitFunction Signed-off-by: Ryan OShea <ryan.oshea3@arm.com> Change-Id: I239af360923f695fc374ddeaeefa24c062eaf9e8
2022-12-12Optimize the calling of IsLayerSupported().Cathal Corbett
* Done as part of 22.11/23.02 innovation days. * IsLayerSupported() is called in model prepare (delegate, android-nn-driver and shim/support_library) and again in ArmNN once model otimization is performed. * From calling IsLayerSupported() the first time, we should know that the layers are supported and what backend they are supported on. * Solution is to set the BackendId of the IConnectableLayer when IsLayerSupported() is called the first time, * In the Optimize() function we then check if the backend is set. If so, we do not call IsLayerSupported() again. * In the case a layer that is supported gets optimized, then the BackendId of that layer get set to "Unknown" for the new optimized layer and IsLayerSupported() will get called on the newly optimized layer. * Includes bug fix IVGCVSW-7213 for Android Mean FP16 CpuAcc tests. Also related to bug IVGCVSW-7211. Signed-off-by: Cathal Corbett <cathal.corbett@arm.com> Change-Id: I7a7820d0cdb079ffb5a3a2e0c44e252f652df53b
2022-08-29IVGCVSW-7154 'Constant Tensors As Inputs'Sadik Armagan
* Fixed the issues about converting Conv2D and DepthwiseConv2d input issues * Read 1D input tensors that do not have shape specified Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I12f3d1c57a2afedac42c6e7b31e4b1fc689abeca
2022-02-11MLCE-754 'Improve operator support error/warning from Arm NN Delegate'Sadik Armagan
* Improved error reporting on armnn_delegate Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I1bd131fb56d64b32b1fafad0465256178720226c
2021-11-01IVGCVSW-6457 Add FLOOR_DIV Support to the TfLiteDelegateJim Flynn
Change-Id: Ia4bf42b1f3f86b947825dff8e538d2d4343effab Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2021-05-06IVGCVSW-5418 'ExecuteNetwork test for MobileBERT'Sadik Armagan
* Refactored the code for checking constant inputs. * Added a unit test for ADD operator with constant input. Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Ie7207e5a1ce77ea305552859de32a66e07c68a6f
2020-11-18IVGCVSW-5377 'Add ArmNN TfLite delegate to ExecuteNetwork'Sadik Armagan
* Assign correct input values for the model * Call the right Validate function for Mul and Sub operators * Return the correct data type for kTfLiteInt8 Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I6d23adf68d33d8be9a1fbf5d19dfe47939a6d3d6
2020-11-17IVGCVSW-5539 'Elementwise layers with const tensors are not connecting up'Sadik Armagan
* Added Constant Input support to ElementwiseBinary Layers Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I1d429fd7958fe2aa53f06c229a863243569c0d71
2020-11-10IVGCVSW-5379 'TfLiteDelegate: Implement the ElementWiseBinary operators'Sadik Armagan
* Enabled elementwise binary operators DIV, MAXIMUM, MINIMUM, MUL, SUB * Implemented unit tests for elementwise binary operators Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I196998d53201a6e8888bb203eb640530b8feeac9
2020-10-29IVGCVSW-5379 'TfLiteDelegate: Implement the ElementWiseBinary operators'Sadik Armagan
* Implemented ADD operator * Implemented FP32 unit tests for ADD operator Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Id7238749308855bd2b2118f4b6e60e765815c38f
2020-10-27IVGCVSW-5366 'Add a do nothing SubGraph class'Sadik Armagan
IVGCVSW-5373 'Implement the ABS operator in the Delegate' * Added a Switch statement into the VisitNode() function * Separated the Visit functions into the categorized source files * Implemented VisitElementwiseUnary() function * Added tests for ABS and SQRT Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: If9654d0a8d8ff7dcd6fb5cbe0dc312941772affb