10 benchmarking profiling haskell
在Haskell中,我怎样才能"简单地"测量函数性能.例如,运行需要多长时间,或者需要多少内存?我知道分析,但是,是否有一种更简单的方法,不需要我太多地改变我的代码?
And*_*ewC 10
有关各个函数相互比较的非常粗略的信息,您可以使用ghci
Prelude> :set +s
Prelude> last [1..100000000]
100000000
(1.65 secs, 4000685276 bytes)
Run Code Online (Sandbox Code Playgroud)
你需要知道,ghci的不编译代码,因此运行多比GHC慢,时间和内存使用情况的数据是近似的,而且绝对没有优化已经完成.
这意味着它只能让您非常粗略地了解代码的有效性,并且无法替代正确的基准测试和编译和优化代码的分析,详见Nikita Volkov的答案.