繁体   English   中英

限制GHC的内存使用量

[英]Limiting GHC's memory usage

有没有办法在编译期间限制ghc的内存使用量,而不会影响代码质量? 我在一台2GB的机器上,它在构建期间暂停了。 GHC版本7.10.3,Ubuntu 14.04,4GB交换。

一种方法是使用具有内存限制的容器。 我目前正在测试这个理论,它可以工作,但是你会有一个主要的缺点,因为你为内存设置的限制将导致GHC只分配交换空间。 这需要很长时间。

看一下这个解决方案也许是一个好主意。 我在引用:

-j只是告诉GHC跨模块并行编译。 这可以增加编译器所需的最大堆大小。

-A设定托儿所的大小; 第一顺序不影响最大堆大小,而是在运行并行程序(例如ghc with -j)时有用,以最小化我们必须进行垃圾收集的频率。

-M定义有点棘手。 首先,它定义了我们将终止的最大堆大小。 但是,我们也在垃圾收集器中使用它来做出关于GC调度的各种决定。 我承认我对这里的细节并不十分熟悉。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM