The gc package
This package implements a form of Poor Richard's Memory Manager by Hertz, Kane, Keudel, Bai, Ding, Gu and Bard in user-space in GHC.
import System.Mem.Manager main = do _ <- selfishManager ...
Now, the background thread that was spawned by selfishManager will watch for signs that the host operating system is starting to cause the current process to page out to disk and respond with more aggressive garbage collection.
This empowers your code to try to avoid the inevitable death spiral that follows when GC has to happen with paged out data.
[Skip to Readme]
|Dependencies||base (>=4.7 && <5) [details]|
|Copyright||Copyright (C) 2015 Edward A. Kmett|
|Author||Edward A. Kmett|
|Maintainer||Edward A. Kmett <email@example.com>|
|Source repository||head: git clone git://github.com/ekmett/gc.git|
|Uploaded||Wed Sep 16 04:54:30 UTC 2015 by EdwardKmett|
|Downloads||119 total (5 in the last 30 days)|
|Status||Docs uploaded by user
Build status unknown [no reports yet]
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
For package maintainers and hackage trustees