diff --git a/lib/arm_profiler/include/arm_profiler.hpp b/lib/arm_profiler/include/arm_profiler.hpp
index 0b97e2e..0e6784d 100644
--- a/lib/arm_profiler/include/arm_profiler.hpp
+++ b/lib/arm_profiler/include/arm_profiler.hpp
@@ -31,6 +31,7 @@
     uint32_t BeginEvent(const char *tag);
     void EndEvent(uint32_t event_handle);
     uint64_t GetTotalTicks() const;
+    void ReportResults() const;
 
 private:
     size_t max_events_;
diff --git a/lib/arm_profiler/src/arm_profiler.cpp b/lib/arm_profiler/src/arm_profiler.cpp
index c90eec2..7648584 100644
--- a/lib/arm_profiler/src/arm_profiler.cpp
+++ b/lib/arm_profiler/src/arm_profiler.cpp
@@ -50,8 +50,6 @@
 void ArmProfiler::EndEvent(uint32_t event_handle) {
     TFLITE_DCHECK(event_handle < max_events_);
     end_ticks_[event_handle] = GetCurrentTimeTicks();
-    tflite::GetMicroErrorReporter()->Report(
-        "%s : cycle_cnt : %u cycles", tags_[event_handle], end_ticks_[event_handle] - start_ticks_[event_handle]);
 }
 
 uint64_t ArmProfiler::GetTotalTicks() const {
@@ -64,4 +62,12 @@
     return ticks;
 }
 
+void ArmProfiler::ReportResults() const {
+    tflite::GetMicroErrorReporter()->Report("Profiler report, CPU cycles per operator:");
+    for (size_t i = 0; i < num_events_; ++i) {
+        tflite::GetMicroErrorReporter()->Report(
+            "%s : cycle_cnt : %u cycles", tags_[i], end_ticks_[i] - start_ticks_[i]);
+    }
+}
+
 } // namespace tflite
