diff options
Diffstat (limited to 'src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp')
-rw-r--r-- | src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp | 58 |
1 files changed, 28 insertions, 30 deletions
diff --git a/src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp index 086f8757dd..a09e387b0e 100644 --- a/src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp +++ b/src/backends/backendsCommon/test/layerTests/PadTestImpl.cpp @@ -54,15 +54,11 @@ LayerTestResult<T, 2> Pad2dTestCommon( }, qScale, qOffset); - auto inputTensor = MakeTensor<T, 2>(inputTensorInfo, std::vector<T>(inputValues)); - - LayerTestResult<T, 2> result(outputTensorInfo); - result.outputExpected = MakeTensor<T, 2>(outputTensorInfo, std::vector<T>(expectedOutputValues)); + std::vector<T> actualOutput(outputTensorInfo.GetNumElements()); std::unique_ptr<armnn::ITensorHandle> inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); std::unique_ptr<armnn::ITensorHandle> outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); - armnn::PadQueueDescriptor descriptor; std::vector<std::pair<unsigned int, unsigned int>> padList; @@ -81,14 +77,17 @@ LayerTestResult<T, 2> Pad2dTestCommon( inputHandle->Allocate(); outputHandle->Allocate(); - CopyDataToITensorHandle(inputHandle.get(), &inputTensor[0][0]); + CopyDataToITensorHandle(inputHandle.get(), inputValues.data()); workload->PostAllocationConfigure(); workload->Execute(); - CopyDataFromITensorHandle(&result.output[0][0], outputHandle.get()); + CopyDataFromITensorHandle(actualOutput.data(), outputHandle.get()); - return result; + return LayerTestResult<T, 2>(actualOutput, + expectedOutputValues, + outputHandle->GetShape(), + outputTensorInfo.GetShape()); } template<armnn::DataType ArmnnType, typename T> @@ -140,15 +139,11 @@ LayerTestResult<T, 3> Pad3dTestCommon( }, qScale, qOffset); - auto inputTensor = MakeTensor<T, 3>(inputTensorInfo, std::vector<T>(inputValues)); - - LayerTestResult<T, 3> result(outputTensorInfo); - result.outputExpected = MakeTensor<T, 3>(outputTensorInfo, std::vector<T>(expectedOutputValues)); + std::vector<T> actualOutput(outputTensorInfo.GetNumElements()); std::unique_ptr<armnn::ITensorHandle> inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); std::unique_ptr<armnn::ITensorHandle> outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); - armnn::PadQueueDescriptor descriptor; std::vector<std::pair<unsigned int, unsigned int>> PadList; @@ -167,14 +162,17 @@ LayerTestResult<T, 3> Pad3dTestCommon( inputHandle->Allocate(); outputHandle->Allocate(); - CopyDataToITensorHandle(inputHandle.get(), &inputTensor[0][0][0]); + CopyDataToITensorHandle(inputHandle.get(), inputValues.data()); workload->PostAllocationConfigure(); workload->Execute(); - CopyDataFromITensorHandle(&result.output[0][0][0], outputHandle.get()); + CopyDataFromITensorHandle(actualOutput.data(), outputHandle.get()); - return result; + return LayerTestResult<T, 3>(actualOutput, + expectedOutputValues, + outputHandle->GetShape(), + outputTensorInfo.GetShape()); } template<armnn::DataType ArmnnType, typename T> @@ -380,10 +378,7 @@ LayerTestResult<T, 4> Pad4dTestCommon( }, qScale, qOffset); - auto inputTensor = MakeTensor<T, 4>(inputTensorInfo, std::vector<T>(inputValues)); - - LayerTestResult<T, 4> result(outputTensorInfo); - result.outputExpected = MakeTensor<T, 4>(outputTensorInfo, std::vector<T>(expectedOutputValues)); + std::vector<T> actualOutput(outputTensorInfo.GetNumElements()); std::unique_ptr<armnn::ITensorHandle> inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); std::unique_ptr<armnn::ITensorHandle> outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); @@ -407,14 +402,17 @@ LayerTestResult<T, 4> Pad4dTestCommon( inputHandle->Allocate(); outputHandle->Allocate(); - CopyDataToITensorHandle(inputHandle.get(), &inputTensor[0][0][0][0]); + CopyDataToITensorHandle(inputHandle.get(), inputValues.data()); workload->PostAllocationConfigure(); workload->Execute(); - CopyDataFromITensorHandle(&result.output[0][0][0][0], outputHandle.get()); + CopyDataFromITensorHandle(actualOutput.data(), outputHandle.get()); - return result; + return LayerTestResult<T, 4>(actualOutput, + expectedOutputValues, + outputHandle->GetShape(), + outputTensorInfo.GetShape()); } template<armnn::DataType ArmnnType, typename T> @@ -453,10 +451,7 @@ LayerTestResult<T, 2> PadQAsymmTestCommon( p, p, p, p, p, p, p }; - auto inputTensor = MakeTensor<T, 2>(inputTensorInfo, std::vector<T>(inputValues)); - - LayerTestResult<T, 2> result(outputTensorInfo); - result.outputExpected = MakeTensor<T, 2>(outputTensorInfo, std::vector<T>(expectedOutputValues)); + std::vector<T> actualOutput(outputTensorInfo.GetNumElements()); std::unique_ptr<armnn::ITensorHandle> inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); std::unique_ptr<armnn::ITensorHandle> outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); @@ -480,14 +475,17 @@ LayerTestResult<T, 2> PadQAsymmTestCommon( inputHandle->Allocate(); outputHandle->Allocate(); - CopyDataToITensorHandle(inputHandle.get(), &inputTensor[0][0]); + CopyDataToITensorHandle(inputHandle.get(), inputValues.data()); workload->PostAllocationConfigure(); workload->Execute(); - CopyDataFromITensorHandle(&result.output[0][0], outputHandle.get()); + CopyDataFromITensorHandle(actualOutput.data(), outputHandle.get()); - return result; + return LayerTestResult<T, 2>(actualOutput, + expectedOutputValues, + outputHandle->GetShape(), + outputTensorInfo.GetShape()); } // |