Closed Bug 1603356 Opened 4 years ago Closed 4 years ago

Enable Eager evaluation in Nightly

Categories

(DevTools :: Console, task, P3)

task

Tracking

(firefox74 verified)

VERIFIED FIXED
Firefox 74
Tracking Status
firefox74 --- verified

People

(Reporter: Honza, Assigned: jlast)

References

(Blocks 1 open bug)

Details

(Keywords: dev-doc-complete)

Attachments

(1 file, 1 obsolete file)

Enable Eager evaluation in Nightly as soon as it's ready for internal testing.

The pref is: devtools.webconsole.input.eagerEvaluation

Honza

Depends on: 1603362
Depends on: 1603364
Depends on: 1602489
Keywords: meta
Keywords: meta
Depends on: 1604435
Assignee: nobody → jlaster
Status: NEW → ASSIGNED
Pushed by jlaster@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/7c414004b82a
Enable Eager evaluation in Nightly. r=nchevobbe
Pushed by jlaster@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/f49107726254
Enable Eager evaluation in Nightly. r=nchevobbe
Depends on: 1609935
Pushed by jlaster@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/525336d7af51
Enable Eager evaluation in Nightly. r=nchevobbe
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 74
Regressions: 1611130
Attachment #9120120 - Attachment is obsolete: true

As far as Nightly builds go, confirming with current nightly builds that the pref is enabled by default.
Marking verified with 75.0a1 (2020-02-20) - Windows 10, macOS 10.13, Ubuntu 19.04.

Status: RESOLVED → VERIFIED

mozregression pointed me here - https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=4abd12f068cf2ffcc4beb6f652ab8a8995443cc3&tochange=525336d7af5157b773fb6ab51777f5bd70ec1138

This pref causes uBlock Origin internal benchmark to return ~10 times worse results:

devtools.webconsole.input.eagerEvaluation set to true:

µBlock.staticNetFilteringEngine.benchmark();
[uBO] Loading benchmark dataset... console.js:26:40
[uBO] Parsing benchmark dataset... console.js:26:40
[uBO] Benchmarking staticNetFilteringEngine.matchString()... console.js:26:40
[uBO] Evaluated 230363 requests in 73887 ms console.js:26:40
[uBO] 	Average: 0.321 ms per request console.js:26:40

devtools.webconsole.input.eagerEvaluation set to false:

µBlock.staticNetFilteringEngine.benchmark();
[uBO] Benchmarking staticNetFilteringEngine.matchString()... console.js:26:40
Promise { <state>: "pending" }
[uBO] Evaluated 230363 requests in 8450 ms console.js:26:40
[uBO] 	Average: 0.037 ms per request console.js:26:40

How to run this benchmark:

  • fresh Nightly build
  • install latest dev version of uBO from https://github.com/gorhill/uBlock/releases/ (it's easier to setup that way, can also be run in older uBO versions with more effort - custom build)
  • open uBO Preferences (for ex. from about:addons, "..." button menu)
  • enable option "I am an advanced user (required reading) "
  • click small gear icon after "I am an advanced user (required reading) " string
  • in new window set:
    • benchmarkDatasetURL to https://cdn.cliqz.com/adblocking/requests_top500.json.gz
    • consoleLogLevel to info - to actually see something printed in console
  • open about:devtools-toolbox?type=extension&id=uBlock0%40raymondhill.net
  • run in console: µBlock.staticNetFilteringEngine.benchmark();

Toggling devtools.webconsole.input.eagerEvaluation requires devtools-toolbox to be reloaded.

Could you file a follow-up regression bug with those details (New/Clone … > that is regressed by this bug)?

I'd be curious to hear if ublock extension depends on any console APIs and if devtools is open at all during benchmarks.

Flags: needinfo?(gwarser)
Regressions: 1617666
Flags: needinfo?(jlaster)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: