evancz / react-angular-ember-elm-performance-comparison

Comparing performance of Elm, React, Angular, and Ember
BSD 3-Clause "New" or "Revised" License
91 stars 39 forks source link

Firefox's benchmark results differ considerably compared to chrome #4

Closed arielschiavoni closed 8 years ago

arielschiavoni commented 8 years ago

Hi @evancz amazing work with Elm 👍 I am really looking forward to add some Elm at work.

I found that the benchmark results differ in a considerable way when I tried it in Firefox.

Environment:

Firefox 48.0.2

performancecomparison_firefox48

As you can see in the screenshot Angular 2 is the winner in both naive and optimized implementation. Also it is quite strange why there such a big performance difference in almost all implementation, they are approx. 2X slower in firefox than in chrome.

Chrome 52

performancecomparison_chrome52
arielschiavoni commented 8 years ago

My fault, I have just read the README.md and I found the link to the comparison between the different browsers.

https://github.com/evancz/react-angular-ember-elm-performance-comparison/tree/master/graphs

Thanks.

evancz commented 8 years ago

Yeah, I noticed that as well. Firefox is crazily slower than the rest, and I'm not sure why.

In the past, it was true that Firefox did not have a generational garbage collector (or did not mark-sweep?) and that made it behave very different than Chrome with immutable stuff. So the Angular 2 vs Elm may be accounted for by differences in GC, but I don't know if the GC situation has changed over there since I last heard up-to-date information!

As to why it is so much slower when you do React-vs-React or Elm-vs-Elm on different browsers, I really have no clear concept. I'd expect that's due to the underlying DOM implementation, but that is just speculation.

If there's something that needs changing, let's open a new issue about that specifically!