IVGCVSW-3307 TransposeConvolution: Don't call Map() before Execute()
Change-Id: I7a812eafc8c73d074049ba95189cbc17d276eee3
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
diff --git a/src/backends/reference/workloads/RefTransposeConvolution2dWorkload.cpp b/src/backends/reference/workloads/RefTransposeConvolution2dWorkload.cpp
index ec60030..2ab7604 100644
--- a/src/backends/reference/workloads/RefTransposeConvolution2dWorkload.cpp
+++ b/src/backends/reference/workloads/RefTransposeConvolution2dWorkload.cpp
@@ -21,7 +21,7 @@
m_Weights = std::make_unique<ScopedCpuTensorHandle>(*(descriptor.m_Weight));
const TensorInfo& weightsInfo = m_Weights->GetTensorInfo();
- m_WeightsDecoder = MakeDecoder<float>(weightsInfo, m_Weights.get()->Map(true));
+ m_WeightsDecoder = MakeDecoder<float>(weightsInfo, m_Weights->Map(true));
m_WeightsShape = weightsInfo.GetShape();
// set up biases decoder
@@ -29,7 +29,7 @@
{
m_Biases = std::make_unique<ScopedCpuTensorHandle>(*(descriptor.m_Bias));
const TensorInfo& biasesInfo = m_Biases->GetTensorInfo();
- m_BiasesDecoder = MakeDecoder<float>(biasesInfo, m_Biases.get()->Map(true));
+ m_BiasesDecoder = MakeDecoder<float>(biasesInfo, m_Biases->Map(true));
}
}
@@ -40,20 +40,23 @@
const TensorInfo& inputInfo = GetTensorInfo(input);
m_InputShape = inputInfo.GetShape();
- m_InputDecoder = MakeDecoder<float>(inputInfo, input->Map());
+ m_InputDecoder = MakeDecoder<float>(inputInfo);
// set up output encoder
ITensorHandle* output = m_Data.m_Outputs[0];
const TensorInfo& outputInfo = GetTensorInfo(output);
m_OutputShape = outputInfo.GetShape();
- m_OutputEncoder = MakeEncoder<float>(outputInfo, output->Map());
+ m_OutputEncoder = MakeEncoder<float>(outputInfo);
}
void RefTransposeConvolution2dWorkload::Execute() const
{
ARMNN_SCOPED_PROFILING_EVENT(Compute::CpuRef, "RefTransposeConvolution2dWorkload_Execute");
+ m_InputDecoder->Reset(m_Data.m_Inputs[0]->Map());
+ m_OutputEncoder->Reset(m_Data.m_Outputs[0]->Map());
+
TransposeConvolution2dImpl(m_Data.m_Parameters,
m_InputShape,
*m_InputDecoder,