aboutsummaryrefslogtreecommitdiff
path: root/src/backends/neon/workloads/NeonArgMinMaxWorkload.cpp
diff options
context:
space:
mode:
authorJames Conroy <james.conroy@arm.com>2019-11-01 15:21:48 +0000
committerJames Conroy <james.conroy@arm.com>2019-11-12 18:51:20 +0000
commit663c1849b2c359e6d898a763fff2ef013b55a459 (patch)
treeb6212f72e8ca4175d5f0a93210220807460cb727 /src/backends/neon/workloads/NeonArgMinMaxWorkload.cpp
parentd8df0260ced49a2796ff70e96284cf00eb316bcc (diff)
downloadarmnn-663c1849b2c359e6d898a763fff2ef013b55a459.tar.gz
IVGCVSW-4051 Update ACL pin to 94e0cf960ea6116eb57fa88d9b951f859b52c602
* Add is_initalised() check to CLScheduler in ClContextControl. * Now use CLDepthwiseConvolutionLayer instead of CLDepthwiseConvolutionLayer3x3. * Now use NEDepthwiseConvolutionLayer instead of NEDepthwiseConvolutionLayerOptimized. !android-nn-driver:2212 Signed-off-by: James Conroy <james.conroy@arm.com> Change-Id: I509af65315a4322dc820a5cc1bbd36ed6999b4a7
Diffstat (limited to 'src/backends/neon/workloads/NeonArgMinMaxWorkload.cpp')
-rw-r--r--src/backends/neon/workloads/NeonArgMinMaxWorkload.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/backends/neon/workloads/NeonArgMinMaxWorkload.cpp b/src/backends/neon/workloads/NeonArgMinMaxWorkload.cpp
index e8d537f2ef..4b43052365 100644
--- a/src/backends/neon/workloads/NeonArgMinMaxWorkload.cpp
+++ b/src/backends/neon/workloads/NeonArgMinMaxWorkload.cpp
@@ -59,20 +59,24 @@ NeonArgMinMaxWorkload::NeonArgMinMaxWorkload(const ArgMinMaxQueueDescriptor& des
auto unsignedAxis = armnnUtils::GetUnsignedAxis(numDims, m_Data.m_Parameters.m_Axis);
int aclAxis = boost::numeric_cast<int>(CalcAclAxis(numDims, unsignedAxis));
+ auto layer = std::make_unique<arm_compute::NEArgMinMaxLayer>();
+
if (m_Data.m_Parameters.m_Function == ArgMinMaxFunction::Max)
{
- m_ArgMinMaxLayer.configure(&input, aclAxis, &output, arm_compute::ReductionOperation::ARG_IDX_MAX);
+ layer->configure(&input, aclAxis, &output, arm_compute::ReductionOperation::ARG_IDX_MAX);
}
else
{
- m_ArgMinMaxLayer.configure(&input, aclAxis, &output, arm_compute::ReductionOperation::ARG_IDX_MIN);
+ layer->configure(&input, aclAxis, &output, arm_compute::ReductionOperation::ARG_IDX_MIN);
}
+
+ m_ArgMinMaxLayer.reset(layer.release());
}
void NeonArgMinMaxWorkload::Execute() const
{
ARMNN_SCOPED_PROFILING_EVENT_NEON("NeonArgMinMaxWorkload_Execute");
- m_ArgMinMaxLayer.run();
+ m_ArgMinMaxLayer->run();
}
} //namespace armnn