IVGCVSW-1821 - taking out scale factor again as it's polluting the WallClockTimer interface

Change-Id: Ia90b709ddfff321dbc218add4ab19737f68a44bf
diff --git a/src/armnn/NeonInterceptorScheduler.cpp b/src/armnn/NeonInterceptorScheduler.cpp
index 7e2737e..8363def 100644
--- a/src/armnn/NeonInterceptorScheduler.cpp
+++ b/src/armnn/NeonInterceptorScheduler.cpp
@@ -31,7 +31,6 @@
     m_RealScheduler.schedule(kernel, hints.split_dimension());
     m_Timer.Stop();
 
-    m_Timer.SetScaleFactor(Measurement::Unit::TIME_US);
     std::vector<Measurement> measurements = m_Timer.GetMeasurements();
     BOOST_ASSERT(!measurements.empty());
 
@@ -47,7 +46,6 @@
     m_RealScheduler.run_tagged_workloads(workloads, nullptr);
     m_Timer.Stop();
 
-    m_Timer.SetScaleFactor(Measurement::Unit::TIME_US);
     std::vector<Measurement> measurements = m_Timer.GetMeasurements();
     BOOST_ASSERT_MSG(measurements.size() == 3, "WallClockTimer does not have correct amount of measurements.");
 
diff --git a/src/armnn/WallClockTimer.cpp b/src/armnn/WallClockTimer.cpp
index 911b014..570b690 100644
--- a/src/armnn/WallClockTimer.cpp
+++ b/src/armnn/WallClockTimer.cpp
@@ -4,7 +4,6 @@
 //
 
 #include "WallClockTimer.hpp"
-#include "armnn/Exceptions.hpp"
 
 namespace armnn
 {
@@ -28,34 +27,15 @@
     m_Stop = clock::now();
 }
 
-void WallClockTimer::SetScaleFactor(Measurement::Unit measurementUnit)
-{
-    switch(measurementUnit)
-    {
-        case Measurement::TIME_MS:
-            m_ScaleFactor = 1.f;
-            break;
-        case Measurement::TIME_US:
-            m_ScaleFactor = 1000.f;
-            break;
-        case Measurement::TIME_NS:
-            m_ScaleFactor = 1000000.f;
-            break;
-        default:
-            throw InvalidArgumentException("Invalid scale used");
-    }
-    m_Unit = measurementUnit;
-}
-
 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());
+    const auto delta       = std::chrono::duration<double, std::micro>(m_Stop - m_Start);
+    const auto startTimeMs = std::chrono::duration<double, std::micro>(m_Start.time_since_epoch());
+    const auto stopTimeMs  = std::chrono::duration<double, std::micro>(m_Stop.time_since_epoch());
 
-    return { { WALL_CLOCK_TIME,       delta.count() * m_ScaleFactor,       m_Unit },
-             { WALL_CLOCK_TIME_START, startTimeMs.count() * m_ScaleFactor, m_Unit },
-             { WALL_CLOCK_TIME_STOP,  stopTimeMs.count() * m_ScaleFactor,  m_Unit } };
+    return { { WALL_CLOCK_TIME,       delta.count(),       Measurement::Unit::TIME_US },
+             { WALL_CLOCK_TIME_START, startTimeMs.count(), Measurement::Unit::TIME_US },
+             { WALL_CLOCK_TIME_STOP,  stopTimeMs.count(),  Measurement::Unit::TIME_US } };
 }
 
 } //namespace armnn
diff --git a/src/armnn/WallClockTimer.hpp b/src/armnn/WallClockTimer.hpp
index 09cc514..88cbb4d 100644
--- a/src/armnn/WallClockTimer.hpp
+++ b/src/armnn/WallClockTimer.hpp
@@ -25,7 +25,7 @@
     }
 };
 
-// Implementation of an instrument to measure elapsed wall-clock time in milliseconds.
+// Implementation of an instrument to measure elapsed wall-clock time in microseconds.
 class WallClockTimer : public Instrument
 {
 public:
@@ -42,8 +42,6 @@
     // Get the name of the timer
     const char* GetName() const override;
 
-    void SetScaleFactor(Measurement::Unit measurementUnit);
-
     // Get the recorded measurements
     std::vector<Measurement> GetMeasurements() const override;
 
@@ -60,8 +58,6 @@
 private:
     clock::time_point m_Start;
     clock::time_point m_Stop;
-    float m_ScaleFactor = 1.f;
-    Measurement::Unit m_Unit = Measurement::Unit::TIME_MS;
 };
 
 } //namespace armnn
diff --git a/src/armnn/test/InstrumentTests.cpp b/src/armnn/test/InstrumentTests.cpp
index 11d8414..40ffde8 100644
--- a/src/armnn/test/InstrumentTests.cpp
+++ b/src/armnn/test/InstrumentTests.cpp
@@ -13,7 +13,7 @@
 
 BOOST_AUTO_TEST_SUITE(Instruments)
 
-BOOST_AUTO_TEST_CASE(WallClockTimerInMilliseconds)
+BOOST_AUTO_TEST_CASE(WallClockTimerInMicroseconds)
 {
     WallClockTimer wallClockTimer;
 
@@ -22,16 +22,16 @@
     // start the timer
     wallClockTimer.Start();
 
-    // wait for 10 milliseconds
-    std::this_thread::sleep_for(std::chrono::milliseconds(10));
+    // wait for 10 microseconds
+    std::this_thread::sleep_for(std::chrono::microseconds(10));
 
    // stop the timer
     wallClockTimer.Stop();
 
     BOOST_CHECK_EQUAL(wallClockTimer.GetMeasurements().front().m_Name, WallClockTimer::WALL_CLOCK_TIME);
 
-    // check that WallClockTimer measurement should be >= 10 milliseconds
-    BOOST_CHECK_GE(wallClockTimer.GetMeasurements().front().m_Value, std::chrono::milliseconds(10).count());
+    // check that WallClockTimer measurement should be >= 10 microseconds
+    BOOST_CHECK_GE(wallClockTimer.GetMeasurements().front().m_Value, std::chrono::microseconds(10).count());
 }
 
 BOOST_AUTO_TEST_CASE(WallClockTimerInNanoseconds)
@@ -43,7 +43,7 @@
     // start the timer
     wallClockTimer.Start();
 
-    // wait for 500 nanoseconds - 0.0005 milliseconds
+    // wait for 500 nanoseconds - 0.5 microseconds
     std::this_thread::sleep_for(std::chrono::nanoseconds(500));
 
     // stop the timer
@@ -51,11 +51,11 @@
 
     BOOST_CHECK_EQUAL(wallClockTimer.GetMeasurements().front().m_Name, WallClockTimer::WALL_CLOCK_TIME);
 
-    // delta is 0.0005 milliseconds
+    // delta is 0.5 microseconds
     const auto delta =
-        std::chrono::duration_cast<std::chrono::duration<double, std::milli>>(std::chrono::nanoseconds(500));
+        std::chrono::duration_cast<std::chrono::duration<double, std::micro>>(std::chrono::nanoseconds(500));
 
-    // check that WallClockTimer measurement should be >= 0.0005 milliseconds
+    // check that WallClockTimer measurement should be >= 0.5 microseconds
     BOOST_CHECK_GE(wallClockTimer.GetMeasurements().front().m_Value, delta.count());
 }
 
diff --git a/src/armnn/test/JsonPrinterTests.cpp b/src/armnn/test/JsonPrinterTests.cpp
index 01078e3..aae7dba 100644
--- a/src/armnn/test/JsonPrinterTests.cpp
+++ b/src/armnn/test/JsonPrinterTests.cpp
@@ -246,7 +246,7 @@
 
     std::string backend = "Ref";
     std::string changeLine31 = "\n},\n\"CopyMemGeneric_Execute\": {";
-    std::string changeLine39 = "ms\"";
+    std::string changeLine39 = "us\"";
     std::string changeLine40;
     std::string changeLine45;
 
@@ -271,7 +271,7 @@
 ,
 
 ],
-"unit": "ms")";
+"unit": "us")";
             changeLine45 = "}\n";
             break;
         case armnn::Compute::CpuAcc: backend = "Neon";
@@ -301,7 +301,7 @@
 ,
 
 ],
-"unit": "ms")";
+"unit": "us")";
             changeLine45 = "}\n";
             break;
         default:
@@ -315,21 +315,21 @@
 ,
 
 ],
-"unit": "ms",
+"unit": "us",
 "layer_measurements": {
 "raw": [
 ,
 ,
 
 ],
-"unit": "ms",
+"unit": "us",
 "CopyMemGeneric_Execute": {
 "raw": [
 ,
 ,
 
 ],
-"unit": "ms"
+"unit": "us"
 },
 ")" + backend + R"(SoftmaxUintWorkload_Execute": {
 "raw": [
@@ -337,7 +337,7 @@
 ,
 
 ],
-"unit": "ms")" + changeLine31 + R"(
+"unit": "us")" + changeLine31 + R"(
 "raw": [
 ,
 ,
diff --git a/src/armnn/test/ProfilingEventTest.cpp b/src/armnn/test/ProfilingEventTest.cpp
index 33396b1..9e31ccb 100644
--- a/src/armnn/test/ProfilingEventTest.cpp
+++ b/src/armnn/test/ProfilingEventTest.cpp
@@ -32,8 +32,8 @@
     // start the timer - outer
     testEvent.Start();
 
-    // wait for 10 milliseconds
-    std::this_thread::sleep_for(std::chrono::milliseconds(10));
+    // wait for 10 microseconds
+    std::this_thread::sleep_for(std::chrono::microseconds(10));
 
     // stop the timer - outer
     testEvent.Stop();
@@ -74,8 +74,8 @@
     // start the timer - outer
     testEvent.Start();
 
-    // wait for 10 milliseconds
-    std::this_thread::sleep_for(std::chrono::milliseconds(10));
+    // wait for 10 microseconds
+    std::this_thread::sleep_for(std::chrono::microseconds(10));
 
     // stop the timer - outer
     testEvent.Stop();