On 8/26/2018 7:43 PM, Matthew Flatt wrote
Racket's memory manager does not immediately release pages back to the OS (i.e., unmap them) after a GC. In its current configuration, the GC releases a page at the beginning of a major GC only if the page was unused at the *start* of the previous GC. So, there's roughly a lag of 2 GCs to unmap a page that becomes unused as a result of a GC. That policy reduces back-and-forth with the OS on page allocation, which can be relatively costly. Then again, at the end of a GC, if there are more than 4 times as many mapped pages as currently in use, then all unused pages are immediately released. That rule is an attempt to keep actual use and mapped pages from getting too far out of sync. Racket doesn't reserve pages without mapping them, so you don't need to worry about that potential difference.
Good to know. Thanks for the peek inside. George -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.