在linux下统计程序的最大内存使用情况
在内存的使用中,有程序本身所占的内存。也有程序动态分配的内存。里面还可能是系统调用外部的工具,又会占用了额外的内存。从使用者角度来看,可以认为里面是个黑盒子。启动了一个程序,却不知道该程序的峰值内存使用量。用什么方法来知道最多使用了多少内存呢?其实通过如下free命令可以知道个大概。free -s 0.1 -h这样每100ms(这个可以根据自己需要来调整)采样一次,显示所占用的内存的多...
·
在内存的使用中,有程序本身所占的内存。也有程序动态分配的内存。里面还可能是系统调用外部的工具,又会占用了额外的内存。从使用者角度来看,可以认为里面是个黑盒子。启动了一个程序,却不知道该程序的峰值内存使用量。
用什么方法来知道最多使用了多少内存呢?其实通过如下free命令可以知道个大概。
free -s 0.1 -h
这样每100ms(这个可以根据自己需要来调整)采样一次,显示所占用的内存的多少。
先在一个终端启动上述free命令。看used部分内存有多少,譬如300MB。再在一个终端运行程序。观察used部分内存的变化。大致可以看到最高使用内存数量,譬如450MB。减去客户程序启用之前的值,可以大概得知该程序最多占用的内存为450-300=150MB。
更多推荐
已为社区贡献1条内容
所有评论(0)