我是 F# 语言的新手,目前我正在对 F# 性能进行简短研究。所以我想做的是对我的 F# 代码进行基准测试。我已经找到了 Stopwatch 类,这很明显,但至于你应该能够测试的其余部分,我没有发现明确的线索。
我想做的是在我运行 F# 代码时找出它的内存和 CPU 使用情况。这里有没有人可以给我一些关于如何做到这一点的建议?
最佳答案
对于快速原型(prototype)设计,fsi 的时序指令提供了很好的指示:
#if INTERACTIVE
#time "on"
#endif
它打印出如下内容:
Real: 00:00:00.199, CPU: 00:00:00.120, GC gen0: 0, gen1: 0, gen2: 0
除了执行时间之外,其他统计数据还显示了在分代 GC 的三个级别中收集的垃圾量,这有助于了解程序中的内存使用情况。
对于严格的基准测试,您应该使用 Visual Studio profiler它提供函数调用计数、计时和内存分配测量等,甚至使用第三方内存分析器。您可以在我的回答中找到使用这些分析器的一些提示 Good F# Performance Profiling Tool .
关于performance - 如何测量 F# 代码的 CPU 和内存使用情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10045591/