除了在编译时使用-p选项然后使用gprof时,有没有人知道用于分析OCaml代码的程序?我问这个问题是为了检查0.01秒的采样时间是否可以进一步降低?
答案 0 :(得分:8)
poorman's profiler完全适用于OCaml程序。同样的想法也适用于profiling allocations。
答案 1 :(得分:6)
从未使用它,但ocamlviz是另一种选择。
答案 2 :(得分:6)
您还可以使用由Fabrice Le Fessant编写的ocaml-memprof,一个编译器补丁(3.12.0和3.12 1),它为ocaml程序添加了内存分析功能。
修改强>
现在你有ocp-memprof
,一个可以在线使用的OCaml Memory Profiler。它可以在http://memprof.typerex.org上找到。
答案 3 :(得分:2)
添加到有用答案列表中:此OCamlPro post使用perf
(在类似Debian的发行版中通过包linux-tools
安装)提及Linux上本机代码的性能分析(而不是内存分析) )。
基本上,你只需要运行:
perf record -g ./native_program arguments
生成包含分析数据的perf.data
文件,然后运行
perf report -g
查看结果。
在使用启用了帧指针的OCaml版本时(例如,4.02.1+fp
代替4.02.1
在OPAM上),效果会更好。