Bug 1846270 - Fix parallel marking utilization telemetry broken by previous patch in this bug r=sfink

My previous patch changed the way |parallelRunTime| is calculated by adding
waiting time where it was previously subtracted. The utilization telemetry is
meant to show the fraction of time the helper threads spent running so waiting
time should not be included.

Differential Revision: https://phabricator.services.mozilla.com/D185578
This commit is contained in:
Jon Coppeard 2023-08-08 08:36:03 +00:00
Родитель 6f9c680fb3
Коммит 385f79fdcf
1 изменённых файлов: 1 добавлений и 2 удалений

Просмотреть файл

@ -1127,8 +1127,7 @@ void Statistics::sendGCTelemetry() {
TimeDuration parallelMarkTime = TimeDuration parallelMarkTime =
sumTotalParallelTime(PhaseKind::PARALLEL_MARK_MARK); sumTotalParallelTime(PhaseKind::PARALLEL_MARK_MARK);
TimeDuration parallelRunTime = TimeDuration parallelRunTime =
parallelMarkTime + sumTotalParallelTime(PhaseKind::PARALLEL_MARK_WAIT) + parallelMarkTime + sumTotalParallelTime(PhaseKind::PARALLEL_MARK_OTHER);
sumTotalParallelTime(PhaseKind::PARALLEL_MARK_OTHER);
if (wallTime && parallelMarkTime) { if (wallTime && parallelMarkTime) {
uint32_t threadCount = gc->markers.length(); uint32_t threadCount = gc->markers.length();
double speedup = parallelMarkTime / wallTime; double speedup = parallelMarkTime / wallTime;