Implement associativity in AtomCacheHashTable
Categories
(Core :: JavaScript Engine, enhancement, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox128 | --- | fixed |
People
(Reporter: jlink, Assigned: jlink)
References
(Blocks 2 open bugs)
Details
(Whiteboard: [sp3])
Attachments
(1 file)
In bug 1879143, the per-zone atom cache was switched to use AtomCacheHashTable. Further investigations, including from the regression reported in bug 1888676, have shown the further improvements are possible by making this cache be associative.
SP3 results are pretty much universally positive with this change: 2k cache w/ 2-way associativity, 2k cache w/ 2-way associativity, 2k cache with 4-way associativity.
DAMP results (which can be seen in those comparison results, for example here) are decidedly more mixed - some tests get significantly better with high confidence and some get significantly worse with high confidence. That some tests get so much worse with an associative test is unexpected so further investigation on why this is is warranted.
Assignee | ||
Updated•9 months ago
|
Assignee | ||
Updated•9 months ago
|
Updated•9 months ago
|
Assignee | ||
Updated•8 months ago
|
Assignee | ||
Comment 1•8 months ago
|
||
Assignee | ||
Comment 2•8 months ago
•
|
||
SP3 is pretty happy with this change. All 11 high confidence subtest results are improvements in the range of 0.8-1.5%. There are an additional 23 medium confidence subtest changes, all of which are improvements as well. A number of those improvements are > 2%.
DAMP results are a mixed bag with some very high confidence improvements, in particular in source-map.constructor.DAMP which improves by almost 10%.
Comment 4•8 months ago
|
||
bugherder |
Updated•8 months ago
|
Updated•8 months ago
|
Comment 5•8 months ago
|
||
Perfherder has detected a devtools performance change from push 3686af33e2b0239c18e257f45d13bb2399e8c6fb.
Improvements:
Ratio | Test | Platform | Options | Absolute values (old vs new) |
---|---|---|---|---|
9% | damp source-map.constructor.DAMP | windows10-64-shippable-qr | e10s fission stylo webrender | 107.07 -> 97.35 |
9% | damp source-map.constructor.DAMP | windows10-64-shippable-qr | e10s fission stylo webrender | 106.90 -> 97.39 |
8% | damp source-map.constructor.DAMP | windows10-64-shippable-qr | e10s fission stylo webrender-sw | 103.87 -> 95.35 |
6% | damp source-map.constructor.DAMP | linux1804-64-shippable-qr | e10s fission stylo webrender | 124.22 -> 116.21 |
Details of the alert can be found in the alert summary, including links to graphs and comparisons for each of the affected tests.
If you need the profiling jobs you can trigger them yourself from treeherder job view or ask a sheriff to do that for you.
You can run these tests on try with ./mach try perf --alert 392
For more information on performance sheriffing please see our FAQ.
Description
•