mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-02-26 20:30:41 +00:00
Bug 726007 - Add telemetry probes for forgetSkippable, r=mccr8
--HG-- extra : rebase_source : aa3a24a53fc95c41bbe460bba732cc5e024107dc
This commit is contained in:
parent
85616ac65b
commit
a5365aab08
@ -3310,6 +3310,9 @@ nsJSContext::CycleCollectNow(nsICycleCollectorListener *aListener,
|
||||
}
|
||||
sLastCCEndTime = now;
|
||||
|
||||
Telemetry::Accumulate(Telemetry::FORGET_SKIPPABLE_MAX,
|
||||
sMaxForgetSkippableTime / PR_USEC_PER_MSEC);
|
||||
|
||||
if (sPostGCEventsToConsole) {
|
||||
PRTime delta = 0;
|
||||
if (sFirstCollectionTime) {
|
||||
@ -3382,25 +3385,20 @@ CCTimerFired(nsITimer *aTimer, void *aClosure)
|
||||
return;
|
||||
}
|
||||
|
||||
PRTime startTime;
|
||||
if (sPostGCEventsToConsole) {
|
||||
startTime = PR_Now();
|
||||
}
|
||||
PRTime startTime = PR_Now();
|
||||
nsCycleCollector_forgetSkippable();
|
||||
sPreviousSuspectedCount = nsCycleCollector_suspectedCount();
|
||||
sCleanupSinceLastGC = true;
|
||||
if (sPostGCEventsToConsole) {
|
||||
PRTime delta = PR_Now() - startTime;
|
||||
if (sMinForgetSkippableTime > delta) {
|
||||
sMinForgetSkippableTime = delta;
|
||||
}
|
||||
if (sMaxForgetSkippableTime < delta) {
|
||||
sMaxForgetSkippableTime = delta;
|
||||
}
|
||||
sTotalForgetSkippableTime += delta;
|
||||
sRemovedPurples += (suspected - sPreviousSuspectedCount);
|
||||
++sForgetSkippableBeforeCC;
|
||||
PRTime delta = PR_Now() - startTime;
|
||||
if (sMinForgetSkippableTime > delta) {
|
||||
sMinForgetSkippableTime = delta;
|
||||
}
|
||||
if (sMaxForgetSkippableTime < delta) {
|
||||
sMaxForgetSkippableTime = delta;
|
||||
}
|
||||
sTotalForgetSkippableTime += delta;
|
||||
sRemovedPurples += (suspected - sPreviousSuspectedCount);
|
||||
++sForgetSkippableBeforeCC;
|
||||
} else {
|
||||
sPreviousSuspectedCount = 0;
|
||||
nsJSContext::KillCCTimer();
|
||||
|
@ -71,6 +71,8 @@ HISTOGRAM(CYCLE_COLLECTOR_COLLECTED, 1, 100000, 50, EXPONENTIAL, "Number of obje
|
||||
HISTOGRAM_BOOLEAN(CYCLE_COLLECTOR_NEED_GC, "Needed garbage collection before cycle collection.")
|
||||
HISTOGRAM(CYCLE_COLLECTOR_TIME_BETWEEN, 1, 120, 50, EXPONENTIAL, "Time spent in between cycle collections (seconds)")
|
||||
|
||||
HISTOGRAM(FORGET_SKIPPABLE_MAX, 1, 10000, 50, EXPONENTIAL, "Max time spent on one forget skippable (ms)")
|
||||
|
||||
/**
|
||||
* GC telemetry
|
||||
*/
|
||||
|
Loading…
x
Reference in New Issue
Block a user