Bug 1560343 Comment 4 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

Trying to dig into more of what's actually causing the slowdown / improvement for win64 startup_about_home_paint…

stub ReactIntl.FormattedMessage
-7.94% win64
-9.09% win64-qr
https://treeherder.mozilla.org/perf.html#/compare?originalProject=mozilla-central&originalRevision=2901d32eddaa6accd04b30725c7307338e94f48f&newProject=try&newRevision=3b10306002818e4b4e5bb815953c466c8860297e&showOnlyImportant=1&showOnlyConfident=1

stub ReactIntl.injectIntl
-8.76% win64
-8.51% win64-qr
https://treeherder.mozilla.org/perf.html#/compare?originalProject=mozilla-central&originalRevision=2901d32eddaa6accd04b30725c7307338e94f48f&newProject=try&newRevision=a2595c91882010865d1348116f49491bc3af526b&showOnlyImportant=1&showOnlyConfident=1

stub ReactIntl.FormattedMessage and ReactIntl.injectIntl
-10.25% win64
-9.26% win64-qr
https://treeherder.mozilla.org/perf.html#/compare?originalProject=mozilla-central&originalRevision=2901d32eddaa6accd04b30725c7307338e94f48f&newProject=try&newRevision=4f36d7fe2106b58f6d0d2a761b833b134ebd1bf1&showOnlyImportant=1&showOnlyConfident=1

stub ReactIntl.IntlProvider, ReactIntl.FormattedMessage and ReactIntl.injectIntl
-10.60% win64
-9.20% win64-qr
https://treeherder.mozilla.org/perf.html#/compare?originalProject=mozilla-central&originalRevision=2901d32eddaa6accd04b30725c7307338e94f48f&newProject=try&newRevision=d09664542dcb38375c82b35546d680e864b1d0cb&showOnlyImportant=1&showOnlyConfident=1


And with the changes from that last try, here's a startup profile from my machine:
https://perfht.ml/2Rv8eR4
filtering javascript privileged content stack for "activity-stream.bundle":
303ms total = 278ms bound + 24ms onLoaded + 1ms intersection
and filtering for "react-intl":
6ms total = 4ms bound + 2ms onLoaded

And from the reference m-c commit (Bug 1560527 - Enable make backend verbose mode automatically…):
https://perfht.ml/2RuL655
activity-stream.bundle:
334ms total = 298ms bound + 33ms onLoaded + 3ms intersection
react-intl:
34ms total = 27ms bound + 7ms onLoaded

Which seems to match up with roughly 10% of activity-stream.bundle running time associated to react-intl… ?

The function with most time (18ms of 27ms) associated to react-intl is not surprisingly, FormattedMessage.render:
https://github.com/formatjs/react-intl/blob/v2.9.0/src/components/message.js#L77
Where it looks to parse/tokenize then cache various strings and values/placeables in js.

So overall I guess one benefit of fluent-dom is that it's handled lower than js.
Trying to dig into more of what's actually causing the slowdown / improvement for win64 startup_about_home_paint…

stub ReactIntl.FormattedMessage
-7.94% win64
-9.09% win64-qr
https://treeherder.mozilla.org/perf.html#/compare?originalProject=mozilla-central&originalRevision=2901d32eddaa6accd04b30725c7307338e94f48f&newProject=try&newRevision=3b10306002818e4b4e5bb815953c466c8860297e&showOnlyImportant=1&showOnlyConfident=1

stub ReactIntl.injectIntl
-8.76% win64
-8.51% win64-qr
https://treeherder.mozilla.org/perf.html#/compare?originalProject=mozilla-central&originalRevision=2901d32eddaa6accd04b30725c7307338e94f48f&newProject=try&newRevision=a2595c91882010865d1348116f49491bc3af526b&showOnlyImportant=1&showOnlyConfident=1

stub ReactIntl.FormattedMessage and ReactIntl.injectIntl
-10.25% win64
-9.26% win64-qr
https://treeherder.mozilla.org/perf.html#/compare?originalProject=mozilla-central&originalRevision=2901d32eddaa6accd04b30725c7307338e94f48f&newProject=try&newRevision=4f36d7fe2106b58f6d0d2a761b833b134ebd1bf1&showOnlyImportant=1&showOnlyConfident=1

stub ReactIntl.IntlProvider, ReactIntl.FormattedMessage and ReactIntl.injectIntl
-10.60% win64
-9.20% win64-qr
https://treeherder.mozilla.org/perf.html#/compare?originalProject=mozilla-central&originalRevision=2901d32eddaa6accd04b30725c7307338e94f48f&newProject=try&newRevision=d09664542dcb38375c82b35546d680e864b1d0cb&showOnlyImportant=1&showOnlyConfident=1

---

And with the changes from that last try, here's a startup profile from my machine:
https://perfht.ml/2Rv8eR4
filtering javascript privileged content stack for "activity-stream.bundle":
303ms total = 278ms bound + 24ms onLoaded + 1ms intersection
and filtering for "react-intl":
6ms total = 4ms bound + 2ms onLoaded

And from the reference m-c commit (Bug 1560527 - Enable make backend verbose mode automatically…):
https://perfht.ml/2RuL655
activity-stream.bundle:
334ms total = 298ms bound + 33ms onLoaded + 3ms intersection
react-intl:
34ms total = 27ms bound + 7ms onLoaded

Which seems to match up with roughly 10% of activity-stream.bundle running time associated to react-intl… ?

The function with most time (18ms of 27ms) associated to react-intl is not surprisingly, FormattedMessage.render:
https://github.com/formatjs/react-intl/blob/v2.9.0/src/components/message.js#L77
Where it looks to parse/tokenize then cache various strings and values/placeables in js.

So overall I guess one benefit of fluent-dom is that it's handled lower than js.

Back to Bug 1560343 Comment 4