Closed Bug 1821137 Opened 2 years ago Closed 2 years ago

EmberJS-TodoMVC spends a lot of time in js::NativeObject::ensureDenseElements during addToListeners

Categories

(Core :: JavaScript Engine, task, P2)

task

Tracking

()

RESOLVED WONTFIX

People

(Reporter: mstange, Unassigned)

References

(Blocks 1 open bug)

Details

In the function addToListeners in the EmberJS-TodoMVC benchmark, we spend 2250 samples inside Array.prototype.push versus V8's 121 samples.

To reproduce, run index.js inside https://github.com/mozilla/Speedometer/tree/ab0e3b8406bbc0356244f8cd430900e9a346737b/resources/todomvc/architecture-examples/emberjs/dist in the JS shell.

Profiles (focused on addToListeners's "JS-only self time"):
Spidermonkey: https://share.firefox.dev/3LaxwBU
V8: https://share.firefox.dev/41VPJJr

A lot of Spidermonkey's push time is spent in ensureDenseElements.

We spend a fair amount of time growing the dense elements. There's also some slots store buffer time.

Blocks: 1801194
Type: defect → task
Priority: -- → P2

EmberJS has been removed from sp3. Does the issue show up in other tests?

Flags: needinfo?(mstange.moz)

I haven't seen it stand in other tests. I'll reopen this bug if I find evidence that it matters.

No longer blocks: speedometer3
Status: NEW → RESOLVED
Closed: 2 years ago
Flags: needinfo?(mstange.moz)
Resolution: --- → WONTFIX
Whiteboard: [sp3]
You need to log in before you can comment on or make changes to this bug.