我如何在 GHC 中查看完整的成本中心堆栈?
How can I see the full cost-centre stack in GHC?
我几乎掌握了 GHC 成本中心....这是一个很棒的主意,您实际上可以使用他们的分析工具修复内存泄漏。但我的问题是我在 .hp 分析中获得的信息被截断了:
(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) 中的完整成本中心堆栈是什么?是否有相应的工具或命令行选项?
当您使用分析 运行 时,将 +RTS -L100
传递给您的程序,并将 100 更改为您希望看到的成本中心字符数。
可以在 GHC user guide, section “RTS options for heap profiling” 中找到文档。
我几乎掌握了 GHC 成本中心....这是一个很棒的主意,您实际上可以使用他们的分析工具修复内存泄漏。但我的问题是我在 .hp 分析中获得的信息被截断了:
(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) 中的完整成本中心堆栈是什么?是否有相应的工具或命令行选项?
当您使用分析 运行 时,将 +RTS -L100
传递给您的程序,并将 100 更改为您希望看到的成本中心字符数。
可以在 GHC user guide, section “RTS options for heap profiling” 中找到文档。