Consider using different warmup thresholds during pageload
Categories
(Core :: JavaScript Engine: JIT, task, P1)
Tracking
()
People
(Reporter: iain, Unassigned)
References
(Blocks 1 open bug)
Details
(Whiteboard: [sp3])
Attachments
(1 file)
(deleted),
text/x-phabricator-request
|
Details |
Triggering baseline compilations more eagerly is good for Speedometer, but bad for pageload. We added a setPerformanceHint
API in bug 1609956 to tweak GC during pageload; we could try extending that to also cover different warmup thresholds during pageload, and decrease the warmup thresholds for non-pageload code.
Reporter | ||
Comment 1•2 years ago
|
||
This is a rough prototype. It sets the baseline/Ion thresholds to 100/1500 during pageload and 50/1000 otherwise. There are shell and browser options for tweaking each of the thresholds (--(baseline|ion)-warmup-threshold/--pageload-(baseline|ion)-warmup-threshold
, (baseline|ion).warmup.trigger/(baseline|ion).pageload.warmup.trigger
). They might even work.
Updated•2 years ago
|
Updated•2 years ago
|
Reporter | ||
Comment 2•2 years ago
|
||
Preliminary performance results on this weren't particularly promising. smaug ran a couple try runs with 10/1000 and 25/1500. Some speedometer benchmarks improved, but the overall effect was neutral/negative (especially the TipTap/CodeMirror benchmarks).
The overall takeaway is that judicious use of eager baseline compilation is a good idea, but more targeted approaches like bug 1824772 are a better way to do it.
Description
•