Migrate Gecko ScriptPreloader to Stencil-XDR bytecode format
Categories
(Core :: JavaScript Engine, task, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox94 | --- | fixed |
People
(Reporter: tcampbell, Assigned: mgaudet)
References
Details
Attachments
(2 files, 4 obsolete files)
The legacy-XDR format is deprecated and slated for removal. Using Stencil will be less error prone going forward and opens up a lot of new performance optimizations.
The ScriptPreloader currently uses non-incremental XDR mode which is not supported by Stencil-XDR, but also always uses full-parsing when encoding so capturing XDR on the original stencil has the same data as capturing legacy-XDR data after execution.
Assignee | ||
Comment 1•4 years ago
|
||
Assignee | ||
Comment 2•4 years ago
|
||
Depends on D103708
Assignee | ||
Comment 3•4 years ago
|
||
Depends on D103709
Assignee | ||
Comment 4•4 years ago
|
||
Depends on D103710
Assignee | ||
Comment 5•4 years ago
|
||
Side note: On Ted's advice I did some Talos-other runs to spot any improvements or degradations: nothing stands out
Reporter | ||
Comment 6•4 years ago
|
||
Two more tips:
- Use
MOZ_PROFILER_STARTUP=1
env var to capture early startup trace and see if you can see any change in compiles. - Run the
awsy
/awsy-base
tests for good measure.
Assignee | ||
Comment 7•4 years ago
|
||
Depends on D103711
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Assignee | ||
Comment 8•4 years ago
|
||
Depends on D113012
Comment 9•3 years ago
|
||
Marking this bug as stalled based on review comments from Ted:
Current status is that this is stalled for potential performance issues of moving gc-atomization calls to main thread. Our strategy here will likely need to be modified.
Assignee | ||
Updated•3 years ago
|
Comment 10•3 years ago
|
||
basically depends on bug 1721120, but it needs to be addressed after this patch, due to dependency around XDR
Updated•3 years ago
|
Updated•3 years ago
|
Comment 11•3 years ago
|
||
The performance regression is going to be addressed by https://bugzilla.mozilla.org/show_bug.cgi?id=1721413 ,
but it depends on several bugs after this bug.
The plan the following:
- Land StartupCache patches (bug 1688790)
- Land ScriptPreloader patches (bug 1688788 = this bug)
- Remove remaining usage of legacy XDR (bug 1718194 and bug 1718481)
- Remove remaining usage of script cloning (bug 1718623 and bug 1718536)
- Remove script cloning bug 1718529 and bug 1662152
- Remove legacy XDR (bug 1718711 and bug 1688791)
- Address the performance regression (bug 1721413)
Comment 12•3 years ago
|
||
Comment 13•3 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/e660e2c3c3d1
https://hg.mozilla.org/mozilla-central/rev/2bc5949902ac
Comment 14•3 years ago
|
||
Since the bug is closed, the stalled keyword is now meaningless.
For more information, please visit auto_nag documentation.
Comment hidden (obsolete) |
Description
•