From 0beadb8234b03d86c300a9ed3234fa595ea41b17 Mon Sep 17 00:00:00 2001 From: morgolock Date: Thu, 19 Nov 2020 10:07:14 +0000 Subject: COMPMID-3984: Deprecate GLES functions. Change-Id: I6f58c56d24e12f5691aec2376ad8d4bed064473b Signed-off-by: morgolock Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/4163 Reviewed-by: SiCong Li Tested-by: Gian Marco Iodice --- .../GLES_COMPUTE/functions/GCAbsoluteDifference.h | 5 ++++- .../GLES_COMPUTE/functions/GCActivationLayer.h | 5 ++++- .../GLES_COMPUTE/functions/GCArithmeticAddition.h | 3 +++ .../functions/GCBatchNormalizationLayer.h | 4 +++- .../GLES_COMPUTE/functions/GCConcatenateLayer.h | 5 ++++- .../GLES_COMPUTE/functions/GCConvolutionLayer.h | 8 +++++++- .../functions/GCDepthwiseConvolutionLayer.h | 4 +++- .../functions/GCDirectConvolutionLayer.h | 5 ++++- .../GLES_COMPUTE/functions/GCDropoutLayer.h | 5 ++++- .../runtime/GLES_COMPUTE/functions/GCFillBorder.h | 8 ++++++-- .../GLES_COMPUTE/functions/GCFullyConnectedLayer.h | 8 +++++++- .../runtime/GLES_COMPUTE/functions/GCGEMM.h | 4 +++- .../GLES_COMPUTE/functions/GCGEMMInterleave4x4.h | 4 +++- .../GLES_COMPUTE/functions/GCGEMMTranspose1xW.h | 4 +++- .../GLES_COMPUTE/functions/GCNormalizationLayer.h | 5 ++++- .../functions/GCNormalizePlanarYUVLayer.h | 5 ++++- .../functions/GCPixelWiseMultiplication.h | 6 +++++- .../GLES_COMPUTE/functions/GCPoolingLayer.h | 3 +++ .../runtime/GLES_COMPUTE/functions/GCScale.h | 6 +++++- .../GLES_COMPUTE/functions/GCSoftmaxLayer.h | 3 +++ .../runtime/GLES_COMPUTE/functions/GCTensorShift.h | 5 ++++- .../runtime/GLES_COMPUTE/functions/GCTranspose.h | 4 +++- docs/00_introduction.dox | 24 ++++++++++++++++++++++ 23 files changed, 113 insertions(+), 20 deletions(-) diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCAbsoluteDifference.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCAbsoluteDifference.h index 481fb19201..bbba8acd7e 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCAbsoluteDifference.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCAbsoluteDifference.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -35,6 +35,9 @@ class ITensor; * * @note The tensor data types for the inputs must be U8. * @note The function calculates the absolute difference also when the 2 inputs have different tensor data types. + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCAbsoluteDifference : public IGCSimpleFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCActivationLayer.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCActivationLayer.h index 79c7c0cc12..b09afbb81d 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCActivationLayer.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCActivationLayer.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -35,6 +35,9 @@ class IGCTensor; /** Basic function to run @ref GCActivationLayerKernel * * @note The function simulates an activation layer with the specified activation function. + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCActivationLayer : public IGCSimpleFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCArithmeticAddition.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCArithmeticAddition.h index 15d957e3ce..9a7527dcd5 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCArithmeticAddition.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCArithmeticAddition.h @@ -35,6 +35,9 @@ class IGCTensor; * * @note The tensor data type for the inputs must be F16. * @note The function performs an arithmetic addition between two tensors. + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCArithmeticAddition : public IGCSimpleFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCBatchNormalizationLayer.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCBatchNormalizationLayer.h index d6bc6eec3d..75b4cdc628 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCBatchNormalizationLayer.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCBatchNormalizationLayer.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -38,6 +38,8 @@ class IGCTensor; * Batch normalization is calculated by: * @f[ out_i = \gamma * (\frac{in_i - \mu_{B}}{\sqrt{\sigma^2_{B} + \epsilon}}) + \beta \equiv BN_{\gamma,\beta}(in_i) @f] * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCBatchNormalizationLayer : public IFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCConcatenateLayer.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCConcatenateLayer.h index 9661b368a0..fe24c07f63 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCConcatenateLayer.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCConcatenateLayer.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 Arm Limited. + * Copyright (c) 2019-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -40,6 +40,9 @@ class IGCTensor; * * @note only axis z is supported * -# @ref GCDepthConcatenateLayerKernel + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCConcatenateLayer : public IFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCConvolutionLayer.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCConvolutionLayer.h index f80ffa2948..3cff9688eb 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCConvolutionLayer.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCConvolutionLayer.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -44,6 +44,9 @@ class IGCTensor; /** Function to reshape and transpose the weights. This function calls the following kernels: * -# @ref GCWeightsReshapeKernel + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCConvolutionLayerReshapeWeights : public IFunction { @@ -72,6 +75,9 @@ private: * -# @ref GCIm2ColKernel * -# @ref GCGEMMInterleave4x4Kernel * -# @ref GCCol2ImKernel + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCConvolutionLayer : public IFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCDepthwiseConvolutionLayer.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCDepthwiseConvolutionLayer.h index 3cf4d548d1..82fe368d7d 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCDepthwiseConvolutionLayer.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCDepthwiseConvolutionLayer.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -40,6 +40,8 @@ class IGCTensor; * -# @ref GCDepthwiseConvolutionLayer3x3Kernel * -# @ref GCFillBorderKernel (if pad_x or pad_y > 0) * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCDepthwiseConvolutionLayer3x3 : public IFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCDirectConvolutionLayer.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCDirectConvolutionLayer.h index c206ec4822..f834802db6 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCDirectConvolutionLayer.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCDirectConvolutionLayer.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -46,6 +46,9 @@ class IGCTensor; * * @note Supported kernel size: 1x1, 3x3, and 5x5 * @note This OpenGL ES implementation works with stride_x = 1 and 2 + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCDirectConvolutionLayer : public IFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCDropoutLayer.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCDropoutLayer.h index 79af623486..4d551f2692 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCDropoutLayer.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCDropoutLayer.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -34,6 +34,9 @@ class IGCTensor; /** Basic function to do dropout op. This function calls the following kernels: * * -# @ref GCDropoutLayerKernel + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCDropoutLayer : public IFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCFillBorder.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCFillBorder.h index 766e8114a0..1635db51e7 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCFillBorder.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCFillBorder.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -33,7 +33,11 @@ namespace arm_compute { class ITensor; -/** Basic function to run @ref GCFillBorderKernel */ +/** Basic function to run @ref GCFillBorderKernel + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * + */ class GCFillBorder : public IGCSimpleFunction { public: diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.h index a13c74a683..f839a7db39 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -40,6 +40,9 @@ namespace arm_compute * -# @ref GCTransposeKernel * * @note The fully connected layer accepts "weights" tensors only with 2 dimensions. + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCFullyConnectedLayerReshapeWeights : public IGCSimpleFunction { @@ -60,6 +63,9 @@ public: * -# @ref GCGEMMMatrixAccumulateBiasesKernel (if @p biases is not equal to nullptr) * * @note The fully connected layer accepts "weights" tensors only with 2 dimensions. + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCFullyConnectedLayer : public IFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCGEMM.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCGEMM.h index 9c1748bc63..653da4b981 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCGEMM.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCGEMM.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -44,6 +44,8 @@ class IGCTensor; * -# @ref GCGEMMMatrixMultiplyKernel * -# @ref GCGEMMMatrixAdditionKernel (if c != nullptr and beta != 0.0) * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCGEMM : public IFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCGEMMInterleave4x4.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCGEMMInterleave4x4.h index 67fc86d067..964c368316 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCGEMMInterleave4x4.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCGEMMInterleave4x4.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -34,6 +34,8 @@ class ITensor; * * -# @ref GCGEMMInterleave4x4Kernel * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCGEMMInterleave4x4 : public IGCSimpleFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCGEMMTranspose1xW.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCGEMMTranspose1xW.h index b3d6a28e0e..107590cf76 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCGEMMTranspose1xW.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCGEMMTranspose1xW.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -32,6 +32,8 @@ namespace arm_compute * * -# @ref GCGEMMTranspose1xWKernel * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCGEMMTranspose1xW : public IGCSimpleFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCNormalizationLayer.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCNormalizationLayer.h index 2936402562..f8ee39c362 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCNormalizationLayer.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCNormalizationLayer.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -44,6 +44,9 @@ class IGCTensor; * -# @ref GCPixelWiseMultiplicationKernel * -# @ref GCFillBorderKernel * -# @ref GCNormalizationLayerKernel + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCNormalizationLayer : public IFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCNormalizePlanarYUVLayer.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCNormalizePlanarYUVLayer.h index fd69ef7725..e097cb9291 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCNormalizePlanarYUVLayer.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCNormalizePlanarYUVLayer.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -36,6 +36,9 @@ class IGCTensor; /** Basic function to run @ref GCNormalizePlanarYUVLayerKernel * * @note The function simulates a NormalizePlanarYUV layer. + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCNormalizePlanarYUVLayer : public IFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCPixelWiseMultiplication.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCPixelWiseMultiplication.h index bbcc6630e6..e09ce374ff 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCPixelWiseMultiplication.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCPixelWiseMultiplication.h @@ -31,7 +31,11 @@ namespace arm_compute { class IGCTensor; -/** Basic function to run @ref GCPixelWiseMultiplicationKernel. */ +/** Basic function to run @ref GCPixelWiseMultiplicationKernel. + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * + */ class GCPixelWiseMultiplication : public IGCSimpleFunction { public: diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCPoolingLayer.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCPoolingLayer.h index d6a79b5bc1..dcb7e81b9b 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCPoolingLayer.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCPoolingLayer.h @@ -41,6 +41,9 @@ class IGCTensor; * * -# @ref GCFillBorderKernel (executed if padding size is different from zero) * -# @ref GCPoolingLayerKernel + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCPoolingLayer : public IFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCScale.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCScale.h index 5a610f255f..17cfa565a9 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCScale.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCScale.h @@ -33,7 +33,11 @@ namespace arm_compute { class IGCTensor; -/** Basic function to run @ref GCScaleKernel */ +/** Basic function to run @ref GCScaleKernel + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * + */ class GCScale : public IGCSimpleFunction { public: diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCSoftmaxLayer.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCSoftmaxLayer.h index 0279edf63d..083b07c57c 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCSoftmaxLayer.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCSoftmaxLayer.h @@ -42,6 +42,9 @@ class IGCTensor; * -# @ref GCLogits1DMaxKernel * -# @ref GCLogits1DShiftExpSumKernel * -# @ref GCLogits1DNormKernel + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCSoftmaxLayer : public IFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCTensorShift.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCTensorShift.h index 546f6d6e16..d25a322f4f 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCTensorShift.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCTensorShift.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -37,6 +37,9 @@ class IGCTensor; /** Basic function to execute shift function for tensor. This function applies to fix alignment issue on OpenGL ES: * * @note This alignment issue is introduced by limits of compute shader which requires 32/64/128bit alignment for data access on OpenGL ES + * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCTensorShift : public IGCSimpleFunction { diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCTranspose.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCTranspose.h index a37031bfee..84e303aa25 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCTranspose.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCTranspose.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 Arm Limited. + * Copyright (c) 2017-2020 Arm Limited. * * SPDX-License-Identifier: MIT * @@ -34,6 +34,8 @@ class IGCTensor; * * -# @ref GCTransposeKernel * + * @deprecated This function is deprecated and is intended to be removed in 21.05 release + * */ class GCTranspose : public IGCSimpleFunction { diff --git a/docs/00_introduction.dox b/docs/00_introduction.dox index 2ecb13fc40..6b341fb0f0 100644 --- a/docs/00_introduction.dox +++ b/docs/00_introduction.dox @@ -351,6 +351,30 @@ v20.11 Public major release - NEWarpAffineKernel - NEWarpPerspective - NEWarpPerspectiveKernel + - Deprecated GLES kernels / functions (If a kernel is used only by the function that is being deprecated, the kernel is deprecated together): + - GCAbsoluteDifference + - GCActivationLayer + - GCArithmeticAddition + - GCBatchNormalizationLayer + - GCConcatenateLayer + - GCConvolutionLayer + - GCDepthwiseConvolutionLayer + - GCDirectConvolutionLayer + - GCDropoutLayer + - GCFillBorder + - GCFullyConnectedLayer + - GCGEMM + - GCGEMMInterleave4x4 + - GCGEMMTranspose1xW + - GCNormalizationLayer + - GCNormalizePlanarYUVLayer + - GCPixelWiseMultiplication + - GCPoolingLayer + - GCScale + - GCSoftmaxLayer + - GCTensorShift + - GCTranspose + v20.08 Public major release - Various bug fixes. -- cgit v1.2.1