haskell - 如何在 Haskell 中获取程序的运行时间

标签 haskell time profiling execution measurement

如何通过 Haskell 中的系统时间函数获取程序的运行时间?我想测量整个程序和/或单个函数的执行时间。

最佳答案

1) 如果您想对某些内容进行基准测试,请使用 criterion包。

2) 如果您想要对函数进行计时,并且确信您已经根据需要控制了惰性,那么只需使用 time 中的 Data.Time.getCurrentTime 即可。封装:

import Data.Time
...
   start <- getCurrentTime
   runOperation
   stop <- getCurrentTime
   print $ diffUTCTime stop start

上述图案的更光滑的包装可以在 timeit 中找到。包。

3) 如果您确实想要一个恰好用 Haskell 编写的程序的运行时间,那么请使用您的系统time实用程序。对于大多数 POSIX 系统(Mac、Linux),只需运行:

$ time ./SomeProgram

它会报告用户、墙壁和系统时间。

关于haskell - 如何在 Haskell 中获取程序的运行时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5968614/

相关文章:

java - java 时间 api 中的错误星期几

windows - 无法让 xperfview 加载 DLL 的符号

haskell - 快速检查有关长度索引列表的属性

haskell - 没有因使用 `/' 而产生的 (Fractional Int) 实例

php - 从 mysql 获取时间并以我们想要的任何格式回显它 - php

ruby - 检查两个时间戳是否在 Ruby 中是同一天

haskell - 如何在 Haskell 中使用线程安全的共享变量

python - Haskell 在朴素整数分解中比 Python 慢?

关闭函数前的 PHP 分析延迟

c++ - gperftools cpuProfiler 在分析由 ARM 设备创建的文件时看不到符号