如何衡量某些程序的最高(最大)内存使用量?
它做了很多malloc / free,运行得相当快,所以我看不到最大内存。
我想要像time
实用程序那样的smth:
$ time ./program
real xx sec
user xx sec
sys xx sec
和
$ mem_report ./program
max memory used xx mb
shared mem xx mb
答案 0 :(得分:1)
time
电话是你的shell。如果你打电话给程序/usr/bin/time
,你将获得驻留内存使用的一些知识。但请注意,它可能不会计算内存映射文件,共享内存和您可能需要的其他详细信息。
答案 1 :(得分:0)
如果您使用的是Linux,则可以将程序包装在一个轮询的脚本中:
# for your current process
/proc/self/statm
# or a process you know the pid of
/proc/{pid}/statm
并写出结果 - 之后你可以将它们聚合在一起。