是否有一种方法可以限制编译过程中GHC的内存使用情况,而不会损害代码质量?我在2GB机器上,在构建过程中实际上停止了。GHC版本7.10.3,Ubuntu 14.04,4GB交换。
一种方法是使用具有内存限制的容器。我目前正在测试该理论,但它有效,但是您将有一个重大的缺点,因为您要设置的内存的限制会导致GHC仅分配交换空间。这需要很长时间。
也可能是一个好主意。我在引用:
-J只是告诉GHC跨模块并行汇编。这个可以 增加编译器所需的最大堆尺寸。
-A设置了托儿所的尺寸;首先,不影响 最大堆尺寸,但在平行运行时很有帮助 程序(例如与-J的GHC),以最大程度地减少我们的频率 必须垃圾收集。
-m有点棘手。首先,它定义了最大堆 我们将终止大小。但是,我们也在 垃圾收集器以做出有关GC计划的各种决定。患病的 承认我对这里的细节并不非常熟悉。