emberjs / ember.js

Ember.js - A JavaScript framework for creating ambitious web applications
https://emberjs.com
MIT License
22.45k stars 4.21k forks source link

10-20% performance regression between 5.9 and 5.10 #20719

Open davidtaylorhq opened 1 month ago

davidtaylorhq commented 1 month ago

🐞 Describe the Bug

emberperf (https://emberperf.discourse.org/, https://github.com/discourse/ember-performance) has identified a performance regression between Ember 5.9 and 5.10. This is in addition to the earlier (and more significant) glimmer-vm regression being tracked in https://github.com/glimmerjs/glimmer-vm/issues/1590.

reg1

Running against individual commits between 5.9 and 5.10 shows:

reg2

This suggests that the performance regression was introduced in 53b2de8e (cc @ef4)

🔬 Minimal Reproduction

Released ember versions can be tested at https://emberperf.discourse.org/. Enable the "Render Complex List (Glimmer)" test, and choose Ember versions to test.

The version of emberperf with per-commit tests can be found at https://github.com/discourse/ember-performance/pull/7

ef4 commented 1 month ago

I'll take a look.

(My first impression of the benchmarking suite: it sure is tied to the non-ES-modules way of doing things that we're trying to deprecate.)