Memory 在Erlang中测量内存性能

Memory 在Erlang中测量内存性能,memory,erlang,profile,Memory,Erlang,Profile,在Erlang中运行程序时,有没有办法测量完整的内存使用情况?我的基准测试是这样的,我产生了一个进程,而这个进程反过来又会产生更多的进程,等等。到最后,它们都会崩溃,直到只有初始进程收到一些结果 我对最高瞬时内存使用率感兴趣。在生成进程之前,假设内存使用率为0,那么瞬时内存使用率的峰值是多少 我查看了这个线程:,它描述了进程\u info/2。但是,如果我生成一个进程,则process\u info(self(),memory)报告的内存似乎不会增加 似乎主要收集进程及其生命周期的统计信息,而不

在Erlang中运行程序时,有没有办法测量完整的内存使用情况?我的基准测试是这样的,我产生了一个进程,而这个进程反过来又会产生更多的进程,等等。到最后,它们都会崩溃,直到只有初始进程收到一些结果

我对最高瞬时内存使用率感兴趣。在生成进程之前,假设内存使用率为0,那么瞬时内存使用率的峰值是多少

我查看了这个线程:,它描述了
进程\u info/2
。但是,如果我生成一个进程,则
process\u info(self(),memory)
报告的内存似乎不会增加

似乎主要收集进程及其生命周期的统计信息,而不是它们的资源消耗


非常感谢您的帮助。

您关心的是内存束消耗还是只关心您的程序?@ipinak虽然这两个测量都很有趣,但我相信我更感兴趣的是我的程序。不过,我相信我的报告会从这两种度量中受益。我假设
self()
不是运行代码的进程。您是否在另一个进程ID上尝试了
process\u info/1
?您还可以测量操作系统(Windows?Linux?MacOS?)看到的内存占用。这能回答你的问题吗?如果是这样,请在相关操作系统上添加一个标签。在这种情况下,我的操作系统将是Ubuntu,@user803422,然而,我主要关心的是我的程序如何执行,而不考虑BEAM使用的内存。