【问题标题】:Can a Haskell/GHC self-report its GC stats live?Haskell/GHC 可以实时自我报告其 GC 统计信息吗?
【发布时间】:2015-05-11 05:51:54
【问题描述】:

我认为让服务器自行报告其内存使用情况会很方便。

我已经阅读了手册中关于memory profiling 的部分,但是这样做有一些缺点:

  • 首先,这似乎只提供验尸统计数据。
  • 启用分析会产生开销。
  • 我真的不需要那么多细节。

这就是我的问题,如何在 GHC 编译的运行程序中跟踪不同的内存集?

【问题讨论】:

    标签: haskell ghc


    【解决方案1】:

    如果您将ekg 集成到您的服务器中,您可以通过 HTTP 访问关于运行时的漂亮图表和统计信息,甚至您自己的自定义指标:

    (图片链接自Oliver Charles’ blogpost on ekg

    【讨论】:

    • 这绝对是我想做的事!谢谢。
    【解决方案2】:

    GHC 特定模块GHC.Stats 提供了一个函数getGCStats,它返回(在IO 中)各种GC 统计信息:

    getGCStats :: IO GCStats
    

    检索上次的垃圾收集和内存统计信息 垃圾收集。如果您希望您的统计数据最近 可以,首先运行performGC

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-09-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多