diff options
author | Georgios Pinitas <georgios.pinitas@arm.com> | 2017-06-28 18:29:47 +0100 |
---|---|---|
committer | Anthony Barbier <anthony.barbier@arm.com> | 2018-09-17 14:15:39 +0100 |
commit | 9247c92bd8c53be4d0c4ae931f51ca8f88e4150b (patch) | |
tree | 3d457a263c0aa6ddcf3d05a4a2323640c486aa36 /src/runtime/NEON | |
parent | 097967568f9363d06df3ac21403edcab57de39d7 (diff) | |
download | ComputeLibrary-9247c92bd8c53be4d0c4ae931f51ca8f88e4150b.tar.gz |
COMPMID-428: Port NESoftmaxLayer to 16-bit fixed point.
Change-Id: I65122950bab9124b9758c27096c0f458b77aeabb
Reviewed-on: http://mpd-gerrit.cambridge.arm.com/79365
Reviewed-by: Moritz Pflanzer <moritz.pflanzer@arm.com>
Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
Reviewed-by: Steven Niu <steven.niu@arm.com>
Diffstat (limited to 'src/runtime/NEON')
-rw-r--r-- | src/runtime/NEON/functions/NESoftmaxLayer.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/runtime/NEON/functions/NESoftmaxLayer.cpp b/src/runtime/NEON/functions/NESoftmaxLayer.cpp index ca81b95473..7dfa927981 100644 --- a/src/runtime/NEON/functions/NESoftmaxLayer.cpp +++ b/src/runtime/NEON/functions/NESoftmaxLayer.cpp @@ -38,7 +38,7 @@ NESoftmaxLayer::NESoftmaxLayer() void NESoftmaxLayer::configure(ITensor *input, ITensor *output) { - ARM_COMPUTE_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(input, 1, DataType::QS8, DataType::F32); + ARM_COMPUTE_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(input, 1, DataType::QS8, DataType::QS16, DataType::F32); // Create intermediate tensors shapes TensorInfo tensor_info_tmp(input->info()->tensor_shape(), input->info()->num_channels(), input->info()->data_type(), input->info()->fixed_point_position()); @@ -54,7 +54,7 @@ void NESoftmaxLayer::configure(ITensor *input, ITensor *output) _max_kernel.configure(input, &_max); _shift_exp_sum_kernel.configure(input, &_max, &_tmp, &_sum); _norm_kernel.configure(&_tmp, &_sum, output); - _fill_border_kernel.configure(input, _max_kernel.border_size(), BorderMode::CONSTANT, PixelValue(-FLT_MAX)); + _fill_border_kernel.configure(input, _max_kernel.border_size(), BorderMode::REPLICATE); // Allocate intermediate tensors _tmp.allocator()->allocate(); |