diff options
Diffstat (limited to 'src/runtime')
-rw-r--r-- | src/runtime/GLES_COMPUTE/functions/GCSoftmaxLayer.cpp | 5 | ||||
-rw-r--r-- | src/runtime/NEON/functions/NESoftmaxLayer.cpp | 4 |
2 files changed, 6 insertions, 3 deletions
diff --git a/src/runtime/GLES_COMPUTE/functions/GCSoftmaxLayer.cpp b/src/runtime/GLES_COMPUTE/functions/GCSoftmaxLayer.cpp index 1db927c8ff..34464ff057 100644 --- a/src/runtime/GLES_COMPUTE/functions/GCSoftmaxLayer.cpp +++ b/src/runtime/GLES_COMPUTE/functions/GCSoftmaxLayer.cpp @@ -34,9 +34,12 @@ GCSoftmaxLayer::GCSoftmaxLayer() { } -void GCSoftmaxLayer::configure(const IGCTensor *input, IGCTensor *output) +void GCSoftmaxLayer::configure(const IGCTensor *input, IGCTensor *output, float beta) { + ARM_COMPUTE_UNUSED(beta); + ARM_COMPUTE_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(input, 1, DataType::F16, DataType::F32); + ARM_COMPUTE_ERROR_ON(beta != 1.0f); // Create intermediate tensors shapes _tmp.allocator()->init(TensorInfo(input->info()->tensor_shape(), input->info()->num_channels(), input->info()->data_type(), input->info()->fixed_point_position())); diff --git a/src/runtime/NEON/functions/NESoftmaxLayer.cpp b/src/runtime/NEON/functions/NESoftmaxLayer.cpp index cc5d4e91c3..84ecfdaf33 100644 --- a/src/runtime/NEON/functions/NESoftmaxLayer.cpp +++ b/src/runtime/NEON/functions/NESoftmaxLayer.cpp @@ -36,7 +36,7 @@ NESoftmaxLayer::NESoftmaxLayer(std::shared_ptr<IMemoryManager> memory_manager) { } -void NESoftmaxLayer::configure(ITensor *input, ITensor *output) +void NESoftmaxLayer::configure(ITensor *input, ITensor *output, float beta) { ARM_COMPUTE_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(input, 1, DataType::QS8, DataType::QS16, DataType::F16, DataType::F32); @@ -57,7 +57,7 @@ void NESoftmaxLayer::configure(ITensor *input, ITensor *output) // Configure Kernels _max_kernel.configure(input, &_max); - _shift_exp_sum_kernel.configure(input, &_max, &_tmp, &_sum); + _shift_exp_sum_kernel.configure(input, &_max, &_tmp, &_sum, beta); _norm_kernel.configure(&_tmp, &_sum, output); _fill_border_kernel.configure(input, _max_kernel.border_size(), BorderMode::REPLICATE); |