Long GC times while loading Facebook newsfeed




JavaScript: GC
2 years ago
5 months ago


(Reporter: vladan, Unassigned)


(Blocks: 1 bug)

49 Branch

Firefox Tracking Flags

(platform-rel -, firefox49 affected)


(Whiteboard: [qf: investigate: p1][platform-rel-Facebook])


(2 attachments)



2 years ago
I observed some long GC times while loading the Facebook.com newsfeed: ~300ms of GC for the facebook.com page which loads in 2 seconds on my i7 MacBook Pro. Similar behaviour on Windows.

See attached logs.

Comment 1

2 years ago
Created attachment 8751486 [details]
GC log: facebook.com homepage on Windows

Comment 2

2 years ago
Created attachment 8751488 [details]
GC devtools console log

Comment 4

2 years ago
<vladan> did you see anything interesting in that log?
<sfink> anyway, there wasn't anything huge, but one slice missed its 40ms target (took 67ms), which we should probably clean up
<sfink> and given that you're timing initial page load, I'm guessing that the incremental slices aren't doing you any favors to begin with
<sfink> I'm not sure how much overhead they induce, but if it's significant, it might be worth knowing that yielding to the mutator isn't going to do any good yet
<sfink> and then there were some suspiciously long sweep phases
<sfink> they may be the most actionable
<sfink> it looked like GC/CC interaction (gray marking)
Whiteboard: [platform-rel-Facebook]


2 years ago
platform-rel: --- → ?


2 years ago
platform-rel: ? → +


2 years ago
Blocks: 1288602
plat-rel changed to - as we're already tracking the meta as priority
platform-rel: + → -
Is there anything we can do here, Steve or Olli? Will any of the recent GC changes have a positive effect?
Flags: needinfo?(sphink)
Flags: needinfo?(bugs)
Is this still happening? Especially when e10s is enabled?
Nightly should trigger way more zone GCs which should be faster than full GCs.
Flags: needinfo?(bugs) → needinfo?(vladan.bugzilla)
What is the STR here? Load Facebook when logged in? Or does newsfeed mean something else than the frontpage there?
Whiteboard: [platform-rel-Facebook] → [qf: investigate: p1][platform-rel-Facebook]

Comment 9

a year ago
(In reply to Olli Pettay [:smaug] (work week, slower than usual reviews) from comment #8)
> What is the STR here? Load Facebook when logged in? Or does newsfeed mean
> something else than the frontpage there?

I can no longer reproduce the long GC times in Nightly, perhaps it has something to do with e10s or longer-running sessions. currently I see about 50-100ms GC in the parent process and 20-50ms in the child process during newsfeed loading, which I think is ok.

For future reference, I made a simple static benchmark representing a logged-in Facebook newsfeed, you can find it & setup instructions here: https://www.dropbox.com/sh/fw5odcyb2mpn7ag/AADGuImIda4B1Rz03eoMYN33a?dl=0
Flags: needinfo?(vladan.bugzilla)
We do compartment GCs these days way more often, perhaps that has helped.

Comment 11

10 months ago
Closing as per comment 9, please re-open if this is still a problem.
Last Resolved: 10 months ago
Resolution: --- → WORKSFORME
Flags: needinfo?(sphink)
You need to log in before you can comment on or make changes to this bug.