diff options
author | Teresa Charlin <teresa.charlinreyes@arm.com> | 2023-03-30 13:56:34 +0100 |
---|---|---|
committer | Teresa Charlin <teresa.charlinreyes@arm.com> | 2023-05-08 18:18:39 +0100 |
commit | ee1497c400db10134ab540005e105f64bd0f486a (patch) | |
tree | 807a47a2854fe6f472f9af2c9ec4b65643912b80 /src/backends/cl/workloads/ClConvolution2dWorkload.cpp | |
parent | a3dc95ec2b0ac9e7f87dd32d03679a4b2a9b5d2a (diff) | |
download | armnn-ee1497c400db10134ab540005e105f64bd0f486a.tar.gz |
IVGCVSW-7454 Enable NonConstWeights in GpuAcc
* Set flag for constant weights and bias in ACL tensorInfo in ACl workloads
* Set flag for constant weights and bias in Unit Tests
* Add to dot file for FullyConnected layer the constantWeights flag
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I87e1fef516ce4a8a59245dfdf7d92c153418e1d6
Diffstat (limited to 'src/backends/cl/workloads/ClConvolution2dWorkload.cpp')
-rw-r--r-- | src/backends/cl/workloads/ClConvolution2dWorkload.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/backends/cl/workloads/ClConvolution2dWorkload.cpp b/src/backends/cl/workloads/ClConvolution2dWorkload.cpp index 1920f2d20b..d6a72e6488 100644 --- a/src/backends/cl/workloads/ClConvolution2dWorkload.cpp +++ b/src/backends/cl/workloads/ClConvolution2dWorkload.cpp @@ -1,5 +1,5 @@ // -// Copyright © 2017 Arm Ltd and Contributors. All rights reserved. +// Copyright © 2017, 2023 Arm Ltd and Contributors. All rights reserved. // SPDX-License-Identifier: MIT // @@ -88,9 +88,15 @@ ClConvolution2dWorkload::ClConvolution2dWorkload(const Convolution2dQueueDescrip arm_compute::ICLTensor& input = static_cast<IClTensorHandle*>(m_Data.m_Inputs[0])->GetTensor(); arm_compute::ICLTensor& output = static_cast<IClTensorHandle*>(m_Data.m_Outputs[0])->GetTensor(); arm_compute::ICLTensor& weights = static_cast<IClTensorHandle*>(m_Data.m_Inputs[1])->GetTensor(); + weights.info()->set_are_values_constant(info.m_InputTensorInfos[1].IsConstant()); + if (m_Data.m_Parameters.m_BiasEnabled) { arm_compute::ICLTensor& bias = static_cast<IClTensorHandle*>(m_Data.m_Inputs[2])->GetTensor(); + bias.info()->set_are_values_constant(info.m_InputTensorInfos[2].IsConstant()); + // We do not support dynamic bias + ARMNN_ASSERT(info.m_InputTensorInfos[2].IsConstant() == true); + m_BiasProxy = std::make_unique<ICLTensorProxy>(&bias); } |