2015-08-27 40 views
10

我几乎得到GHC成本中心的处理......这是一个很棒的想法,你可以通过他们的分析工具实际修复内存泄漏。但我的问题是,我得到的.HP分析的信息太截断:如何查看GHC中的全部成本中心堆栈?

(1319)GHC.Conc.Signal.CAF 640 
(1300)GHC.Event.Thread.CAF 560 
(2679)hGetReplies/connect/c... 112 
(2597)insideConfig/CAF:lvl2... 32 
(1311)GHC.IO.Handle.FD.CAF 656 
(2566)setLoggerLevels/confi... 208 
(2571)configureLoggingToCon... 120 
(2727)reply/Database.Redis.... 32 

我怎么知道,例如什么是在(2566)或(2559)的全部费用中控台?有没有一个工具或命令行选项?

回答

5

将您的程序通过+RTS -L100通过性能分析运行,然后将100更改为想要查看成本中心的任意数量的字符。

该文档可在GHC user guide, section “RTS options for heap profiling”中找到。

+0

非常感谢!你知道这个选项是否在文档中?我找不到它。 – dsign

+1

刚添加的链接。 –

相关问题