Closed Bug 1564017 Opened 5 years ago Closed 5 years ago

Enable the Baseline Interpreter in the browser

Categories

(Core :: JavaScript Engine: JIT, task, P1)

task

Tracking

()

RESOLVED FIXED
mozilla70
Tracking Status
firefox70 --- fixed

People

(Reporter: jandem, Assigned: jandem)

References

Details

Attachments

(7 files, 1 obsolete file)

Plan is to use the 10 threshold we currently use for the Baseline JIT and increase the Baseline JIT threshold to 50 for now. It can probably be more than that, we can tune this later.

This currently happened to work but could easily overflow the stack. The JS engine
really expects a JS_SetNativeStackQuota call.

This fixes an xpcshell orange.

Depends on D37207

This test needs to run in the C++ interpreter.

Depends on D37208

This test lowers the Ion threshold to 50, conflicting with the new Baseline
threshold of 50.

Depends on D37209

Thinko: I did this for codeCoverageAtPCLabel but codeCoverageAtPrologueLabel
also needs to do this because the pc register has been initialized before that.

This fixes code coverage jit-tests on arm64.

Depends on D37210

I used 'blinterp' to match the shell flags.

Depends on D37211

Priority: -- → P1
Keywords: leave-open
Pushed by jdemooij@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/b7c4e84d22c2 part 1 - Use a proper JS stack quota for worklet threads. r=baku https://hg.mozilla.org/integration/autoland/rev/f39a7b1425d5 part 2 - Avoid touching interpreter code while destroying the runtime. r=jonco https://hg.mozilla.org/integration/autoland/rev/8005d39f572f part 3 - Disable Baseline Interpreter in testChromeBuffer jsapi-test. r=tcampbell https://hg.mozilla.org/integration/autoland/rev/fc52d7f6eeb8 part 4 - Fix testFloat32 Baseline threshold. r=tcampbell https://hg.mozilla.org/integration/autoland/rev/4bc84251618f part 5 - Save InterpeterPCReg correctly for the code-coverage-at-prologue call. r=tcampbell https://hg.mozilla.org/integration/autoland/rev/be464cf9fbc5 part 6 - Add prefs to about:config. r=tcampbell
Regressions: 1564651

The interpreter always uses the early stack check. On Try I got an intermittent orange
in test_bug732665.xul where we check chrome vs content stack limits and I think this should
fix it.

Attachment #9076468 - Attachment description: Bug 1564017 part 7 - Enable the Baseline Interpreter in the browser. r?tcampbell! → Bug 1564017 part 8 - Enable the Baseline Interpreter in the browser. r?tcampbell!
Attachment #9077079 - Attachment is obsolete: true
Attachment #9076468 - Attachment description: Bug 1564017 part 8 - Enable the Baseline Interpreter in the browser. r?tcampbell! → Bug 1564017 part 7 - Enable the Baseline Interpreter in the browser. r?tcampbell!
Depends on: 1565175
Pushed by jdemooij@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/467644cd89e8 part 7 - Enable the Baseline Interpreter in the browser. r=tcampbell
Keywords: leave-open
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla70

That's for 467644cd89e part 7 - Enable the Baseline Interpreter in the browser. r=tcampbell
== Change summary for alert #21878 (as of Sun, 14 Jul 2019 16:34:12 GMT) ==

Improvements:

0.30% Base Content JS windows7-32-shippable opt 3,169,621.33 -> 3,160,042.67
0.28% Base Content JS linux64-shippable opt 4,026,528.00 -> 4,015,338.67
0.28% Base Content JS linux64-shippable-qr opt 4,026,581.33 -> 4,015,418.67
0.28% Base Content JS macosx1014-64-shippable opt 4,027,450.67 -> 4,016,368.00
0.27% Base Content JS windows10-64-shippable opt 4,087,541.33 -> 4,076,378.67
0.27% Base Content JS windows10-64-shippable-qr opt 4,087,621.33 -> 4,076,645.33

For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=21878

Does this summary make sense to be also caused by part 7 - Enable the Baseline Interpreter in the browser. r=tcampbell ?
== Change summary for alert #21879 (as of Sun, 14 Jul 2019 17:11:37 GMT) ==

Improvements:

9% raptor-tp6-google-firefox-cold fcp windows10-64-shippable-qr opt 357.75 -> 326.17
4% raptor-tp6-docs-firefox fcp windows10-64-shippable-qr opt 730.17 -> 703.67
4% raptor-tp6-docs-firefox windows10-64-shippable-qr opt 717.87 -> 692.71
3% raptor-tp6-binast-instagram-firefox loadtime windows10-64-shippable-qr opt 456.46 -> 440.54
3% raptor-tp6-binast-instagram-firefox loadtime windows7-32-shippable opt 448.54 -> 433.12
3% raptor-tp6-docs-firefox windows7-32-shippable opt 696.17 -> 672.21
3% raptor-tp6-google-mail-firefox loadtime windows10-64-shippable-qr opt 461.62 -> 446.58
3% raptor-tp6-google-firefox-cold windows10-64-shippable-qr opt 358.39 -> 346.97
3% raptor-tp6-binast-instagram-firefox loadtime windows10-64-shippable opt 454.69 -> 442.00
3% raptor-tp6-google-mail-firefox loadtime windows7-32-shippable opt 455.77 -> 443.42
3% raptor-tp6-binast-instagram-firefox loadtime linux64-shippable opt 462.00 -> 449.92
2% raptor-tp6-binast-instagram-firefox loadtime linux64-shippable-qr opt 466.46 -> 455.46
2% raptor-tp6-google-mail-firefox loadtime linux64-shippable-qr opt 444.31 -> 434.17
2% raptor-tp6-ebay-firefox loadtime windows10-64-shippable opt 440.81 -> 431.42
2% raptor-tp6-ebay-firefox windows10-64-shippable opt 377.44 -> 369.65

For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=21879

Flags: needinfo?(jdemooij)

(In reply to Alexandru Ionescu :alexandrui from comment #15)

Does this summary make sense to be also caused by part 7 - Enable the Baseline Interpreter in the browser. r=tcampbell ?

Yes it makes sense. Thanks!

Flags: needinfo?(jdemooij)

For posterity, some more alerts to make tracking them a bit easier:

== Change summary for alert #21880 (as of Sun, 14 Jul 2019 18:45:38 GMT) ==

Improvements:

  17%  damp simple.netmonitor.exportHar linux64-shippable opt e10s stylo                8.44 -> 6.98
  10%  damp simple.jsdebugger.close.DAMP windows10-64-shippable opt e10s stylo          24.84 -> 22.31
   9%  damp simple.jsdebugger.close.DAMP windows10-64-shippable-qr opt e10s stylo       24.38 -> 22.14
   7%  damp console.openwithcache.open.DAMP windows7-32-shippable opt e10s stylo        313.48 -> 290.87
   5%  damp simple.webconsole.open.DAMP windows7-32-shippable opt e10s stylo            279.67 -> 266.04
   4%  damp simple.webconsole.open.DAMP windows10-64-shippable opt e10s stylo           275.39 -> 263.07
   4%  damp custom.jsdebugger.pause.DAMP windows7-32-shippable opt e10s stylo           357.59 -> 343.31
   3%  damp simple.styleeditor.open.DAMP windows10-64-shippable opt e10s stylo          207.55 -> 200.31
   3%  damp simple.webconsole.open.DAMP windows10-64-shippable-qr opt e10s stylo        271.51 -> 262.11
   3%  damp cold.webconsole.open.DAMP windows7-32-shippable opt e10s stylo              277.49 -> 268.85
   3%  damp simple.jsdebugger.reload.DAMP windows7-32-shippable opt e10s stylo          190.99 -> 185.32
   3%  damp simple.styleeditor.open.DAMP windows10-64-shippable-qr opt e10s stylo       203.54 -> 197.53
   3%  damp simple.jsdebugger.open.DAMP windows7-32-shippable opt e10s stylo            700.66 -> 680.36
   3%  damp complicated.jsdebugger.close.DAMP windows10-64-shippable opt e10s stylo     54.86 -> 53.31
   3%  damp simple.jsdebugger.open.DAMP windows10-64-shippable opt e10s stylo           702.62 -> 683.51
   3%  damp simple.jsdebugger.open.DAMP windows10-64-shippable-qr opt e10s stylo        692.49 -> 674.71
   3%  damp custom.webconsole.open.DAMP windows7-32-shippable opt e10s stylo            512.13 -> 499.08
   2%  damp simple.styleeditor.open.DAMP windows7-32-shippable opt e10s stylo           203.37 -> 198.31
   2%  damp complicated.inspector.open.DAMP windows10-64-shippable opt e10s stylo       365.79 -> 356.85
   2%  damp simple.webconsole.reload.DAMP linux64-shippable opt e10s stylo              85.43 -> 83.36
   2%  damp inspector.layout.open windows7-32-shippable opt e10s stylo                  322.24 -> 314.68
   2%  damp console.typing windows7-32-shippable opt e10s stylo                         310.44 -> 303.21
   2%  damp custom.jsdebugger.stepOut.DAMP windows7-32-shippable opt e10s stylo         523.71 -> 511.71
   2%  damp custom.inspector.close.DAMP windows7-32-shippable opt e10s stylo            41.39 -> 40.53
   2%  damp custom.jsdebugger.close.DAMP windows10-64-shippable opt e10s stylo          141.15 -> 138.25
   2%  damp custom.jsdebugger.preview.DAMP windows7-32-shippable opt e10s stylo         676.19 -> 662.61

For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=21880
== Change summary for alert #22148 (as of Fri, 26 Jul 2019 00:32:23 GMT) ==

Improvements:

   2%  ts_paint windows7-32-shippable opt e10s stylo     328.11 -> 321.42

For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=22148

== Change summary for alert #22148 (as of Thu, 25 Jul 2019 23:32:23 GMT) ==

Improvements:

2% ts_paint windows7-32-shippable opt e10s stylo 328.11 -> 321.42

For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=22148

Regressions: 1647309
No longer regressions: 1647309
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: