Closed Bug 1792722 Opened 2 years ago Closed 1 year ago

MaxHeapGrowth limit calculation for balanced heap limits is wrong

Categories

(Core :: JavaScript: GC, defect, P1)

defect

Tracking

()

RESOLVED FIXED
110 Branch
Tracking Status
firefox-esr102 --- unaffected
firefox105 --- unaffected
firefox106 --- disabled
firefox107 --- disabled
firefox108 --- disabled
firefox109 --- wontfix
firefox110 --- fixed

People

(Reporter: jonco, Assigned: jonco)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: regression)

Attachments

(1 file)

pavpanchekha pointed out that I messed up the calculation in bug 1790336 and it doesn't do what I intended. I think the final W should be inside the bracket not outside:

https://searchfox.org/mozilla-central/source/js/src/gc/Scheduling.cpp#662

I'll need to re-test to see if this actually fixes the benchmark issues or back out the original bug and look for another solution.

Set release status flags based on info from the regressing bug 1790336

Jon, is that something that will require an uplift to 106? Thanks

Flags: needinfo?(jcoppeard)

(In reply to Pascal Chevrel:pascalc from comment #2)
No, balanced heap limits are not enabled on 106 (and will shortly be disabled on 107 too).

Flags: needinfo?(jcoppeard)

(In reply to Jon Coppeard (:jonco) from comment #3)

(In reply to Pascal Chevrel:pascalc from comment #2)
No, balanced heap limits are not enabled on 106 (and will shortly be disabled on 107 too).

Thanks, setting 106 status to disabled then.

Severity: -- → S3
Priority: -- → P1

Fixing this regresses benchmark results.

Set release status flags based on info from the regressing bug 1790336

(In reply to Jon Coppeard (:jonco) from comment #3)

(In reply to Pascal Chevrel:pascalc from comment #2)
No, balanced heap limits are not enabled on 106 (and will shortly be disabled on 107 too).

:jonco, trying to figure out the impact for 107, if you could help me out?
I found the following in beta

pref("javascript.options.mem.gc_heap_growth_factor", 50);

The value differs from release (i.e. 50 in beta, and 27 in release)

Flags: needinfo?(jcoppeard)

(In reply to Donal Meehan [:dmeehan] from comment #7)
The gc_heap_growth_factor parameter is not used unless javascript.options.mem.gc_balanced_heap_limits is set to true. There's no impact from this value changing.

Flags: needinfo?(jcoppeard)

(In reply to Jon Coppeard (:jonco) from comment #8)

(In reply to Donal Meehan [:dmeehan] from comment #7)
The gc_heap_growth_factor parameter is not used unless javascript.options.mem.gc_balanced_heap_limits is set to true. There's no impact from this value changing.

Thanks. I didn't spot pref.
javascript.options.mem.gc_balanced_heap_limits is set to false in beta so marking 107 as disabled.

Do we have a meta for gc_heap_growth_factor we can hook this up as a dependency on?

Flags: needinfo?(jcoppeard)
Blocks: 1770763
Flags: needinfo?(jcoppeard)

This should limit heap size to some multiple of the previous size. |f| is a
size in bytes and should not be multiplied by W.

Pushed by jcoppeard@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/5c0c8c094e5b
Fix balanced heap limit calculation r=sfink
Status: NEW → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 110 Branch

Since nightly and release are affected, beta will likely be affected too.
For more information, please visit auto_nag documentation.

(In reply to Release mgmt bot [:suhaib / :marco/ :calixte] from comment #14)
Balanced heap limits are not enabled by default so nothing needs to be uplifted here.

The patch landed in nightly and beta is affected.
:jonco, is this bug important enough to require an uplift?

  • If yes, please nominate the patch for beta approval.
  • If no, please set status-firefox109 to wontfix.

For more information, please visit auto_nag documentation.

Flags: needinfo?(jcoppeard)
Flags: needinfo?(jcoppeard)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: