Skip to content

Refactor implementation of -Fd flag to make it clear that it's not the F factor which is scaled

In #21483 (closed) we had a discussion about the -Fd flag and whilst concluding that the behaviour was at least not very wrong, we did agree that the flag is not really scaling the -F factor at all.

The -F flag sets the multiplier for how big the heap must get in order to trigger a major collection. By default F = 2 so the heap must grown to 2x the last amount of live bytes before a major collection is triggered.

The -F flag is used in the calculation about how much memory to retain but really we are not scaling the -F value because -Fd doesn't affect how quickly we will decide to do a major collection in the future.

Therefore the implementation could be refactored a little to make it clear that we are not scaling F, even if the ship has sailed for the variable name.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information