ArmNN
 20.11
ClCreateWorkloadTests.cpp File Reference

Go to the source code of this file.

Functions

boost::test_tools::predicate_result CompareIClTensorHandleShape (IClTensorHandle *tensorHandle, std::initializer_list< unsigned int > expectedDimensions)
 
 BOOST_AUTO_TEST_CASE (CreateActivationFloatWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateActivationFloat16Workload)
 
 BOOST_AUTO_TEST_CASE (CreateAdditionFloatWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateAdditionFloat16Workload)
 
 BOOST_AUTO_TEST_CASE (CreateSubtractionFloatWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateSubtractionFloat16Workload)
 
 BOOST_AUTO_TEST_CASE (CreateMultiplicationFloatWorkloadTest)
 
 BOOST_AUTO_TEST_CASE (CreateMultiplicationFloat16WorkloadTest)
 
 BOOST_AUTO_TEST_CASE (CreateMultiplicationUint8WorkloadTest)
 
 BOOST_AUTO_TEST_CASE (CreateDivisionFloatWorkloadTest)
 
 BOOST_AUTO_TEST_CASE (CreateDivisionFloat16WorkloadTest)
 
 BOOST_AUTO_TEST_CASE (CreateRsqrtFloat32WorkloadTest)
 
 BOOST_AUTO_TEST_CASE (CreateBatchNormalizationFloatNchwWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateBatchNormalizationFloat16NchwWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateBatchNormalizationFloatNhwcWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateBatchNormalizationNhwcFloat16NhwcWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateConvertFp16ToFp32Workload)
 
 BOOST_AUTO_TEST_CASE (CreateConvertFp32ToFp16Workload)
 
 BOOST_AUTO_TEST_CASE (CreateConvolution2dFloatNchwWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateConvolution2dFloatNhwcWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateConvolution2dFloat16NchwWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateConvolution2dFloat16NhwcWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateConvolution2dFastMathEnabledWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateDepthwiseConvolutionFloat32NhwcWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateDirectConvolution2dFloatWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateDirectConvolution2dFloat16Workload)
 
 BOOST_AUTO_TEST_CASE (CreateDirectConvolution2dUint8Workload)
 
 BOOST_AUTO_TEST_CASE (CreateFullyConnectedFloatWorkloadTest)
 
 BOOST_AUTO_TEST_CASE (CreateFullyConnectedFloat16WorkloadTest)
 
 BOOST_AUTO_TEST_CASE (CreateNormalizationFloat32NchwWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateNormalizationFloat16NchwWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateNormalizationFloat32NhwcWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateNormalizationFloat16NhwcWorkload)
 
 BOOST_AUTO_TEST_CASE (CreatePooling2dFloatNchwWorkload)
 
 BOOST_AUTO_TEST_CASE (CreatePooling2dFloatNhwcWorkload)
 
 BOOST_AUTO_TEST_CASE (CreatePooling2dFloat16NchwWorkload)
 
 BOOST_AUTO_TEST_CASE (CreatePooling2dFloat16NhwcWorkload)
 
 BOOST_AUTO_TEST_CASE (CreatePreluFloat16Workload)
 
 BOOST_AUTO_TEST_CASE (CreatePreluFloatWorkload)
 
 BOOST_AUTO_TEST_CASE (CreatePreluUint8Workload)
 
 BOOST_AUTO_TEST_CASE (CreateReshapeFloatWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateReshapeFloat16Workload)
 
 BOOST_AUTO_TEST_CASE (CreateReshapeUint8Workload)
 
 BOOST_AUTO_TEST_CASE (CreateSoftmaxFloat32WorkloadTest)
 
 BOOST_AUTO_TEST_CASE (CreateSoftmaxFloat16WorkloadTest)
 
 BOOST_AUTO_TEST_CASE (CreateSoftmaxQAsymmU8Workload)
 
 BOOST_AUTO_TEST_CASE (CreateSoftmaxQAsymmS8Workload)
 
 BOOST_AUTO_TEST_CASE (CreateSplitterFloatWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateSplitterFloat16Workload)
 
 BOOST_AUTO_TEST_CASE (CreateSplitterConcatFloatWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateSplitterConcatFloat16Workload)
 
 BOOST_AUTO_TEST_CASE (CreateSingleOutputMultipleInputs)
 
 BOOST_AUTO_TEST_CASE (CreateL2NormalizationFloatNchwWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateL2NormalizationFloatNhwcWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateL2NormalizationFloat16NchwWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateL2NormalizationFloat16NhwcWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateLogSoftmaxFloat32WorkloadTest)
 
 BOOST_AUTO_TEST_CASE (CreateLSTMWorkloadFloatWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateResizeFloat32NchwWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateResizeFloat16NchwWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateResizeUint8NchwWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateResizeFloat32NhwcWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateResizeFloat16NhwcWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateResizeUint8NhwcWorkload)
 
 BOOST_AUTO_TEST_CASE (CreateMeanFloat32Workload)
 
 BOOST_AUTO_TEST_CASE (CreateMeanFloat16Workload)
 
 BOOST_AUTO_TEST_CASE (CreateMeanUint8Workload)
 
 BOOST_AUTO_TEST_CASE (CreateConcatDim0Float32Workload)
 
 BOOST_AUTO_TEST_CASE (CreateConcatDim1Float32Workload)
 
 BOOST_AUTO_TEST_CASE (CreateConcatDim3Float32Workload)
 
 BOOST_AUTO_TEST_CASE (CreateConcatDim0Uint8Workload)
 
 BOOST_AUTO_TEST_CASE (CreateConcatDim1Uint8Workload)
 
 BOOST_AUTO_TEST_CASE (CreateConcatDim3Uint8Workload)
 
 BOOST_AUTO_TEST_CASE (CreateSpaceToDepthFloat32Workload)
 
 BOOST_AUTO_TEST_CASE (CreateSpaceToDepthFloat16Workload)
 
 BOOST_AUTO_TEST_CASE (CreateSpaceToDepthQAsymm8Workload)
 
 BOOST_AUTO_TEST_CASE (CreateSpaceToDepthQSymm16Workload)
 
 BOOST_AUTO_TEST_CASE (CreateStackFloat32Workload)
 
 BOOST_AUTO_TEST_CASE (CreateStackFloat16Workload)
 
 BOOST_AUTO_TEST_CASE (CreateStackUint8Workload)
 
 BOOST_AUTO_TEST_CASE (CreateQLstmWorkloadTest)
 
 BOOST_AUTO_TEST_CASE (CreateQuantizedLstmWorkload)
 

Function Documentation

◆ BOOST_AUTO_TEST_CASE() [1/82]

BOOST_AUTO_TEST_CASE ( CreateActivationFloatWorkload  )

Definition at line 48 of file ClCreateWorkloadTests.cpp.

Referenced by BOOST_AUTO_TEST_CASE().

49 {
50  ClCreateActivationWorkloadTest<armnn::DataType::Float32>();
51 }

◆ BOOST_AUTO_TEST_CASE() [2/82]

BOOST_AUTO_TEST_CASE ( CreateActivationFloat16Workload  )

Definition at line 53 of file ClCreateWorkloadTests.cpp.

54 {
55  ClCreateActivationWorkloadTest<armnn::DataType::Float16>();
56 }

◆ BOOST_AUTO_TEST_CASE() [3/82]

BOOST_AUTO_TEST_CASE ( CreateAdditionFloatWorkload  )

Definition at line 80 of file ClCreateWorkloadTests.cpp.

◆ BOOST_AUTO_TEST_CASE() [4/82]

BOOST_AUTO_TEST_CASE ( CreateAdditionFloat16Workload  )

Definition at line 88 of file ClCreateWorkloadTests.cpp.

◆ BOOST_AUTO_TEST_CASE() [5/82]

BOOST_AUTO_TEST_CASE ( CreateSubtractionFloatWorkload  )

◆ BOOST_AUTO_TEST_CASE() [6/82]

BOOST_AUTO_TEST_CASE ( CreateSubtractionFloat16Workload  )

Definition at line 104 of file ClCreateWorkloadTests.cpp.

◆ BOOST_AUTO_TEST_CASE() [7/82]

BOOST_AUTO_TEST_CASE ( CreateMultiplicationFloatWorkloadTest  )

◆ BOOST_AUTO_TEST_CASE() [8/82]

BOOST_AUTO_TEST_CASE ( CreateMultiplicationFloat16WorkloadTest  )

◆ BOOST_AUTO_TEST_CASE() [9/82]

BOOST_AUTO_TEST_CASE ( CreateMultiplicationUint8WorkloadTest  )

◆ BOOST_AUTO_TEST_CASE() [10/82]

BOOST_AUTO_TEST_CASE ( CreateDivisionFloatWorkloadTest  )

Definition at line 136 of file ClCreateWorkloadTests.cpp.

◆ BOOST_AUTO_TEST_CASE() [11/82]

BOOST_AUTO_TEST_CASE ( CreateDivisionFloat16WorkloadTest  )

Definition at line 144 of file ClCreateWorkloadTests.cpp.

◆ BOOST_AUTO_TEST_CASE() [12/82]

BOOST_AUTO_TEST_CASE ( CreateRsqrtFloat32WorkloadTest  )

Definition at line 172 of file ClCreateWorkloadTests.cpp.

173 {
174  ClCreateElementwiseUnaryWorkloadTest<ClRsqrtWorkload, RsqrtQueueDescriptor, armnn::DataType::Float32>(
175  UnaryOperation::Rsqrt);
176 }

◆ BOOST_AUTO_TEST_CASE() [13/82]

BOOST_AUTO_TEST_CASE ( CreateBatchNormalizationFloatNchwWorkload  )

Definition at line 205 of file ClCreateWorkloadTests.cpp.

◆ BOOST_AUTO_TEST_CASE() [14/82]

BOOST_AUTO_TEST_CASE ( CreateBatchNormalizationFloat16NchwWorkload  )

Definition at line 211 of file ClCreateWorkloadTests.cpp.

◆ BOOST_AUTO_TEST_CASE() [15/82]

BOOST_AUTO_TEST_CASE ( CreateBatchNormalizationFloatNhwcWorkload  )

Definition at line 217 of file ClCreateWorkloadTests.cpp.

◆ BOOST_AUTO_TEST_CASE() [16/82]

BOOST_AUTO_TEST_CASE ( CreateBatchNormalizationNhwcFloat16NhwcWorkload  )

Definition at line 223 of file ClCreateWorkloadTests.cpp.

◆ BOOST_AUTO_TEST_CASE() [17/82]

BOOST_AUTO_TEST_CASE ( CreateConvertFp16ToFp32Workload  )

Definition at line 229 of file ClCreateWorkloadTests.cpp.

References CompareIClTensorHandleShape().

230 {
231  Graph graph;
232  ClWorkloadFactory factory =
233  ClWorkloadFactoryHelper::GetFactory(ClWorkloadFactoryHelper::GetMemoryManager());
234 
235  auto workload = CreateConvertFp16ToFp32WorkloadTest<ClConvertFp16ToFp32Workload>(factory, graph);
236 
237  ConvertFp16ToFp32QueueDescriptor queueDescriptor = workload->GetData();
238  auto inputHandle = PolymorphicDowncast<IClTensorHandle*>(queueDescriptor.m_Inputs[0]);
239  auto outputHandle = PolymorphicDowncast<IClTensorHandle*>(queueDescriptor.m_Outputs[0]);
240 
241  BOOST_TEST(CompareIClTensorHandleShape(inputHandle, {1, 3, 2, 3}));
242  BOOST_TEST(CompareIClTensorHandleShape(outputHandle, {1, 3, 2, 3}));
243  BOOST_TEST((inputHandle->GetTensor().info()->data_type() == arm_compute::DataType::F16));
244  BOOST_TEST((outputHandle->GetTensor().info()->data_type() == arm_compute::DataType::F32));
245 }
boost::test_tools::predicate_result CompareIClTensorHandleShape(IClTensorHandle *tensorHandle, std::initializer_list< unsigned int > expectedDimensions)

◆ BOOST_AUTO_TEST_CASE() [18/82]

BOOST_AUTO_TEST_CASE ( CreateConvertFp32ToFp16Workload  )

Definition at line 247 of file ClCreateWorkloadTests.cpp.

References CompareIClTensorHandleShape().

248 {
249  Graph graph;
250  ClWorkloadFactory factory =
251  ClWorkloadFactoryHelper::GetFactory(ClWorkloadFactoryHelper::GetMemoryManager());
252 
253  auto workload = CreateConvertFp32ToFp16WorkloadTest<ClConvertFp32ToFp16Workload>(factory, graph);
254 
255  ConvertFp32ToFp16QueueDescriptor queueDescriptor = workload->GetData();
256  auto inputHandle = PolymorphicDowncast<IClTensorHandle*>(queueDescriptor.m_Inputs[0]);
257  auto outputHandle = PolymorphicDowncast<IClTensorHandle*>(queueDescriptor.m_Outputs[0]);
258 
259  BOOST_TEST(CompareIClTensorHandleShape(inputHandle, {1, 3, 2, 3}));
260  BOOST_TEST(CompareIClTensorHandleShape(outputHandle, {1, 3, 2, 3}));
261  BOOST_TEST((inputHandle->GetTensor().info()->data_type() == arm_compute::DataType::F32));
262  BOOST_TEST((outputHandle->GetTensor().info()->data_type() == arm_compute::DataType::F16));
263 }
boost::test_tools::predicate_result CompareIClTensorHandleShape(IClTensorHandle *tensorHandle, std::initializer_list< unsigned int > expectedDimensions)

◆ BOOST_AUTO_TEST_CASE() [19/82]

BOOST_AUTO_TEST_CASE ( CreateConvolution2dFloatNchwWorkload  )

Definition at line 289 of file ClCreateWorkloadTests.cpp.

290 {
291  ClConvolution2dWorkloadTest<ClConvolution2dWorkload, armnn::DataType::Float32>(DataLayout::NCHW);
292 }

◆ BOOST_AUTO_TEST_CASE() [20/82]

BOOST_AUTO_TEST_CASE ( CreateConvolution2dFloatNhwcWorkload  )

Definition at line 294 of file ClCreateWorkloadTests.cpp.

295 {
296  ClConvolution2dWorkloadTest<ClConvolution2dWorkload, armnn::DataType::Float32>(DataLayout::NHWC);
297 }

◆ BOOST_AUTO_TEST_CASE() [21/82]

BOOST_AUTO_TEST_CASE ( CreateConvolution2dFloat16NchwWorkload  )

Definition at line 299 of file ClCreateWorkloadTests.cpp.

300 {
301  ClConvolution2dWorkloadTest<ClConvolution2dWorkload, armnn::DataType::Float16>(DataLayout::NCHW);
302 }

◆ BOOST_AUTO_TEST_CASE() [22/82]

BOOST_AUTO_TEST_CASE ( CreateConvolution2dFloat16NhwcWorkload  )

Definition at line 304 of file ClCreateWorkloadTests.cpp.

305 {
306  ClConvolution2dWorkloadTest<ClConvolution2dWorkload, armnn::DataType::Float16>(DataLayout::NHWC);
307 }

◆ BOOST_AUTO_TEST_CASE() [23/82]

BOOST_AUTO_TEST_CASE ( CreateConvolution2dFastMathEnabledWorkload  )

Definition at line 309 of file ClCreateWorkloadTests.cpp.

References ARMNN_ASSERT, and armnn::IgnoreUnused().

310 {
311  Graph graph;
312 
313  using ModelOptions = std::vector<BackendOptions>;
314  ModelOptions modelOptions = {};
315  BackendOptions gpuAcc("GpuAcc",
316  {
317  { "FastMathEnabled", true }
318  });
319  modelOptions.push_back(gpuAcc);
320 
321  ClWorkloadFactory factory =
322  ClWorkloadFactoryHelper::GetFactory(ClWorkloadFactoryHelper::GetMemoryManager(), modelOptions);
323 
324  auto workload =
325  CreateConvolution2dWorkloadFastMathTest<ClConvolution2dWorkload, armnn::DataType::Float32>(factory,
326  graph,
327  DataLayout::NCHW,
328  modelOptions);
329 
330  ARMNN_ASSERT(workload != nullptr);
331  auto conv2dWorkload = PolymorphicDowncast<ClConvolution2dWorkload*>(workload.get());
332  IgnoreUnused(conv2dWorkload);
333  ARMNN_ASSERT(conv2dWorkload != nullptr);
334  ARMNN_ASSERT(conv2dWorkload->GetConvolutionMethod() == arm_compute::ConvolutionMethod::WINOGRAD);
335 }
std::vector< BackendOptions > ModelOptions
void IgnoreUnused(Ts &&...)
#define ARMNN_ASSERT(COND)
Definition: Assert.hpp:14
Struct for the users to pass backend specific options.

◆ BOOST_AUTO_TEST_CASE() [24/82]

BOOST_AUTO_TEST_CASE ( CreateDepthwiseConvolutionFloat32NhwcWorkload  )

Definition at line 361 of file ClCreateWorkloadTests.cpp.

362 {
363  ClDepthwiseConvolutionWorkloadTest<ClDepthwiseConvolutionWorkload, DataType::Float32>(DataLayout::NHWC);
364 }

◆ BOOST_AUTO_TEST_CASE() [25/82]

BOOST_AUTO_TEST_CASE ( CreateDirectConvolution2dFloatWorkload  )

Definition at line 383 of file ClCreateWorkloadTests.cpp.

384 {
385  ClDirectConvolution2dWorkloadTest<ClConvolution2dWorkload, armnn::DataType::Float32>();
386 }

◆ BOOST_AUTO_TEST_CASE() [26/82]

BOOST_AUTO_TEST_CASE ( CreateDirectConvolution2dFloat16Workload  )

Definition at line 388 of file ClCreateWorkloadTests.cpp.

389 {
390  ClDirectConvolution2dWorkloadTest<ClConvolution2dWorkload, armnn::DataType::Float16>();
391 }

◆ BOOST_AUTO_TEST_CASE() [27/82]

BOOST_AUTO_TEST_CASE ( CreateDirectConvolution2dUint8Workload  )

Definition at line 393 of file ClCreateWorkloadTests.cpp.

394 {
395  ClDirectConvolution2dWorkloadTest<ClConvolution2dWorkload, armnn::DataType::QAsymmU8>();
396 }

◆ BOOST_AUTO_TEST_CASE() [28/82]

BOOST_AUTO_TEST_CASE ( CreateFullyConnectedFloatWorkloadTest  )

Definition at line 417 of file ClCreateWorkloadTests.cpp.

418 {
419  ClCreateFullyConnectedWorkloadTest<ClFullyConnectedWorkload, armnn::DataType::Float32>();
420 }

◆ BOOST_AUTO_TEST_CASE() [29/82]

BOOST_AUTO_TEST_CASE ( CreateFullyConnectedFloat16WorkloadTest  )

Definition at line 422 of file ClCreateWorkloadTests.cpp.

423 {
424  ClCreateFullyConnectedWorkloadTest<ClFullyConnectedWorkload, armnn::DataType::Float16>();
425 }

◆ BOOST_AUTO_TEST_CASE() [30/82]

BOOST_AUTO_TEST_CASE ( CreateNormalizationFloat32NchwWorkload  )

Definition at line 450 of file ClCreateWorkloadTests.cpp.

451 {
452  ClNormalizationWorkloadTest<ClNormalizationFloatWorkload, armnn::DataType::Float32>(DataLayout::NCHW);
453 }

◆ BOOST_AUTO_TEST_CASE() [31/82]

BOOST_AUTO_TEST_CASE ( CreateNormalizationFloat16NchwWorkload  )

Definition at line 455 of file ClCreateWorkloadTests.cpp.

456 {
457  ClNormalizationWorkloadTest<ClNormalizationFloatWorkload, armnn::DataType::Float16>(DataLayout::NCHW);
458 }

◆ BOOST_AUTO_TEST_CASE() [32/82]

BOOST_AUTO_TEST_CASE ( CreateNormalizationFloat32NhwcWorkload  )

Definition at line 460 of file ClCreateWorkloadTests.cpp.

461 {
462  ClNormalizationWorkloadTest<ClNormalizationFloatWorkload, armnn::DataType::Float32>(DataLayout::NHWC);
463 }

◆ BOOST_AUTO_TEST_CASE() [33/82]

BOOST_AUTO_TEST_CASE ( CreateNormalizationFloat16NhwcWorkload  )

Definition at line 465 of file ClCreateWorkloadTests.cpp.

466 {
467  ClNormalizationWorkloadTest<ClNormalizationFloatWorkload, armnn::DataType::Float16>(DataLayout::NHWC);
468 }

◆ BOOST_AUTO_TEST_CASE() [34/82]

BOOST_AUTO_TEST_CASE ( CreatePooling2dFloatNchwWorkload  )

Definition at line 493 of file ClCreateWorkloadTests.cpp.

494 {
495  ClPooling2dWorkloadTest<armnn::DataType::Float32>(DataLayout::NCHW);
496 }

◆ BOOST_AUTO_TEST_CASE() [35/82]

BOOST_AUTO_TEST_CASE ( CreatePooling2dFloatNhwcWorkload  )

Definition at line 498 of file ClCreateWorkloadTests.cpp.

499 {
500  ClPooling2dWorkloadTest<armnn::DataType::Float32>(DataLayout::NHWC);
501 }

◆ BOOST_AUTO_TEST_CASE() [36/82]

BOOST_AUTO_TEST_CASE ( CreatePooling2dFloat16NchwWorkload  )

Definition at line 503 of file ClCreateWorkloadTests.cpp.

504 {
505  ClPooling2dWorkloadTest<armnn::DataType::Float16>(DataLayout::NCHW);
506 }

◆ BOOST_AUTO_TEST_CASE() [37/82]

BOOST_AUTO_TEST_CASE ( CreatePooling2dFloat16NhwcWorkload  )

Definition at line 508 of file ClCreateWorkloadTests.cpp.

509 {
510  ClPooling2dWorkloadTest<armnn::DataType::Float16>(DataLayout::NHWC);
511 }

◆ BOOST_AUTO_TEST_CASE() [38/82]

BOOST_AUTO_TEST_CASE ( CreatePreluFloat16Workload  )

Definition at line 540 of file ClCreateWorkloadTests.cpp.

541 {
542  ClCreatePreluWorkloadTest({ 1, 4, 1, 2 }, { 5, 4, 3, 1 }, { 5, 4, 3, 2 }, DataType::Float16);
543 }

◆ BOOST_AUTO_TEST_CASE() [39/82]

BOOST_AUTO_TEST_CASE ( CreatePreluFloatWorkload  )

Definition at line 545 of file ClCreateWorkloadTests.cpp.

546 {
547  ClCreatePreluWorkloadTest({ 1, 4, 1, 2 }, { 5, 4, 3, 1 }, { 5, 4, 3, 2 }, DataType::Float32);
548 }

◆ BOOST_AUTO_TEST_CASE() [40/82]

BOOST_AUTO_TEST_CASE ( CreatePreluUint8Workload  )

Definition at line 550 of file ClCreateWorkloadTests.cpp.

551 {
552  ClCreatePreluWorkloadTest({ 1, 4, 1, 2 }, { 5, 4, 3, 1 }, { 5, 4, 3, 2 }, DataType::QAsymmU8);
553 }

◆ BOOST_AUTO_TEST_CASE() [41/82]

BOOST_AUTO_TEST_CASE ( CreateReshapeFloatWorkload  )

Definition at line 573 of file ClCreateWorkloadTests.cpp.

574 {
575  ClCreateReshapeWorkloadTest<armnn::DataType::Float32>();
576 }

◆ BOOST_AUTO_TEST_CASE() [42/82]

BOOST_AUTO_TEST_CASE ( CreateReshapeFloat16Workload  )

Definition at line 578 of file ClCreateWorkloadTests.cpp.

579 {
580  ClCreateReshapeWorkloadTest<armnn::DataType::Float16>();
581 }

◆ BOOST_AUTO_TEST_CASE() [43/82]

BOOST_AUTO_TEST_CASE ( CreateReshapeUint8Workload  )

Definition at line 583 of file ClCreateWorkloadTests.cpp.

584 {
585  ClCreateReshapeWorkloadTest<armnn::DataType::QAsymmU8>();
586 }

◆ BOOST_AUTO_TEST_CASE() [44/82]

BOOST_AUTO_TEST_CASE ( CreateSoftmaxFloat32WorkloadTest  )

Definition at line 619 of file ClCreateWorkloadTests.cpp.

620 {
621  ClSoftmaxWorkloadTest<ClSoftmaxWorkload, armnn::DataType::Float32>();
622 }

◆ BOOST_AUTO_TEST_CASE() [45/82]

BOOST_AUTO_TEST_CASE ( CreateSoftmaxFloat16WorkloadTest  )

Definition at line 624 of file ClCreateWorkloadTests.cpp.

625 {
626  ClSoftmaxWorkloadTest<ClSoftmaxWorkload, armnn::DataType::Float16>();
627 }

◆ BOOST_AUTO_TEST_CASE() [46/82]

BOOST_AUTO_TEST_CASE ( CreateSoftmaxQAsymmU8Workload  )

Definition at line 629 of file ClCreateWorkloadTests.cpp.

630 {
631  ClSoftmaxWorkloadTest<ClSoftmaxWorkload, armnn::DataType::QAsymmU8>();
632 }

◆ BOOST_AUTO_TEST_CASE() [47/82]

BOOST_AUTO_TEST_CASE ( CreateSoftmaxQAsymmS8Workload  )

Definition at line 634 of file ClCreateWorkloadTests.cpp.

635 {
636  ClSoftmaxWorkloadTest<ClSoftmaxWorkload, armnn::DataType::QAsymmS8>();
637 }

◆ BOOST_AUTO_TEST_CASE() [48/82]

BOOST_AUTO_TEST_CASE ( CreateSplitterFloatWorkload  )

Definition at line 663 of file ClCreateWorkloadTests.cpp.

664 {
665  ClSplitterWorkloadTest<armnn::DataType::Float32>();
666 }

◆ BOOST_AUTO_TEST_CASE() [49/82]

BOOST_AUTO_TEST_CASE ( CreateSplitterFloat16Workload  )

Definition at line 668 of file ClCreateWorkloadTests.cpp.

669 {
670  ClSplitterWorkloadTest<armnn::DataType::Float16>();
671 }

◆ BOOST_AUTO_TEST_CASE() [50/82]

BOOST_AUTO_TEST_CASE ( CreateSplitterConcatFloatWorkload  )

Definition at line 716 of file ClCreateWorkloadTests.cpp.

717 {
718  ClSplitterConcatTest<armnn::DataType::Float32>();
719 }

◆ BOOST_AUTO_TEST_CASE() [51/82]

BOOST_AUTO_TEST_CASE ( CreateSplitterConcatFloat16Workload  )

Definition at line 721 of file ClCreateWorkloadTests.cpp.

722 {
723  ClSplitterConcatTest<armnn::DataType::Float16>();
724 }

◆ BOOST_AUTO_TEST_CASE() [52/82]

BOOST_AUTO_TEST_CASE ( CreateSingleOutputMultipleInputs  )

Definition at line 727 of file ClCreateWorkloadTests.cpp.

References BOOST_AUTO_TEST_CASE(), and armnn::Float32.

728 {
729  // Test that it is possible to assign multiple (two) different layers to each of the outputs of a splitter layer.
730  // We create a splitter with two outputs. That each of those outputs is used by two different activation layers.
731 
732  Graph graph;
733  ClWorkloadFactory factory =
734  ClWorkloadFactoryHelper::GetFactory(ClWorkloadFactoryHelper::GetMemoryManager());
735 
736  std::unique_ptr<ClSplitterWorkload> wlSplitter;
737  std::unique_ptr<ClActivationWorkload> wlActiv0_0;
738  std::unique_ptr<ClActivationWorkload> wlActiv0_1;
739  std::unique_ptr<ClActivationWorkload> wlActiv1_0;
740  std::unique_ptr<ClActivationWorkload> wlActiv1_1;
741 
742  CreateSplitterMultipleInputsOneOutputWorkloadTest<ClSplitterWorkload,
743  ClActivationWorkload, armnn::DataType::Float32>(factory, graph, wlSplitter, wlActiv0_0, wlActiv0_1,
744  wlActiv1_0, wlActiv1_1);
745 
746  //Checks that the index of inputs/outputs matches what we declared on InputDescriptor construction.
747  armnn::ClSubTensorHandle* sOut0 = dynamic_cast<armnn::ClSubTensorHandle*>(wlSplitter->GetData().m_Outputs[0]);
748  armnn::ClSubTensorHandle* sOut1 = dynamic_cast<armnn::ClSubTensorHandle*>(wlSplitter->GetData().m_Outputs[1]);
749  armnn::ClSubTensorHandle* activ0_0Im = dynamic_cast<armnn::ClSubTensorHandle*>(wlActiv0_0->GetData().m_Inputs[0]);
750  armnn::ClSubTensorHandle* activ0_1Im = dynamic_cast<armnn::ClSubTensorHandle*>(wlActiv0_1->GetData().m_Inputs[0]);
751  armnn::ClSubTensorHandle* activ1_0Im = dynamic_cast<armnn::ClSubTensorHandle*>(wlActiv1_0->GetData().m_Inputs[0]);
752  armnn::ClSubTensorHandle* activ1_1Im = dynamic_cast<armnn::ClSubTensorHandle*>(wlActiv1_1->GetData().m_Inputs[0]);
753 
754 
755  BOOST_TEST(sOut0);
756  BOOST_TEST(sOut1);
757  BOOST_TEST(activ0_0Im);
758  BOOST_TEST(activ0_1Im);
759  BOOST_TEST(activ1_0Im);
760  BOOST_TEST(activ1_1Im);
761 
762  bool validDataPointers = (sOut0 == activ0_0Im) && (sOut0 == activ0_1Im) &&
763  (sOut1 == activ1_0Im) && (sOut1 == activ1_1Im);
764 
765  BOOST_TEST(validDataPointers);
766 }

◆ BOOST_AUTO_TEST_CASE() [53/82]

BOOST_AUTO_TEST_CASE ( CreateL2NormalizationFloatNchwWorkload  )

Definition at line 806 of file ClCreateWorkloadTests.cpp.

807 {
808  ClL2NormalizationWorkloadTest<ClL2NormalizationFloatWorkload, armnn::DataType::Float32>(DataLayout::NCHW);
809 }

◆ BOOST_AUTO_TEST_CASE() [54/82]

BOOST_AUTO_TEST_CASE ( CreateL2NormalizationFloatNhwcWorkload  )

Definition at line 811 of file ClCreateWorkloadTests.cpp.

812 {
813  ClL2NormalizationWorkloadTest<ClL2NormalizationFloatWorkload, armnn::DataType::Float32>(DataLayout::NHWC);
814 }

◆ BOOST_AUTO_TEST_CASE() [55/82]

BOOST_AUTO_TEST_CASE ( CreateL2NormalizationFloat16NchwWorkload  )

Definition at line 816 of file ClCreateWorkloadTests.cpp.

817 {
818  ClL2NormalizationWorkloadTest<ClL2NormalizationFloatWorkload, armnn::DataType::Float16>(DataLayout::NCHW);
819 }

◆ BOOST_AUTO_TEST_CASE() [56/82]

BOOST_AUTO_TEST_CASE ( CreateL2NormalizationFloat16NhwcWorkload  )

Definition at line 821 of file ClCreateWorkloadTests.cpp.

822 {
823  ClL2NormalizationWorkloadTest<ClL2NormalizationFloatWorkload, armnn::DataType::Float16>(DataLayout::NHWC);
824 }

◆ BOOST_AUTO_TEST_CASE() [57/82]

BOOST_AUTO_TEST_CASE ( CreateLogSoftmaxFloat32WorkloadTest  )

Definition at line 844 of file ClCreateWorkloadTests.cpp.

845 {
846  ClCreateLogSoftmaxWorkloadTest<ClLogSoftmaxWorkload, armnn::DataType::Float32>();
847 }

◆ BOOST_AUTO_TEST_CASE() [58/82]

BOOST_AUTO_TEST_CASE ( CreateLSTMWorkloadFloatWorkload  )

Definition at line 865 of file ClCreateWorkloadTests.cpp.

866 {
867  ClCreateLstmWorkloadTest<ClLstmFloatWorkload>();
868 }

◆ BOOST_AUTO_TEST_CASE() [59/82]

BOOST_AUTO_TEST_CASE ( CreateResizeFloat32NchwWorkload  )

Definition at line 897 of file ClCreateWorkloadTests.cpp.

898 {
899  ClResizeWorkloadTest<ClResizeWorkload, armnn::DataType::Float32>(DataLayout::NCHW);
900 }

◆ BOOST_AUTO_TEST_CASE() [60/82]

BOOST_AUTO_TEST_CASE ( CreateResizeFloat16NchwWorkload  )

Definition at line 902 of file ClCreateWorkloadTests.cpp.

903 {
904  ClResizeWorkloadTest<ClResizeWorkload, armnn::DataType::Float16>(DataLayout::NCHW);
905 }

◆ BOOST_AUTO_TEST_CASE() [61/82]

BOOST_AUTO_TEST_CASE ( CreateResizeUint8NchwWorkload  )

Definition at line 907 of file ClCreateWorkloadTests.cpp.

908 {
909  ClResizeWorkloadTest<ClResizeWorkload, armnn::DataType::QAsymmU8>(DataLayout::NCHW);
910 }

◆ BOOST_AUTO_TEST_CASE() [62/82]

BOOST_AUTO_TEST_CASE ( CreateResizeFloat32NhwcWorkload  )

Definition at line 912 of file ClCreateWorkloadTests.cpp.

913 {
914  ClResizeWorkloadTest<ClResizeWorkload, armnn::DataType::Float32>(DataLayout::NHWC);
915 }

◆ BOOST_AUTO_TEST_CASE() [63/82]

BOOST_AUTO_TEST_CASE ( CreateResizeFloat16NhwcWorkload  )

Definition at line 917 of file ClCreateWorkloadTests.cpp.

918 {
919  ClResizeWorkloadTest<ClResizeWorkload, armnn::DataType::Float16>(DataLayout::NHWC);
920 }

◆ BOOST_AUTO_TEST_CASE() [64/82]

BOOST_AUTO_TEST_CASE ( CreateResizeUint8NhwcWorkload  )

Definition at line 922 of file ClCreateWorkloadTests.cpp.

923 {
924  ClResizeWorkloadTest<ClResizeWorkload, armnn::DataType::QAsymmU8>(DataLayout::NHWC);
925 }

◆ BOOST_AUTO_TEST_CASE() [65/82]

BOOST_AUTO_TEST_CASE ( CreateMeanFloat32Workload  )

Definition at line 946 of file ClCreateWorkloadTests.cpp.

947 {
948  ClMeanWorkloadTest<ClMeanWorkload, armnn::DataType::Float32>();
949 }

◆ BOOST_AUTO_TEST_CASE() [66/82]

BOOST_AUTO_TEST_CASE ( CreateMeanFloat16Workload  )

Definition at line 951 of file ClCreateWorkloadTests.cpp.

952 {
953  ClMeanWorkloadTest<ClMeanWorkload, armnn::DataType::Float16>();
954 }

◆ BOOST_AUTO_TEST_CASE() [67/82]

BOOST_AUTO_TEST_CASE ( CreateMeanUint8Workload  )

Definition at line 956 of file ClCreateWorkloadTests.cpp.

957 {
958  ClMeanWorkloadTest<ClMeanWorkload, armnn::DataType::QAsymmU8>();
959 }

◆ BOOST_AUTO_TEST_CASE() [68/82]

BOOST_AUTO_TEST_CASE ( CreateConcatDim0Float32Workload  )

Definition at line 981 of file ClCreateWorkloadTests.cpp.

982 {
983  ClCreateConcatWorkloadTest<ClConcatWorkload, armnn::DataType::Float32>({ 4, 3, 2, 5 }, 0);
984 }

◆ BOOST_AUTO_TEST_CASE() [69/82]

BOOST_AUTO_TEST_CASE ( CreateConcatDim1Float32Workload  )

Definition at line 986 of file ClCreateWorkloadTests.cpp.

987 {
988  ClCreateConcatWorkloadTest<ClConcatWorkload, armnn::DataType::Float32>({ 2, 6, 2, 5 }, 1);
989 }

◆ BOOST_AUTO_TEST_CASE() [70/82]

BOOST_AUTO_TEST_CASE ( CreateConcatDim3Float32Workload  )

Definition at line 991 of file ClCreateWorkloadTests.cpp.

992 {
993  ClCreateConcatWorkloadTest<ClConcatWorkload, armnn::DataType::Float32>({ 2, 3, 2, 10 }, 3);
994 }

◆ BOOST_AUTO_TEST_CASE() [71/82]

BOOST_AUTO_TEST_CASE ( CreateConcatDim0Uint8Workload  )

Definition at line 996 of file ClCreateWorkloadTests.cpp.

997 {
998  ClCreateConcatWorkloadTest<ClConcatWorkload, armnn::DataType::QAsymmU8>({ 4, 3, 2, 5 }, 0);
999 }

◆ BOOST_AUTO_TEST_CASE() [72/82]

BOOST_AUTO_TEST_CASE ( CreateConcatDim1Uint8Workload  )

Definition at line 1001 of file ClCreateWorkloadTests.cpp.

1002 {
1003  ClCreateConcatWorkloadTest<ClConcatWorkload, armnn::DataType::QAsymmU8>({ 2, 6, 2, 5 }, 1);
1004 }

◆ BOOST_AUTO_TEST_CASE() [73/82]

BOOST_AUTO_TEST_CASE ( CreateConcatDim3Uint8Workload  )

Definition at line 1006 of file ClCreateWorkloadTests.cpp.

1007 {
1008  ClCreateConcatWorkloadTest<ClConcatWorkload, armnn::DataType::QAsymmU8>({ 2, 3, 2, 10 }, 3);
1009 }

◆ BOOST_AUTO_TEST_CASE() [74/82]

BOOST_AUTO_TEST_CASE ( CreateSpaceToDepthFloat32Workload  )

Definition at line 1028 of file ClCreateWorkloadTests.cpp.

1029 {
1030  ClSpaceToDepthWorkloadTest<ClSpaceToDepthWorkload, armnn::DataType::Float32>();
1031 }

◆ BOOST_AUTO_TEST_CASE() [75/82]

BOOST_AUTO_TEST_CASE ( CreateSpaceToDepthFloat16Workload  )

Definition at line 1033 of file ClCreateWorkloadTests.cpp.

1034 {
1035  ClSpaceToDepthWorkloadTest<ClSpaceToDepthWorkload, armnn::DataType::Float16>();
1036 }

◆ BOOST_AUTO_TEST_CASE() [76/82]

BOOST_AUTO_TEST_CASE ( CreateSpaceToDepthQAsymm8Workload  )

Definition at line 1038 of file ClCreateWorkloadTests.cpp.

1039 {
1040  ClSpaceToDepthWorkloadTest<ClSpaceToDepthWorkload, armnn::DataType::QAsymmU8>();
1041 }

◆ BOOST_AUTO_TEST_CASE() [77/82]

BOOST_AUTO_TEST_CASE ( CreateSpaceToDepthQSymm16Workload  )

Definition at line 1043 of file ClCreateWorkloadTests.cpp.

1044 {
1045  ClSpaceToDepthWorkloadTest<ClSpaceToDepthWorkload, armnn::DataType::QSymmS16>();
1046 }

◆ BOOST_AUTO_TEST_CASE() [78/82]

BOOST_AUTO_TEST_CASE ( CreateStackFloat32Workload  )

Definition at line 1076 of file ClCreateWorkloadTests.cpp.

1077 {
1078  ClCreateStackWorkloadTest<armnn::DataType::Float32>({ 3, 4, 5 }, { 3, 4, 2, 5 }, 2, 2);
1079 }

◆ BOOST_AUTO_TEST_CASE() [79/82]

BOOST_AUTO_TEST_CASE ( CreateStackFloat16Workload  )

Definition at line 1081 of file ClCreateWorkloadTests.cpp.

1082 {
1083  ClCreateStackWorkloadTest<armnn::DataType::Float16>({ 3, 4, 5 }, { 3, 4, 2, 5 }, 2, 2);
1084 }

◆ BOOST_AUTO_TEST_CASE() [80/82]

BOOST_AUTO_TEST_CASE ( CreateStackUint8Workload  )

Definition at line 1086 of file ClCreateWorkloadTests.cpp.

1087 {
1088  ClCreateStackWorkloadTest<armnn::DataType::QAsymmU8>({ 3, 4, 5 }, { 3, 4, 2, 5 }, 2, 2);
1089 }

◆ BOOST_AUTO_TEST_CASE() [81/82]

BOOST_AUTO_TEST_CASE ( CreateQLstmWorkloadTest  )

Definition at line 1114 of file ClCreateWorkloadTests.cpp.

1115 {
1116  ClCreateQLstmWorkloadTest<ClQLstmWorkload>();
1117 }

◆ BOOST_AUTO_TEST_CASE() [82/82]

BOOST_AUTO_TEST_CASE ( CreateQuantizedLstmWorkload  )

Definition at line 1153 of file ClCreateWorkloadTests.cpp.

References BOOST_AUTO_TEST_SUITE_END().

1154 {
1155  ClCreateQuantizedLstmWorkloadTest<ClQuantizedLstmWorkload>();
1156 }

◆ CompareIClTensorHandleShape()

boost::test_tools::predicate_result CompareIClTensorHandleShape ( IClTensorHandle tensorHandle,
std::initializer_list< unsigned int >  expectedDimensions 
)

Definition at line 22 of file ClCreateWorkloadTests.cpp.

Referenced by BOOST_AUTO_TEST_CASE().

24 {
25  return CompareTensorHandleShape<IClTensorHandle>(tensorHandle, expectedDimensions);
26 }