gpt4 book ai didi

haskell - Haskell 运行时统计中的负生产力

转载 作者:行者123 更新时间:2023-12-04 18:11:07 24 4
gpt4 key购买 nike

我正在使用 program用 Haskell 编码,我通过了 +RTS -N3 -M9G -s -RTS为了获得runtime statistics在执行结束时。我偶尔会遇到生产力为负数的结果。此外,程序成功运行了它的任务,但 MUT 为零。

  • 为什么生产力是负的?
  • 如果程序成功完成,MUT 怎么可能为零?
  • 3,904,320,026,552 bytes allocated in the heap
    4,110,237,505,912 bytes copied during GC
    6,874,676,192 bytes maximum residency (706 sample(s))
    16,352,288 bytes maximum slop
    9369 MiB total memory in use (0 MB lost due to fragmentation)

    Tot time (elapsed) Avg pause Max pause
    Gen 0 2402028 colls, 987034 par 39844.808s 1005.947s 0.0004s 0.0150s
    Gen 1 706 colls, 583 par 1165.131s 1730.422s 2.4510s 17.6798s

    Parallel GC work balance: 70.86% (serial 0%, perfect 100%)

    TASKS: 8 (1 bound, 7 peak workers (7 total), using -N3)

    SPARKS: 36096 (16594 converted, 0 overflowed, 0 dud, 5857 GC'd, 13645 fizzled)

    INIT time 0.003s ( 0.002s elapsed)
    MUT time 0.000s (789.778s elapsed)
    GC time 41009.939s (2736.369s elapsed)
    EXIT time 2.253s ( 0.001s elapsed)
    Total time 5072.554s (3526.151s elapsed)

    Alloc rate 0 bytes per MUT second

    Productivity -708.5% of total user, 22.4% of total elapsed


    real 58m46,534s
    user 80m23,692s
    sys 4m9,296s

    ¹最后的时间是因为我正在调用 $ time <program> +RTS -N3 -M9G -s -RTS <args-for-program>操作系统:Ubuntu 18.04.6 LTS

    最佳答案

    计算出的 GC CPU 时间似乎有很大问题。与过去的 2737 秒相比,它是 41010 秒,如果您只运行三个功能,这是没有意义的。
    这种计算错误意味着计算出的 MUT CPU 时间,即总 CPU 时间减去 INIT、GC 和 EXIT 时间,实际上是一个很大的负数(5073-41010-2 = -35939)。这给出了 -35939/5073=-708% 的生产率。显示 MUT 秒数时,将负数截断为零,以避免在 MUT 非常低且存在时钟精度误差时报告小的负数,这就是为什么显示的 MUT 时间为 0 而不是 -35939。
    我不知道为什么 GC 时间被严重误算了。我最好的猜测是这个。如果您在 Windows 上运行,则 CPU 时间时钟精度存在已知问题,并且垃圾收集时间的某些异常模式可能会导致仅在一个方向上发生精度错误,稍微高估实际 GC 时间比它更频繁低估它。超过 240 万次收集(请参阅您的 GC 统计信息),这种差异可能会累积成一个巨大的正错误。
    我查看了 GitLab 问题,除了 the report关于一般 Windows CPU 时间不精确和一些可能不相关的负面 MUT 报告 herehere ,我没有看到任何有用的东西。

    关于haskell - Haskell 运行时统计中的负生产力,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70021611/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com