NEW
Unassigned

Status

()

Core
Gecko Profiler
3 years ago
4 months ago

People

(Reporter: jrmuizel, Unassigned)

Tracking

(Depends on: 3 bugs, Blocks: 2 bugs)

Firefox Tracking Flags

(Not tracked)

Details

Comment hidden (empty)
Jeff showed this to me here in the office.

I'm pretty sure this is caused by a combination of two things:

1. The sampler calls PCToLineNumber which is taking a HUGE amount of time in the perf-profiles of this hang.  I suspect it's hitting a particularly degenerate case where there are a lot of sourcenotes for this function.

2. mstange recently modified the profiler sampling implementation, so that it tries to approximate a sample every 1ms, instead of blindly sleeping 1ms between samples.  I.e. the sampler now takes into account the amount of time spent sampling, and tries to subtract that from the amount of time to wait until the next sample.

The combination of these two factors is most likely leading to a situation where the amount of time taken sampling is so large that the mainThread doesn't get to execute for very long (or at all) before being interrupted again for the next sample.

Markus is testing this hypothesis now by reverting the sampling timer to the old method of blindly waiting 1ms between samples.
Blocks: 1329181
Blocks: 761253
Depends on: 848071

Updated

10 months ago
Duplicate of this bug: 1356070

Updated

10 months ago
Depends on: 929950
You need to log in before you can comment on or make changes to this bug.