我做了一些非常高数量的计算,主要涉及2 ^ x,其中x> 2亿,这通常在GHCI的每次计算中需要大约20秒(当然没有打印)这是否会从编译中获益,因为它主要基于内存?显而易见的是>快2倍
答案 0 :(得分:8)
不,两者的表现都是一样的。
对于具有大整数的计算,GHC只是调用bignum库,它通常是LibGMP(虽然现在可以使用纯Haskell替代),无论调用LibGMP的代码是否编译为LibGMP,LibGMP将始终保持相同的速度。本机代码或解释。
如果你在LibGMP之外花费更多的时间,你只会通过编译看到加速。