6 #if (defined(__aarch64__)) || (defined(__x86_64__)) // disable test failing on FireFly/Armv7 22 #include <arm_compute/runtime/CL/CLScheduler.h> 24 #include <boost/test/unit_test.hpp> 28 using namespace armnn;
35 OpenClFixture() : m_ClContextControl(nullptr, nullptr,
true) {}
41 BOOST_FIXTURE_TEST_SUITE(OpenClTimerBatchNorm, OpenClFixture)
46 auto memoryManager = ClWorkloadFactoryHelper::GetMemoryManager();
47 ClWorkloadFactory workloadFactory = ClWorkloadFactoryHelper::GetFactory(memoryManager);
49 const unsigned int width = 2;
50 const unsigned int height = 3;
51 const unsigned int channels = 2;
52 const unsigned int num = 1;
58 auto input = MakeTensor<float, 4>(inputTensorInfo,
70 auto mean = MakeTensor<float, 1>(tensorInfo, { 3.f, -2.f });
71 auto variance = MakeTensor<float, 1>(tensorInfo, { 4.f, 9.f });
72 auto beta = MakeTensor<float, 1>(tensorInfo, { 3.f, 2.f });
73 auto gamma = MakeTensor<float, 1>(tensorInfo, { 2.f, 1.f });
76 std::unique_ptr<ITensorHandle> inputHandle = workloadFactory.
CreateTensorHandle(inputTensorInfo);
77 std::unique_ptr<ITensorHandle> outputHandle = workloadFactory.
CreateTensorHandle(outputTensorInfo);
92 AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get());
93 AddOutputToWorkload(data, info, outputTensorInfo, outputHandle.get());
94 data.m_Mean = &meanTensor;
95 data.m_Variance = &varianceTensor;
96 data.m_Beta = &betaTensor;
97 data.m_Gamma = &gammaTensor;
98 data.m_Parameters.m_Eps = 0.0f;
105 inputHandle->Allocate();
106 outputHandle->Allocate();
112 BOOST_CHECK_EQUAL(openClTimer.GetName(),
"OpenClKernelTimer");
123 BOOST_CHECK_EQUAL(openClTimer.GetMeasurements().size(), 1);
125 BOOST_CHECK_EQUAL(openClTimer.GetMeasurements().front().m_Name,
126 "OpenClKernelTimer/0: batchnormalization_layer_nchw GWS[1,3,2]");
128 BOOST_CHECK(openClTimer.GetMeasurements().front().m_Value > 0);
134 #endif //aarch64 or x86_64
void Start() override
Start the OpenCl timer.
#define ARMNN_NO_DEPRECATE_WARN_BEGIN
std::unique_ptr< ITensorHandle > CreateTensorHandle(const TensorInfo &tensorInfo, const bool IsMemoryManaged=true) const override
Copyright (c) 2021 ARM Limited and Contributors.
#define ARMNN_NO_DEPRECATE_WARN_END
void AllocateAndCopyDataToITensorHandle(armnn::ITensorHandle *tensorHandle, const void *memory)
BOOST_AUTO_TEST_CASE(CheckConvolution2dLayer)
OpenClTimer instrument that times all OpenCl kernels executed between calls to Start() and Stop()...
BOOST_AUTO_TEST_SUITE_END()
Contains information about inputs and outputs to a layer.
std::unique_ptr< IWorkload > CreateBatchNormalization(const BatchNormalizationQueueDescriptor &descriptor, const WorkloadInfo &info) const override
DataLayout::NCHW DataLayout::NCHW DataLayout::NHWC DataLayout::NHWC true
void CopyDataToITensorHandle(armnn::ITensorHandle *tensorHandle, const void *memory)