ArmNN
 25.11
Loading...
Searching...
No Matches
NeonTimer.hpp
Go to the documentation of this file.
1//
2// Copyright © 2017 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
6#pragma once
7
8#include "Instrument.hpp"
9
10#include <arm_compute/runtime/IScheduler.h>
11#include <arm_compute/runtime/Scheduler.h>
12#include <arm_compute/core/CPP/ICPPKernel.h>
13
14#include <chrono>
15#include <map>
16#include <list>
17
18namespace armnn
19{
20
21class NeonTimer : public Instrument
22{
23public:
24 using KernelMeasurements = std::vector<Measurement>;
25
26 NeonTimer() = default;
27 ~NeonTimer() = default;
28
29 void Start() override;
30
31 void Stop() override;
32
33 bool HasKernelMeasurements() const override;
34
35 std::vector<Measurement> GetMeasurements() const override;
36
37 const char* GetName() const override;
38
39private:
40 KernelMeasurements m_Kernels;
41 arm_compute::IScheduler* m_RealScheduler;
42 arm_compute::Scheduler::Type m_RealSchedulerType;
43};
44
45}
void Start() override
Definition NeonTimer.cpp:20
std::vector< Measurement > KernelMeasurements
Definition NeonTimer.hpp:24
~NeonTimer()=default
NeonTimer()=default
void Stop() override
Definition NeonTimer.cpp:39
std::vector< Measurement > GetMeasurements() const override
Definition NeonTimer.cpp:52
const char * GetName() const override
Definition NeonTimer.cpp:65
bool HasKernelMeasurements() const override
Definition NeonTimer.cpp:47
Copyright (c) 2021 ARM Limited and Contributors.