blob: 15f9e3badf2033ac3c344c3a35f29fe379e4b7f8 [file] [log] [blame]
telsoa014fcda012018-03-09 14:13:49 +00001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
David Beckecb56cd2018-09-05 12:52:57 +01003// SPDX-License-Identifier: MIT
telsoa014fcda012018-03-09 14:13:49 +00004//
5#pragma once
6
7#include "Workload.hpp"
8
9#include "backends/NeonTensorHandle.hpp"
telsoa01c577f2c2018-08-31 09:22:23 +010010#include "NeonTimer.hpp"
telsoa014fcda012018-03-09 14:13:49 +000011
12#include "arm_compute/core/Types.h"
13#include "arm_compute/core/Helpers.h"
14#include "arm_compute/runtime/NEON/NEFunctions.h"
15#include <arm_compute/runtime/SubTensor.h>
16
17#include <boost/cast.hpp>
18
19namespace armnn
20{
21class Layer;
22
23template<typename T>
24void InitialiseArmComputeTensorData(arm_compute::Tensor& tensor, const T* data);
25
telsoa01c577f2c2018-08-31 09:22:23 +010026void InitializeArmComputeTensorDataForFloatTypes(arm_compute::Tensor& tensor, const ConstCpuTensorHandle* handle);
telsoa014fcda012018-03-09 14:13:49 +000027} //namespace armnn
telsoa01c577f2c2018-08-31 09:22:23 +010028
29
30#define ARMNN_SCOPED_PROFILING_EVENT_NEON(name) \
31 ARMNN_SCOPED_PROFILING_EVENT_WITH_INSTRUMENTS(armnn::Compute::CpuAcc, \
32 name, \
33 armnn::WallClockTimer(), \
34 armnn::NeonTimer())