From bb446e576e120512d5752a5d6dc1ddc636f563ba Mon Sep 17 00:00:00 2001 From: Jan Eilers Date: Thu, 2 Apr 2020 13:56:54 +0100 Subject: IVGCVSW-4483 Remove boost::polymorphic_downcast * exchange boost::polymorphic_downcast with armnn::PolymorphicDowncast * remove unnecessary includes of boost::polymorphic_downcast Signed-off-by: Jan Eilers Change-Id: Ie603fb82860fe05fee547dc78073230cc62b2e1f --- src/backends/cl/test/ClCreateWorkloadTests.cpp | 114 ++++++++++++------------- 1 file changed, 57 insertions(+), 57 deletions(-) (limited to 'src/backends/cl/test') diff --git a/src/backends/cl/test/ClCreateWorkloadTests.cpp b/src/backends/cl/test/ClCreateWorkloadTests.cpp index 92e771760f..b09b26f9b3 100644 --- a/src/backends/cl/test/ClCreateWorkloadTests.cpp +++ b/src/backends/cl/test/ClCreateWorkloadTests.cpp @@ -6,6 +6,7 @@ #include "ClContextControlFixture.hpp" #include "ClWorkloadFactoryHelper.hpp" +#include #include #include @@ -35,8 +36,8 @@ static void ClCreateActivationWorkloadTest() // Checks that inputs/outputs are as we expect them (see definition of CreateActivationWorkloadTest). ActivationQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST(CompareIClTensorHandleShape(inputHandle, {1, 1})); BOOST_TEST(CompareIClTensorHandleShape(outputHandle, {1, 1})); @@ -66,9 +67,9 @@ static void ClCreateElementwiseWorkloadTest() // Checks that inputs/outputs are as we expect them (see definition of CreateElementwiseWorkloadTest). DescriptorType queueDescriptor = workload->GetData(); - auto inputHandle1 = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto inputHandle2 = boost::polymorphic_downcast(queueDescriptor.m_Inputs[1]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle1 = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto inputHandle2 = PolymorphicDowncast(queueDescriptor.m_Inputs[1]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST(CompareIClTensorHandleShape(inputHandle1, {2, 3})); BOOST_TEST(CompareIClTensorHandleShape(inputHandle2, {2, 3})); BOOST_TEST(CompareIClTensorHandleShape(outputHandle, {2, 3})); @@ -159,8 +160,8 @@ static void ClCreateElementwiseUnaryWorkloadTest(armnn::UnaryOperation op) DescriptorType queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST(CompareIClTensorHandleShape(inputHandle, {2, 3})); BOOST_TEST(CompareIClTensorHandleShape(outputHandle, {2, 3})); @@ -184,8 +185,8 @@ static void ClCreateBatchNormalizationWorkloadTest(DataLayout dataLayout) // Checks that inputs/outputs are as we expect them (see definition of CreateBatchNormalizationWorkloadTest). BatchNormalizationQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); switch (dataLayout) { @@ -232,8 +233,8 @@ BOOST_AUTO_TEST_CASE(CreateConvertFp16ToFp32Workload) auto workload = CreateConvertFp16ToFp32WorkloadTest(factory, graph); ConvertFp16ToFp32QueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST(CompareIClTensorHandleShape(inputHandle, {1, 3, 2, 3})); BOOST_TEST(CompareIClTensorHandleShape(outputHandle, {1, 3, 2, 3})); @@ -250,8 +251,8 @@ BOOST_AUTO_TEST_CASE(CreateConvertFp32ToFp16Workload) auto workload = CreateConvertFp32ToFp16WorkloadTest(factory, graph); ConvertFp32ToFp16QueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST(CompareIClTensorHandleShape(inputHandle, {1, 3, 2, 3})); BOOST_TEST(CompareIClTensorHandleShape(outputHandle, {1, 3, 2, 3})); @@ -277,8 +278,8 @@ static void ClConvolution2dWorkloadTest(DataLayout dataLayout) // Checks that outputs and inputs are as we expect them (see definition of CreateConvolution2dWorkloadTest). Convolution2dQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST((inputHandle->GetShape() == inputShape)); BOOST_TEST((outputHandle->GetShape() == outputShape)); } @@ -315,8 +316,8 @@ static void ClDepthwiseConvolutionWorkloadTest(DataLayout dataLayout) // Checks that inputs/outputs are as we expect them (see definition of CreateDepthwiseConvolution2dWorkloadTest). DepthwiseConvolution2dQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); TensorShape inputShape = (dataLayout == DataLayout::NCHW) ? std::initializer_list({ 2, 2, 5, 5 }) : std::initializer_list({ 2, 5, 5, 2 }); @@ -343,8 +344,8 @@ static void ClDirectConvolution2dWorkloadTest() // Checks that outputs and inputs are as we expect them (see definition of CreateDirectConvolution2dWorkloadTest). Convolution2dQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST(CompareIClTensorHandleShape(inputHandle, {2, 3, 6, 6})); BOOST_TEST(CompareIClTensorHandleShape(outputHandle, {2, 2, 6, 6})); } @@ -376,8 +377,8 @@ static void ClCreateFullyConnectedWorkloadTest() // Checks that outputs and inputs are as we expect them (see definition of CreateFullyConnectedWorkloadTest). FullyConnectedQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST(CompareIClTensorHandleShape(inputHandle, {3, 1, 4, 5})); BOOST_TEST(CompareIClTensorHandleShape(outputHandle, {3, 7})); } @@ -404,8 +405,8 @@ static void ClNormalizationWorkloadTest(DataLayout dataLayout) // Checks that inputs/outputs are as we expect them (see definition of CreateNormalizationWorkloadTest). NormalizationQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); TensorShape inputShape = (dataLayout == DataLayout::NCHW) ? std::initializer_list({3, 5, 5, 1}) : std::initializer_list({3, 1, 5, 5}); @@ -452,8 +453,8 @@ static void ClPooling2dWorkloadTest(DataLayout dataLayout) // Check that inputs/outputs are as we expect them (see definition of CreatePooling2dWorkloadTest). Pooling2dQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST((inputHandle->GetShape() == inputShape)); BOOST_TEST((outputHandle->GetShape() == outputShape)); @@ -497,9 +498,9 @@ static void ClCreatePreluWorkloadTest(const armnn::TensorShape& inputShape, // Checks that outputs and inputs are as we expect them (see definition of CreatePreluWorkloadTest). PreluQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto alphaHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[1]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto alphaHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[1]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST((inputHandle->GetShape() == inputShape)); BOOST_TEST((alphaHandle->GetShape() == alphaShape)); @@ -532,8 +533,8 @@ static void ClCreateReshapeWorkloadTest() // Checks that outputs and inputs are as we expect them (see definition of CreateReshapeWorkloadTest). ReshapeQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST(CompareIClTensorHandleShape(inputHandle, {4, 1})); BOOST_TEST(CompareIClTensorHandleShape(outputHandle, {1, 4})); @@ -565,8 +566,8 @@ static void ClSoftmaxWorkloadTest() // Checks that inputs/outputs are as we expect them (see definition of ClSoftmaxFloatWorkload). SoftmaxQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST(CompareIClTensorHandleShape(inputHandle, {4, 1})); BOOST_TEST(CompareIClTensorHandleShape(outputHandle, {4, 1})); @@ -594,16 +595,16 @@ static void ClSplitterWorkloadTest() // Checks that outputs are as we expect them (see definition of CreateSplitterWorkloadTest). SplitterQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); BOOST_TEST(CompareIClTensorHandleShape(inputHandle, {5, 7, 7})); - auto outputHandle1 = boost::polymorphic_downcast(queueDescriptor.m_Outputs[1]); + auto outputHandle1 = PolymorphicDowncast(queueDescriptor.m_Outputs[1]); BOOST_TEST(CompareIClTensorHandleShape(outputHandle1, {2, 7, 7})); - auto outputHandle2 = boost::polymorphic_downcast(queueDescriptor.m_Outputs[2]); + auto outputHandle2 = PolymorphicDowncast(queueDescriptor.m_Outputs[2]); BOOST_TEST(CompareIClTensorHandleShape(outputHandle2, {2, 7, 7})); - auto outputHandle0 = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto outputHandle0 = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST(CompareIClTensorHandleShape(outputHandle0, {1, 7, 7})); } @@ -738,8 +739,8 @@ static void ClL2NormalizationWorkloadTest(DataLayout dataLayout) // Checks that inputs/outputs are as we expect them (see definition of CreateNormalizationWorkloadTest). L2NormalizationQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); TensorShape inputShape = (dataLayout == DataLayout::NCHW) ? std::initializer_list({ 5, 20, 50, 67 }) : std::initializer_list({ 5, 50, 67, 20 }); @@ -780,8 +781,8 @@ static void ClCreateLstmWorkloadTest() auto workload = CreateLstmWorkloadTest(factory, graph); LstmQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[1]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[1]); BOOST_TEST(CompareIClTensorHandleShape(inputHandle, { 2, 2 })); BOOST_TEST(CompareIClTensorHandleShape(outputHandle, { 2, 4 })); } @@ -802,8 +803,8 @@ static void ClResizeWorkloadTest(DataLayout dataLayout) auto queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); switch (dataLayout) { @@ -859,8 +860,8 @@ static void ClMeanWorkloadTest() // Checks that inputs/outputs are as we expect them (see definition of CreateMeanWorkloadTest). MeanQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); // The first dimension (batch size) in both input and output is singular thus it has been reduced by ACL. BOOST_TEST(CompareIClTensorHandleShape(inputHandle, { 1, 3, 7, 4 })); @@ -893,9 +894,9 @@ static void ClCreateConcatWorkloadTest(std::initializer_list outpu auto workload = CreateConcatWorkloadTest(factory, graph, outputShape, concatAxis); ConcatQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle0 = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto inputHandle1 = boost::polymorphic_downcast(queueDescriptor.m_Inputs[1]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle0 = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto inputHandle1 = PolymorphicDowncast(queueDescriptor.m_Inputs[1]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST(CompareIClTensorHandleShape(inputHandle0, { 2, 3, 2, 5 })); BOOST_TEST(CompareIClTensorHandleShape(inputHandle1, { 2, 3, 2, 5 })); @@ -942,8 +943,8 @@ static void ClSpaceToDepthWorkloadTest() auto workload = CreateSpaceToDepthWorkloadTest(factory, graph); SpaceToDepthQueueDescriptor queueDescriptor = workload->GetData(); - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[0]); - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST(CompareIClTensorHandleShape(inputHandle, { 1, 2, 2, 1 })); BOOST_TEST(CompareIClTensorHandleShape(outputHandle, { 1, 1, 1, 4 })); @@ -990,10 +991,10 @@ static void ClCreateStackWorkloadTest(const std::initializer_list& StackQueueDescriptor queueDescriptor = workload->GetData(); for (unsigned int i = 0; i < numInputs; ++i) { - auto inputHandle = boost::polymorphic_downcast(queueDescriptor.m_Inputs[i]); + auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[i]); BOOST_TEST(CompareIClTensorHandleShape(inputHandle, inputShape)); } - auto outputHandle = boost::polymorphic_downcast(queueDescriptor.m_Outputs[0]); + auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST(CompareIClTensorHandleShape(outputHandle, outputShape)); } @@ -1016,7 +1017,6 @@ template static void ClCreateQuantizedLstmWorkloadTest() { using namespace armnn::armcomputetensorutils; - using boost::polymorphic_downcast; Graph graph; ClWorkloadFactory factory = @@ -1026,23 +1026,23 @@ static void ClCreateQuantizedLstmWorkloadTest() QuantizedLstmQueueDescriptor queueDescriptor = workload->GetData(); - IAclTensorHandle* inputHandle = polymorphic_downcast(queueDescriptor.m_Inputs[0]); + IAclTensorHandle* inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); BOOST_TEST((inputHandle->GetShape() == TensorShape({2, 2}))); BOOST_TEST((inputHandle->GetDataType() == arm_compute::DataType::QASYMM8)); - IAclTensorHandle* cellStateInHandle = polymorphic_downcast(queueDescriptor.m_Inputs[1]); + IAclTensorHandle* cellStateInHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[1]); BOOST_TEST((cellStateInHandle->GetShape() == TensorShape({2, 4}))); BOOST_TEST((cellStateInHandle->GetDataType() == arm_compute::DataType::QSYMM16)); - IAclTensorHandle* outputStateInHandle = polymorphic_downcast(queueDescriptor.m_Inputs[2]); + IAclTensorHandle* outputStateInHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[2]); BOOST_TEST((outputStateInHandle->GetShape() == TensorShape({2, 4}))); BOOST_TEST((outputStateInHandle->GetDataType() == arm_compute::DataType::QASYMM8)); - IAclTensorHandle* cellStateOutHandle = polymorphic_downcast(queueDescriptor.m_Outputs[0]); + IAclTensorHandle* cellStateOutHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); BOOST_TEST((cellStateOutHandle->GetShape() == TensorShape({2, 4}))); BOOST_TEST((cellStateOutHandle->GetDataType() == arm_compute::DataType::QSYMM16)); - IAclTensorHandle* outputStateOutHandle = polymorphic_downcast(queueDescriptor.m_Outputs[1]); + IAclTensorHandle* outputStateOutHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[1]); BOOST_TEST((outputStateOutHandle->GetShape() == TensorShape({2, 4}))); BOOST_TEST((outputStateOutHandle->GetDataType() == arm_compute::DataType::QASYMM8)); } -- cgit v1.2.1