Bug 1525983 Comment 10 Edit History

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

There are a couple of things going on here:

1) Sometimes we tenure lots of object during nursery collection (builds between 19-01-20 and 19-01-30 above).  There are two possible reasons for this: either our pre-tenuring heuristics are failing, or the timing of nursery collections is falling into a pattern which causes more to be tenured.  If it's the former I'd expect the major GC count to increase when this is happening, but from the results above this isn't clear (the count increases when this behaviour starts, but then increases slightly again when it ends).  The latter doesn't seem that plausible either though - I wouldn't expect the behaviour to fall so clearly into two different modes.

2) Now that we allow smaller nursery sizes we can end up collecting the nursery very frequently if we don't tenure anything (builds from 19-02-15 above).  Small nursery sizes are a memory saving but this does mean that fixed overheads in nursery collection (like tracing the runtime) become an increasing burden.  Perhaps we should time collection frequency into account when sizing the nursery or perhaps we should not allow the nursery of the foreground runtime to become so small.
There are a couple of things going on here:

1) Sometimes we tenure lots of object during nursery collection (builds between 19-01-20 and 19-01-30 above).  There are two possible reasons for this: either our pre-tenuring heuristics are failing, or the timing of nursery collections is falling into a pattern which causes more to be tenured.  If it's the former I'd expect the major GC count to increase when this is happening, but from the results above this isn't clear (the count increases when this behaviour starts, but then increases slightly again when it ends).  The latter doesn't seem that plausible either though - I wouldn't expect the behaviour to fall so clearly into two different modes.

2) Now that we allow smaller nursery sizes we can end up collecting the nursery very frequently if we don't tenure anything (builds from 19-02-15 above).  Small nursery sizes are a memory saving but this does mean that fixed overheads in nursery collection (like tracing the runtime) become an increasing burden.  Perhaps we should take collection frequency into account when sizing the nursery or perhaps we should not allow the nursery of the foreground runtime to become so small.

Back to Bug 1525983 Comment 10