Intent to move Activity Stream into its own process
(posted on both dev-platform and firefox-dev. Please send replies to dev-platform) Hello all, Just sending a quick note to let you know that I've filed bug 1469072[1] to move Activity Stream into its own content process. This is something that Fission needs, but we're hoping to squeeze some performance benefits out of it as well by reducing, reusing and recycling various Activity Stream things since they'll all be contained within a single process. It might also allow us to cache more Activity Stream scripts in ScriptPreloader[2], since we can reasonably assume only trusted JavaScript will be running within the Activity Stream content process. This work is going to be handled by my intern, Jay Lim. If you have any concerns with this plan, please bring them to my attention - commenting in the bug, emailing me, or responding to this thread on dev-platform is fine. Thanks! -Mike [1]: https://bugzilla.mozilla.org/show_bug.cgi?id=1469072 [2]: I wrote about ScriptPreloader on my blog here: https://mikeconley.ca/blog/2018/05/30/firefox-performance-update-9/ ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Intent to move Activity Stream into its own process
+1 This should also have some memory benefits by preventing us from unnecessarily loading AS things into multiple content processes, like we do now. On Mon, Jun 18, 2018 at 03:35:01PM -0400, Mike Conley wrote: (posted on both dev-platform and firefox-dev. Please send replies to dev-platform) Hello all, Just sending a quick note to let you know that I've filed bug 1469072[1] to move Activity Stream into its own content process. This is something that Fission needs, but we're hoping to squeeze some performance benefits out of it as well by reducing, reusing and recycling various Activity Stream things since they'll all be contained within a single process. It might also allow us to cache more Activity Stream scripts in ScriptPreloader[2], since we can reasonably assume only trusted JavaScript will be running within the Activity Stream content process. This work is going to be handled by my intern, Jay Lim. If you have any concerns with this plan, please bring them to my attention - commenting in the bug, emailing me, or responding to this thread on dev-platform is fine. Thanks! -Mike [1]: https://bugzilla.mozilla.org/show_bug.cgi?id=1469072 [2]: I wrote about ScriptPreloader on my blog here: https://mikeconley.ca/blog/2018/05/30/firefox-performance-update-9/ ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Intent to move Activity Stream into its own process
Hey, This sounds really interesting. However, wouldn't this mean that we will do a process switch for the tab's browser whenever we load a URL in the same tab that has AS in it? Or would you still intend to run the actual AS new tab page in a "normal" tab process? If it *would* mean a process switch, we may want to take another look at some of the bugs relating to those (process switches are currently relatively rare) and re-prioritize them. ~ Gijs On 18/06/2018 20:35, Mike Conley wrote: (posted on both dev-platform and firefox-dev. Please send replies to dev-platform) Hello all, Just sending a quick note to let you know that I've filed bug 1469072[1] to move Activity Stream into its own content process. This is something that Fission needs, but we're hoping to squeeze some performance benefits out of it as well by reducing, reusing and recycling various Activity Stream things since they'll all be contained within a single process. It might also allow us to cache more Activity Stream scripts in ScriptPreloader[2], since we can reasonably assume only trusted JavaScript will be running within the Activity Stream content process. This work is going to be handled by my intern, Jay Lim. If you have any concerns with this plan, please bring them to my attention - commenting in the bug, emailing me, or responding to this thread on dev-platform is fine. Thanks! -Mike [1]: https://bugzilla.mozilla.org/show_bug.cgi?id=1469072 [2]: I wrote about ScriptPreloader on my blog here: https://mikeconley.ca/blog/2018/05/30/firefox-performance-update-9/ ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Intent to move Activity Stream into its own process
On Mon, Jun 18, 2018 at 09:19:18PM +0100, Gijs Kruitbosch wrote: Hey, This sounds really interesting. However, wouldn't this mean that we will do a process switch for the tab's browser whenever we load a URL in the same tab that has AS in it? Or would you still intend to run the actual AS new tab page in a "normal" tab process? If it *would* mean a process switch, we may want to take another look at some of the bugs relating to those (process switches are currently relatively rare) and re-prioritize them. It will definitely need to mean a process switch. For the sake of Fission, we really need to never run content JS in the same process that AS runs in. And for the sake of content process memshrink, we really need to not load AS into multiple content processes. On 18/06/2018 20:35, Mike Conley wrote: (posted on both dev-platform and firefox-dev. Please send replies to dev-platform) Hello all, Just sending a quick note to let you know that I've filed bug 1469072[1] to move Activity Stream into its own content process. This is something that Fission needs, but we're hoping to squeeze some performance benefits out of it as well by reducing, reusing and recycling various Activity Stream things since they'll all be contained within a single process. It might also allow us to cache more Activity Stream scripts in ScriptPreloader[2], since we can reasonably assume only trusted JavaScript will be running within the Activity Stream content process. This work is going to be handled by my intern, Jay Lim. If you have any concerns with this plan, please bring them to my attention - commenting in the bug, emailing me, or responding to this thread on dev-platform is fine. Thanks! -Mike [1]: https://bugzilla.mozilla.org/show_bug.cgi?id=1469072 [2]: I wrote about ScriptPreloader on my blog here: https://mikeconley.ca/blog/2018/05/30/firefox-performance-update-9/ ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Intent to move Activity Stream into its own process
On Mon, Jun 18, 2018 at 3:20 PM Gijs Kruitbosch wrote: > If it *would* mean a process switch, we may want to take another look at > some of the bugs relating to those (process switches are currently > relatively rare) and re-prioritize them. > I am not sure about the specific AS work here, but for the general case, I believe that Fission intends to cause a process switch anytime a tab navigates to an unrelated origin, so this will also increase the frequency of process switching. So, it would seem that any issues around process switching would be good to triage again, either because of the AS work or the more general Fission plans. - Ryan ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Intent to move Activity Stream into its own process
> > I am not sure about the specific AS work here, but for the general case, I > believe that Fission intends to cause a process switch anytime a tab > navigates to an unrelated origin, so this will also increase the frequency > of process switching. > Yep, this matches my understanding: we're going to be process flipping a lot as we move from Activity Stream -> Web Page, and also as we move from Web Page at Origin A to Web Page at Origin B. Our process flipping code is going to get exercised pretty hard, so we'll certainly want to surface and fix any serious problems there. If you have process-flipping bugs in mind that you think are particularly bad, I recommend getting them into the bug 1451850 tree somehow. I'll happily look over bugs with you (Gijs) if you have a list. -Mike On Mon, 18 Jun 2018 at 16:31, J. Ryan Stinnett wrote: > On Mon, Jun 18, 2018 at 3:20 PM Gijs Kruitbosch > wrote: > > > If it *would* mean a process switch, we may want to take another look at > > some of the bugs relating to those (process switches are currently > > relatively rare) and re-prioritize them. > > > > I am not sure about the specific AS work here, but for the general case, I > believe that Fission intends to cause a process switch anytime a tab > navigates to an unrelated origin, so this will also increase the frequency > of process switching. > > So, it would seem that any issues around process switching would be good to > triage again, either because of the AS work or the more general Fission > plans. > > - Ryan > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform > ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Intent to move Activity Stream into its own process
Do you have a sense of how this is going to be implemented? Is there going to be specialized code for this, or is it going to be handled by all the general navigation changes for process-switching when you change sites? Alex On Mon, Jun 18, 2018 at 5:02 PM Mike Conley wrote: > > > > I am not sure about the specific AS work here, but for the general case, > I > > believe that Fission intends to cause a process switch anytime a tab > > navigates to an unrelated origin, so this will also increase the > frequency > > of process switching. > > > > Yep, this matches my understanding: we're going to be process flipping a > lot as we move from Activity Stream -> Web Page, and also as we move from > Web Page at Origin A to Web Page at Origin B. Our process flipping code is > going to get exercised pretty hard, so we'll certainly want to surface and > fix any serious problems there. > > If you have process-flipping bugs in mind that you think are particularly > bad, I recommend getting them into the bug 1451850 tree somehow. I'll > happily look over bugs with you (Gijs) if you have a list. > > -Mike > > On Mon, 18 Jun 2018 at 16:31, J. Ryan Stinnett wrote: > > > On Mon, Jun 18, 2018 at 3:20 PM Gijs Kruitbosch < > gijskruitbo...@gmail.com> > > wrote: > > > > > If it *would* mean a process switch, we may want to take another look > at > > > some of the bugs relating to those (process switches are currently > > > relatively rare) and re-prioritize them. > > > > > > > I am not sure about the specific AS work here, but for the general case, > I > > believe that Fission intends to cause a process switch anytime a tab > > navigates to an unrelated origin, so this will also increase the > frequency > > of process switching. > > > > So, it would seem that any issues around process switching would be good > to > > triage again, either because of the AS work or the more general Fission > > plans. > > > > - Ryan > > ___ > > dev-platform mailing list > > dev-platform@lists.mozilla.org > > https://lists.mozilla.org/listinfo/dev-platform > > > ___ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform > ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Intent to move Activity Stream into its own process
Hi Alex, Yes, I expect this to plug into the same process handling infrastructure that we already have for now. I also expect that we'll find some room for optimization while we're stomping around in this area. -Mike On Tue, 19 Jun 2018 at 09:13, Alex Gaynor wrote: > Do you have a sense of how this is going to be implemented? Is there going > to be specialized code for this, or is it going to be handled by all the > general navigation changes for process-switching when you change sites? > > Alex > > On Mon, Jun 18, 2018 at 5:02 PM Mike Conley wrote: > >> > >> > I am not sure about the specific AS work here, but for the general >> case, I >> > believe that Fission intends to cause a process switch anytime a tab >> > navigates to an unrelated origin, so this will also increase the >> frequency >> > of process switching. >> > >> >> Yep, this matches my understanding: we're going to be process flipping a >> lot as we move from Activity Stream -> Web Page, and also as we move from >> Web Page at Origin A to Web Page at Origin B. Our process flipping code is >> going to get exercised pretty hard, so we'll certainly want to surface and >> fix any serious problems there. >> >> If you have process-flipping bugs in mind that you think are particularly >> bad, I recommend getting them into the bug 1451850 tree somehow. I'll >> happily look over bugs with you (Gijs) if you have a list. >> >> -Mike >> >> On Mon, 18 Jun 2018 at 16:31, J. Ryan Stinnett wrote: >> >> > On Mon, Jun 18, 2018 at 3:20 PM Gijs Kruitbosch < >> gijskruitbo...@gmail.com> >> > wrote: >> > >> > > If it *would* mean a process switch, we may want to take another look >> at >> > > some of the bugs relating to those (process switches are currently >> > > relatively rare) and re-prioritize them. >> > > >> > >> > I am not sure about the specific AS work here, but for the general >> case, I >> > believe that Fission intends to cause a process switch anytime a tab >> > navigates to an unrelated origin, so this will also increase the >> frequency >> > of process switching. >> > >> > So, it would seem that any issues around process switching would be >> good to >> > triage again, either because of the AS work or the more general Fission >> > plans. >> > >> > - Ryan >> > ___ >> > dev-platform mailing list >> > dev-platform@lists.mozilla.org >> > https://lists.mozilla.org/listinfo/dev-platform >> > >> ___ >> dev-platform mailing list >> dev-platform@lists.mozilla.org >> https://lists.mozilla.org/listinfo/dev-platform >> > ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Intent to move Activity Stream into its own process
On Tue, Jun 19, 2018 at 06:26:11PM +0200, Dão Gottwald wrote: This is about the code behind about:newtab and about:home, yes? Or some broader Activity Stream magic? Activity Stream has become kind of a fuzzy term, to the point where I'm not sure anymore what it means. This is about about:home and about:newtab, yes. There will still be Activity Stream code in the main process, but those pages will move from an ordinary content process to their own content process. 2018-06-18 21:58 GMT+02:00 Kris Maglione : +1 This should also have some memory benefits by preventing us from unnecessarily loading AS things into multiple content processes, like we do now. On Mon, Jun 18, 2018 at 03:35:01PM -0400, Mike Conley wrote: (posted on both dev-platform and firefox-dev. Please send replies to dev-platform) Hello all, Just sending a quick note to let you know that I've filed bug 1469072[1] to move Activity Stream into its own content process. This is something that Fission needs, but we're hoping to squeeze some performance benefits out of it as well by reducing, reusing and recycling various Activity Stream things since they'll all be contained within a single process. It might also allow us to cache more Activity Stream scripts in ScriptPreloader[2], since we can reasonably assume only trusted JavaScript will be running within the Activity Stream content process. This work is going to be handled by my intern, Jay Lim. If you have any concerns with this plan, please bring them to my attention - commenting in the bug, emailing me, or responding to this thread on dev-platform is fine. Thanks! -Mike [1]: https://bugzilla.mozilla.org/show_bug.cgi?id=1469072 [2]: I wrote about ScriptPreloader on my blog here: https://mikeconley.ca/blog/2018/05/30/firefox-performance-update-9/ ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform
Re: Intent to move Activity Stream into its own process
This is about the code behind about:newtab and about:home, yes? Or some broader Activity Stream magic? Activity Stream has become kind of a fuzzy term, to the point where I'm not sure anymore what it means. 2018-06-18 21:58 GMT+02:00 Kris Maglione : > +1 > > This should also have some memory benefits by preventing us from > unnecessarily loading AS things into multiple content processes, like we do > now. > > > On Mon, Jun 18, 2018 at 03:35:01PM -0400, Mike Conley wrote: > >> (posted on both dev-platform and firefox-dev. Please send replies to >> dev-platform) >> >> Hello all, >> >> Just sending a quick note to let you know that I've filed bug 1469072[1] >> to >> move Activity Stream into its own content process. >> >> This is something that Fission needs, but we're hoping to squeeze some >> performance benefits out of it as well by reducing, reusing and recycling >> various Activity Stream things since they'll all be contained within a >> single process. It might also allow us to cache more Activity Stream >> scripts in ScriptPreloader[2], since we can reasonably assume only trusted >> JavaScript will be running within the Activity Stream content process. >> >> This work is going to be handled by my intern, Jay Lim. If you have any >> concerns with this plan, please bring them to my attention - commenting in >> the bug, emailing me, or responding to this thread on dev-platform is >> fine. >> >> Thanks! >> >> -Mike >> >> [1]: https://bugzilla.mozilla.org/show_bug.cgi?id=1469072 >> [2]: I wrote about ScriptPreloader on my blog here: >> https://mikeconley.ca/blog/2018/05/30/firefox-performance-update-9/ >> > ___ > firefox-dev mailing list > firefox-...@mozilla.org > https://mail.mozilla.org/listinfo/firefox-dev > ___ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform