diff options
author | SiCong Li <sicong.li@arm.com> | 2020-05-28 15:26:41 +0100 |
---|---|---|
committer | SiCong Li <sicong.li@arm.com> | 2020-06-11 09:15:33 +0000 |
commit | d004a7a707feab36e51f51cfc9eb2cb70729d5ad (patch) | |
tree | e6adef65a116e92c29303af479fab3ef5e1d8b97 /src/runtime/GLES_COMPUTE/functions | |
parent | eb727f4f7afaa0a5ac5c630277086d912b128e55 (diff) | |
download | ComputeLibrary-d004a7a707feab36e51f51cfc9eb2cb70729d5ad.tar.gz |
COMPMID-3510 [Interface change] Fix definition of "axis" in NESoftmaxLayer and CLSoftmaxLayer
* [Interface change] "axis" argument is renamed to "reduce_end_axis"
* Unify the meaning of "axis"(now "reduce_end_axis") to be the last axis
of the first n dimensions (inclusive)to reduce.
This way the meaning of reduce_end_axis stays the same for both
positive and negative values: it selects a dimension before which all
dimensions (including the selected dimension) are reduced.
Change-Id: I4ab03bd8360b1cd8cac4998df0b1571064a9d4ed
Signed-off-by: SiCong Li <sicong.li@arm.com>
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3278
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com>
Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/runtime/GLES_COMPUTE/functions')
-rw-r--r-- | src/runtime/GLES_COMPUTE/functions/GCSoftmaxLayer.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/runtime/GLES_COMPUTE/functions/GCSoftmaxLayer.cpp b/src/runtime/GLES_COMPUTE/functions/GCSoftmaxLayer.cpp index 0645ae7f8f..659d0eb57f 100644 --- a/src/runtime/GLES_COMPUTE/functions/GCSoftmaxLayer.cpp +++ b/src/runtime/GLES_COMPUTE/functions/GCSoftmaxLayer.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 ARM Limited. + * Copyright (c) 2017-2020 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -27,20 +27,20 @@ #include "arm_compute/core/Helpers.h" #include "arm_compute/runtime/GLES_COMPUTE/GCScheduler.h" -using namespace arm_compute; - +namespace arm_compute +{ GCSoftmaxLayer::GCSoftmaxLayer(std::shared_ptr<IMemoryManager> memory_manager) : _memory_group(std::move(memory_manager)), _max_kernel(), _shift_exp_sum_kernel(), _norm_kernel(), _max(), _sum(), _tmp() { } -void GCSoftmaxLayer::configure(const IGCTensor *input, IGCTensor *output, float beta, size_t axis) +void GCSoftmaxLayer::configure(const IGCTensor *input, IGCTensor *output, float beta, size_t reduce_end_axis) { - ARM_COMPUTE_UNUSED(beta, axis); + ARM_COMPUTE_UNUSED(beta, reduce_end_axis); ARM_COMPUTE_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(input, 1, DataType::F16, DataType::F32); ARM_COMPUTE_ERROR_ON(beta != 1.0f); - ARM_COMPUTE_ERROR_ON_MSG(axis != 1, "Axis must be 1 for GLES"); + ARM_COMPUTE_ERROR_ON_MSG(reduce_end_axis != 0, "Reduce_end_axis must be 0 for GLES"); // Create intermediate tensors shapes _tmp.allocator()->init(TensorInfo(input->info()->tensor_shape(), input->info()->num_channels(), input->info()->data_type())); @@ -77,3 +77,5 @@ void GCSoftmaxLayer::run() GCScheduler::get().memory_barrier(); GCScheduler::get().dispatch(_norm_kernel); } + +} // namespace arm_compute
\ No newline at end of file |