Opened 6 years ago

Last modified 16 months ago

#5143 new task

Soft heap limit flag

Reported by: simonmar Owned by: simonmar
Priority: normal Milestone:
Component: Runtime System Version: 7.0.3
Keywords: Cc:
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: None/Unknown Test Case:
Blocked By: Blocking:
Related Tickets: Differential Rev(s):
Wiki Page:


This came up in discussion on IRC yesterday. The +RTS -M<size> flag does two things:

  • it starts tuning the GC to be more frugal as we get closer to <size>, by enabling in-place compaction and making major GC more frequent (reducing -F in effect).
  • it stops the system with an out of memory error if memory usages gets too close to <size>

The problem is often you want the first but not the second, because you'd like to say to the RTS "try to use no more than 2GB, because after that we're into swap space", but you don't want the program to fail if the limit is exceeded.

Change History (8)

comment:1 Changed 6 years ago by igloo


comment:2 Changed 5 years ago by igloo

Priority: normallow

comment:3 Changed 5 years ago by simonmar

difficulty: Unknown
Priority: lownormal

Back to normal - we do want this, or something like it.

comment:4 Changed 5 years ago by igloo


comment:5 Changed 3 years ago by thoughtpolice


Moving to 7.10.1.

comment:6 Changed 2 years ago by thoughtpolice


Moving to 7.12.1 milestone; if you feel this is an error and should be addressed sooner, please move it back to the 7.10.1 milestone.

comment:7 Changed 21 months ago by thoughtpolice


Milestone renamed

comment:8 Changed 16 months ago by thomie

Milestone: 8.0.1
Note: See TracTickets for help on using tickets.