Reset GC timings after SIGQUIT.
We now reset the GC timings when a SIGQUIT happens, this is useful
for excluding GCs which happen during the initialization of an app
when measuring GC performance.
Change-Id: I68c79bdb279290c12ae588bc7e95ac24908c157e
diff --git a/runtime/gc/heap.cc b/runtime/gc/heap.cc
index e3fa834..feb7a48 100644
--- a/runtime/gc/heap.cc
+++ b/runtime/gc/heap.cc
@@ -660,7 +660,7 @@
// Dump cumulative loggers for each GC type.
uint64_t total_paused_time = 0;
- for (const auto& collector : garbage_collectors_) {
+ for (auto& collector : garbage_collectors_) {
const CumulativeLogger& logger = collector->GetCumulativeTimings();
if (logger.GetTotalNs() != 0) {
os << ConstDumpable<CumulativeLogger>(logger);
@@ -680,6 +680,7 @@
total_duration += total_ns;
total_paused_time += total_pause_ns;
}
+ collector->ResetMeasurements();
}
uint64_t allocation_time = static_cast<uint64_t>(total_allocation_time_) * kTimeAdjust;
if (total_duration != 0) {