Open Bug 1462843 Opened 6 years ago Updated 8 months ago

Firefox is twice as slow as Google Chrome running es-membrane tests

Categories

(Core :: JavaScript Engine, defect, P3)

defect

Tracking

()

Performance Impact low
Tracking Status
firefox62 --- affected

People

(Reporter: WeirdAl, Unassigned)

References

(Depends on 1 open bug)

Details

(Keywords: parity-chrome, perf, testcase)

Attachments

(1 file, 1 obsolete file)

1. In a terminal:
git clone https://github.com/ajvincent/es-membrane
cd es-membrane/
git checkout 503b327 # version 0.8.5

2. In Mozilla Firefox, load docs/dist/browser/test-browser.xhtml .  Repeat for Google Chrome.

Google Chrome finishes the test in under 2.5 seconds.  Mozilla Firefox usually takes 4 to 5 seconds to finish.

My guesses as to where this might be slow:
* JavaScript Proxy objects.  The es-membrane library depends on them critically, and they are probably less well-explored than other parts.
* Layout.  The test generates a dot for each passing test.  There's almost 1500 tests in this version of the library.

Tested on both Fedora 28 Linux (trunk) and MacOS 10.13.4 (FF60).
Summary: Firefox is twice as slow as Google Chrome running es-membrane → Firefox is twice as slow as Google Chrome running es-membrane tests
Could you share a performance profile using profilers share button?
Flags: needinfo?(ajvincent)
But based on the attached profile, this is almost all in JS.

Some styling too, which is a bit surprising.
Component: General → JavaScript Engine
The styling time is because this build isn't an --enable-release build and has Rust opt-level = 1, which means Rust code is not really properly optimized.
I tried uploading via perf-html.io, but the upload never finished.

Per discussion with emilio on irc, --enable-release should've solved the Rust opt-level problem as well.
Attachment #8978037 - Attachment is obsolete: true
Flags: needinfo?(ajvincent)
Whiteboard: [qf] → [qf:f64][qf:p3]
Whiteboard: [qf:f64][qf:p3] → [qf:p3:f64]
https://perfht.ml/2Ng5lnF for a profile generated with a local build of mozilla-central tonight (FF64, Linux)
See Also: → 1172313
Priority: -- → P3
Whiteboard: [qf:p3:f64] → [qf:p3]
The testcase depends heavily on Jasmine.  A performance hit there could be a large part of whatever performance hit is happening here.
Depends on: 1265980

Mass-removing myself from cc; search for 12b9dfe4-ece3-40dc-8d23-60e179f64ac1 or any reasonable part thereof, to mass-delete these notifications (and sorry!)

Performance Impact: --- → P3
Whiteboard: [qf:p3]
Severity: normal → S3

Testing on V0.9 :

Nightly: https://share.firefox.dev/3YEZg6m (0.72 seconds without profiler)
Chrome: 0.85 seconds

Hm, I should've closed this bug as I haven't put out a new release of es-membrane in years... I'm working on a complete rewrite of the project.

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: