Closed Bug 1823622 Opened 2 years ago Closed 2 years ago

Some small parallel marking improvements

Categories

(Core :: JavaScript: GC, task, P3)

task

Tracking

()

RESOLVED FIXED
113 Branch
Tracking Status
firefox113 --- fixed

People

(Reporter: jonco, Assigned: jonco)

References

(Blocks 1 open bug)

Details

Attachments

(4 files)

No description provided.

This used to be used by an earlier iteration of the code but it seems I forgot
to remove it.

There are three measurements made for parallel mark threads: 1) total time, 2)
marking time and 3) waiting time (when the thread is blocked on a condition
variable).

When calculating utilization we want to use the time the thread was running so
we should exclude waiting time. When calculating the speedup over single
threaded marking we want to use the time the thread spent marking.

Depends on D173127

We don't calculate this when marking is quick to exclude unreliable results
when the denominator of the calculation is very small. However we can mark in
less than 1 millisecond for small heaps with parallel marking, so this reduces
the threshold to 1 microsecond.

Depends on D173128

Since this can get checked by all marking threads it's not optimal to have this
as a sequentially consistent atomic as this will cause cache traffic every time
it's read.

We should be able to make this a relaxed atomic without observable difference
to interruptible GC.

Depends on D173129

Pushed by jcoppeard@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/4c55048434e2 Part 1: Remove unused condition variable r=sfink https://hg.mozilla.org/integration/autoland/rev/d6d6b895d730 Part 2: Refine parallel marking telemetry to exclude wait times r=sfink https://hg.mozilla.org/integration/autoland/rev/2d6a608863af Part 3: Lower the threshold at which we calculate mark rate telemetry r=sfink https://hg.mozilla.org/integration/autoland/rev/b2be266873a2 Part 4: Make SliceBudget's interrupt word a relaxed atomic r=sfink
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: