Bug 1339557 (Speedometer_V2)

[Meta] Quantum Release Criteria: Figure out why we are so slow on Speedometer v2

NEW
Unassigned

Status

()

Core
JavaScript Engine
6 months ago
4 days ago

People

(Reporter: Ehsan, Unassigned)

Tracking

(Depends on: 32 bugs, Blocks: 1 bug, {meta})

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [qf:investigate][qf:meta], URL)

See <https://twitter.com/bz_moz/status/831585613258379265>

We have looked at this before a bit, see bug 1245279 and bug 1022988.  We need to profile again and find out why we are so slow.  This is important since this test executes a bunch of popular frameworks.

Andrew, can we find an owner for this please?
Flags: needinfo?(overholt)
Let me work on it.
Depends on: 1339593
I spent a bit of time looking at some random profiles from a long Speedometer run and all I can see is JS.  Perhaps someone on the JS team would be a better candidate.
Component: DOM → JavaScript Engine
Flags: needinfo?(nihsanullah)
Depends on: 1245279

Comment 3

6 months ago
Marked improvement overnight after fix via bug: 1339535

My fiber today is shocking for some reason, but still seeing a ~35% speed improvement. Testing in another location in around an hour.

Arch Linux rolling release. Nightly 2017-02-28 vs 2017-02-27. Dell Latitude E4300 16Gb RAM.
Flags: needinfo?(nihsanullah)
Whiteboard: [qf:investigate][qf:p1]
Flags: needinfo?(overholt)

Updated

5 months ago
Depends on: 1346723

Updated

5 months ago
Depends on: 1347525

Comment 4

5 months ago
Despite improvements to Nightly, which I've experienced on my laptop since Feb 27, testing is now shockingly slow on a Galaxy Tab A (9.7) running Fx55. Speedometer test been running for 45 mins and not yet half way :(

Updated

5 months ago
Whiteboard: [qf:investigate][qf:p1] → [qf:investigate][qf:meta]

Updated

3 months ago
Depends on: 1366250
Alias: Speedometer_V2
Keywords: meta
Summary: Figure out why we are so slow on Speedometer → [Meta] Figure out why we are so slow on Speedometer v2
Depends on: 1356315
Depends on: 1364854
Depends on: 1346546
Depends on: 1364908
Depends on: 1349924
Depends on: 900784
Depends on: 1022714
Depends on: 1022988
Depends on: 1245294
Depends on: 1355472
Depends on: 1363438

Comment 5

3 months ago
Can we put a link to the v2 speedometer in this bug?  Not sure where it lives.
Depends on: 1357862
I added it to the URL field of this bug.
Depends on: 1363829

Updated

3 months ago
Blocks: 1366777

Updated

3 months ago
No longer blocks: 1366777
Depends on: 1366803
Depends on: 903519
Depends on: 1367458
Depends on: 1349255
Depends on: 1338802

Updated

3 months ago
Alias: Speedometer_V2 → QRC_Speedometer_V2
Summary: [Meta] Figure out why we are so slow on Speedometer v2 → [Meta] Quantum Release Criteria: Figure out why we are so slow on Speedometer v2
Depends on: 1351769
Depends on: 1365361
Depends on: 1366263
Depends on: 1366375
Depends on: 1366377

Updated

3 months ago
Alias: QRC_Speedometer_V2 → Speedometer_V2
Depends on: 1364805
Blocks: 1325169
No longer blocks: 1337841

Comment 7

3 months ago
According to bug 1347525 slow InnerHTML is the main reason for Firefox's slowness in Speedometer. This was resolved, but Speedometer is still at best only half as fast as in Chrome for me. 

With an i7 6700k I get 199 runs/minute in Chrome, 98 runs/minute in Firefox. This scales down with CPU power, on an i5 6200U I get 42 runs/minute with Firefox, 88 with Chrome.

How relevant is Speedometer for Gecko, anyway? V8 describes it as a great tool for measuring real world performance, however in bug 1347525 comment #3 seems to suggest otherwise.
(In reply to TMart from comment #7)
> According to bug 1347525 slow InnerHTML is the main reason for Firefox's
> slowness in Speedometer.

I never said that. In that bug I was talking about one of the subtests, but there are a lot of these and we knew fixing that bug would not magically fix everything.

> With an i7 6700k I get 199 runs/minute in Chrome, 98 runs/minute in Firefox.
> This scales down with CPU power, on an i5 6200U I get 42 runs/minute with
> Firefox, 88 with Chrome.

This might be better with Speedometer v2.

> How relevant is Speedometer for Gecko, anyway? V8 describes it as a great
> tool for measuring real world performance, however in bug 1347525 comment #3
> seems to suggest otherwise.

There are a bunch of silly things for sure. Overall it's not an unreasonable benchmark though and so far almost all performance issues we found/fixed will help real-world websites too.
Duplicate of this bug: 1022239

Updated

3 months ago
Depends on: 1369140

Updated

3 months ago
No longer depends on: 1363829

Updated

3 months ago
Depends on: 1364816
Depends on: 1369587
No longer depends on: 1369587

Updated

3 months ago
Blocks: 1370336

Updated

3 months ago
No longer blocks: 1325169
Depends on: 1371097
Depends on: 1372794
Depends on: 1372974
Depends on: 1373063
Depends on: 1373672
Depends on: 1373723
Depends on: 1374033

Updated

2 months ago
Depends on: 1374112

Updated

2 months ago
Depends on: 1374119
Depends on: 1374416

Updated

2 months ago
Depends on: 1373079
Depends on: 1374892
Depends on: 1375568

Comment 10

2 months ago
The machine that runs speedometer got this morning a change that will make the score of speedometer improve (bug 1373396).

I don't know how it will affect the score of Chrome but we will know later today. AWFY is currently running:
https://arewefastyet.com/#machine=36&view=breakdown&suite=speedometer-misc

Also note that we currently run non-PGO builds for speedometer which could mean that our score could even be a bit higher.
Depends on: 1375573
Depends on: 1375599
Depends on: 1375619
Depends on: 1375331
Depends on: 1375701
Depends on: 1375741
Depends on: 1373396
Depends on: 1376323
Depends on: 1376334
Depends on: 1365970

Updated

2 months ago
Depends on: 1376511
Depends on: 1376544
Depends on: 1376580
Depends on: 1376594
Depends on: 1376603

Updated

2 months ago
Depends on: 1376614
Depends on: 1343005
Depends on: 1376695
Depends on: 1376698
Depends on: 1376936

Updated

2 months ago
Depends on: 1376954

Updated

2 months ago
Depends on: 1377131

Updated

2 months ago
Depends on: 1377264
Depends on: 1377818
Depends on: 1377999

Updated

a month ago
Depends on: 1380061
I see PollWrapper() in profiles, has anyone tried to understand why? Like is it the test designed to short break between runs, or is it firefox waiting on something?
(In reply to Ting-Yu Chou [:ting] from comment #11)
> I see PollWrapper() in profiles, has anyone tried to understand why? Like is
> it the test designed to short break between runs, or is it firefox waiting
> on something?

The test schedules a lot of asychronous work, such as loading web pages from the network, but it doesn't measure the entire time that it runs.  See this function for what the benchmark really measures: https://github.com/WebKit/webkit/blob/057552ca85b3efd9c97d13a0f044abd0daba7526/PerformanceTests/Speedometer/resources/benchmark-runner.js#L121
Depends on: 1382914
Depends on: 1384222
Depends on: 1383358
Depends on: 1384588
Depends on: 1384717
Depends on: 1384798

Updated

26 days ago
Depends on: 1384840

Updated

25 days ago
Depends on: 1385165

Updated

25 days ago
Depends on: 1385181
Depends on: 1373476
The previous Speedtest v2 URL showed a "Not Found" page. I have been told that this is the correct URL to use (despite a page title of "Speedtest 1.0", which I'm told is incorrect).
No longer depends on: 1384798
Depends on: 714455
Depends on: 1390626
Depends on: 1390928
No longer depends on: 714455
Depends on: 1391298
Depends on: 651120
You need to log in before you can comment on or make changes to this bug.