gpt4 book ai didi

debugging - 检查 Erlang 故障转储 - 如何计算所有内存?

转载 作者:行者123 更新时间:2023-12-02 23:02:57 24 4
gpt4 key购买 nike

我一直在研究这个 Erlang 崩溃转储,其中虚拟机已经耗尽了堆内存。问题是没有明显的罪魁祸首分配了所有内存。

使用一些严肃的黑色awk magic 我已经总结了这些字段 Stack+heap , OldHeap , Heap unusedOldHeap unused对于每个进程并按内存使用情况对它们进行排名。问题是这个数字与代表所有进程的总内存的数字 processes_used 相差甚远。根据Erlang crash dump guide .

我已经尝试过 Crashdump Viewer要么我错过了一些东西,要么对于我的问题没有太多帮助。

我得到的数字是 525 MB,而 processes_used值为 1348 MB。我在哪里可以找到剩余的内存?

编辑:Heap unusedOldHeap unused不应包含在内,因为它们是 Stack+Heap 的子部分和OldHeap ,再加上显示的数字 Stack+HeapOldHeap问题是列为字数,而不是字节数。

最佳答案

有一个名为 crashdump_viewer 的模块这对于此类分析非常有用。

要记住的另一件事是,Heap+Stack 是单词,而不是字节,这意味着您必须在 32 位上将 Heap+Stack 与 4 相乘,在 64 位上将 Heap+Stack 与 8 相乘。在手册中找不到这方面的引用,但 Processes谈论一下它。

关于debugging - 检查 Erlang 故障转储 - 如何计算所有内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6616101/

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