haskell - 对不同大小的输入运行 Haskell 基准测试

标签 haskell graph benchmarking time-complexity criterion

我经常想比较同一函数的多个实现的运行时性能。对于个人输入,标准是一个很好的工具。

但是有什么简单的方法可以在不同的输入大小上绘制代码的性能,例如看算法复杂度?

理想情况下,我向库传递一个类型为 Benchmarkable r => [(String, Int -> r)] 的值。 ,即与大小相关的基准列表,该库将自动为每个值找到合理的输入范围,并从中创建一个漂亮的图。

最佳答案

e.g. to see the algorithmic complexity?



有一个包:

http://hackage.haskell.org/package/complexity

但是,我通常使用 QuickCheck 来驱动随机数据大小的测试,然后绘制结果。

关于haskell - 对不同大小的输入运行 Haskell 基准测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17421709/

相关文章:

具有不同数量参数的 Haskell 函数

haskell - 将函数应用于haskell中的每个参数

algorithm - 我们可以使用单个数组进行图形查找和连接操作来获得对数时间复杂度吗?

c - 如何编写测试应用程序以完全加载 CPU?

apache - 如何在 Windows 中运行 Apache 基准负载测试?

haskell - 禁止某些 Haskell Alex/Happy 编译消息

haskell - 如何为 OVERLAPPABLE 实例、单态容器和 newtype 包装器实现默认关联类型族?

javascript - 根据度数计算方向

c++ - 为什么我的 vector 需要一个常量值?

r - 为什么 apply() 方法比 R 中的 for 循环慢?