aboutsummaryrefslogtreecommitdiff
path: root/src/armnn/WallClockTimer.cpp
diff options
context:
space:
mode:
authortelsoa01 <telmo.soares@arm.com>2018-08-31 09:22:23 +0100
committertelsoa01 <telmo.soares@arm.com>2018-08-31 09:22:23 +0100
commitc577f2c6a3b4ddb6ba87a882723c53a248afbeba (patch)
treebd7d4c148df27f8be6649d313efb24f536b7cf34 /src/armnn/WallClockTimer.cpp
parent4c7098bfeab1ffe1cdc77f6c15548d3e73274746 (diff)
downloadarmnn-c577f2c6a3b4ddb6ba87a882723c53a248afbeba.tar.gz
Release 18.08
Diffstat (limited to 'src/armnn/WallClockTimer.cpp')
-rw-r--r--src/armnn/WallClockTimer.cpp41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/armnn/WallClockTimer.cpp b/src/armnn/WallClockTimer.cpp
new file mode 100644
index 0000000000..93d12222f7
--- /dev/null
+++ b/src/armnn/WallClockTimer.cpp
@@ -0,0 +1,41 @@
+//
+// Copyright © 2017 Arm Ltd. All rights reserved.
+// See LICENSE file in the project root for full license information.
+//
+
+#include "WallClockTimer.hpp"
+
+namespace armnn
+{
+
+const std::string WallClockTimer::WALL_CLOCK_TIME ("Wall clock time");
+const std::string WallClockTimer::WALL_CLOCK_TIME_START(WallClockTimer::WALL_CLOCK_TIME + " (Start)");
+const std::string WallClockTimer::WALL_CLOCK_TIME_STOP (WallClockTimer::WALL_CLOCK_TIME + " (Stop)");
+
+const char* WallClockTimer::GetName() const
+{
+ return "WallClockTimer";
+}
+
+void WallClockTimer::Start()
+{
+ m_Start = clock::now();
+}
+
+void WallClockTimer::Stop()
+{
+ m_Stop = clock::now();
+}
+
+std::vector<Measurement> WallClockTimer::GetMeasurements() const
+{
+ const auto delta = std::chrono::duration<double, std::milli>(m_Stop - m_Start);
+ const auto startTimeMs = std::chrono::duration<double, std::milli>(m_Start.time_since_epoch());
+ const auto stopTimeMs = std::chrono::duration<double, std::milli>(m_Stop.time_since_epoch());
+
+ return { { WALL_CLOCK_TIME, delta.count(), Measurement::Unit::TIME_MS },
+ { WALL_CLOCK_TIME_START, startTimeMs.count(), Measurement::Unit::TIME_MS },
+ { WALL_CLOCK_TIME_STOP, stopTimeMs.count(), Measurement::Unit::TIME_MS } };
+}
+
+} //namespace armnn