From c1f6b09cc22b6e2de3d9eb88aec1778d0308a2b3 Mon Sep 17 00:00:00 2001 From: Teresa Charlin Date: Mon, 11 May 2020 16:10:38 +0100 Subject: IVGCVSW-4753 Refactor CL Softmax workload generalizing for different datatype * Change ComputeSoftmaxAclAxis to work with int and uint axis Signed-off-by: Teresa Charlin Change-Id: Ibbfa9ec7e2f0416e6885673212a767419c871cca --- src/backends/cl/test/ClCreateWorkloadTests.cpp | 28 +++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) (limited to 'src/backends/cl/test/ClCreateWorkloadTests.cpp') diff --git a/src/backends/cl/test/ClCreateWorkloadTests.cpp b/src/backends/cl/test/ClCreateWorkloadTests.cpp index b09b26f9b3..b7522547d4 100644 --- a/src/backends/cl/test/ClCreateWorkloadTests.cpp +++ b/src/backends/cl/test/ClCreateWorkloadTests.cpp @@ -569,19 +569,41 @@ static void ClSoftmaxWorkloadTest() auto inputHandle = PolymorphicDowncast(queueDescriptor.m_Inputs[0]); auto outputHandle = PolymorphicDowncast(queueDescriptor.m_Outputs[0]); + armnn::TensorInfo tensorInfo({4, 1}, DataType); + if (DataType == armnn::DataType::QAsymmU8) + { + tensorInfo.SetQuantizationOffset(0); + tensorInfo.SetQuantizationScale(1.f / 256); + } + else if (DataType == armnn::DataType::QAsymmS8) + { + tensorInfo.SetQuantizationOffset(-128); + tensorInfo.SetQuantizationScale(1.f / 256); + } + BOOST_TEST(CompareIClTensorHandleShape(inputHandle, {4, 1})); BOOST_TEST(CompareIClTensorHandleShape(outputHandle, {4, 1})); } -BOOST_AUTO_TEST_CASE(CreateSoftmaxFloatWorkloadTest) +BOOST_AUTO_TEST_CASE(CreateSoftmaxFloat32WorkloadTest) { - ClSoftmaxWorkloadTest(); + ClSoftmaxWorkloadTest(); } BOOST_AUTO_TEST_CASE(CreateSoftmaxFloat16WorkloadTest) { - ClSoftmaxWorkloadTest(); + ClSoftmaxWorkloadTest(); +} + +BOOST_AUTO_TEST_CASE(CreateSoftmaxQAsymmU8Workload) +{ + ClSoftmaxWorkloadTest(); +} + +BOOST_AUTO_TEST_CASE(CreateSoftmaxQAsymmS8Workload) +{ + ClSoftmaxWorkloadTest(); } template -- cgit v1.2.1