linux / unix进程的最高内存使用率

有没有一种工具可以运行命令行并报告总共使用了多少内存?

我想象的是类似于/ usr / bin / time的东西


(这是一个已经回答,老问题..但只是为了记录:)

我受到杨的脚本的启发,想出了一个名为memusg的小工具。 我只是将采样率提高到0.1来处理很短的生活过程。 我没有监视单个进程,而是测量了进程组的rss总和。 (是的,我写了很多单独的程序,它们一起工作)它目前适用于Mac OS X和Linux。 用法必须是类似的time

memusg ls -alR / >/dev/null

它只显示当前的高峰,但我对记录其他(粗略)统计的细微扩展感兴趣。

在我们开始进行任何严肃的分析之前,只需观看一下这样简单的工具就很好。


[ 编辑 :在Ubuntu 14.04上运行: /usr/bin/time -v command确保使用完整路径。]

看起来像/usr/bin/time确实会给你这个信息,如果你传递-v (这是在Ubuntu 8.10上)。 请参阅下面的Maximum resident set size

$ /usr/bin/time -v ls /
....
        Command being timed: "ls /"
        User time (seconds): 0.00
        System time (seconds): 0.01
        Percent of CPU this job got: 250%
        Elapsed (wall clock) time (h:mm:ss or m:ss): 0:00.00
        Average shared text size (kbytes): 0
        Average unshared data size (kbytes): 0
        Average stack size (kbytes): 0
        Average total size (kbytes): 0
        Maximum resident set size (kbytes): 0
        Average resident set size (kbytes): 0
        Major (requiring I/O) page faults: 0
        Minor (reclaiming a frame) page faults: 315
        Voluntary context switches: 2
        Involuntary context switches: 0
        Swaps: 0
        File system inputs: 0
        File system outputs: 0
        Socket messages sent: 0
        Socket messages received: 0
        Signals delivered: 0
        Page size (bytes): 4096
        Exit status: 0

Valgrind单线:

valgrind --tool=massif --pages-as-heap=yes --massif-out-file=massif.out ./test.sh; grep mem_heap_B massif.out | sed -e 's/mem_heap_B=(.*)/1/' | sort -g | tail -n 1

注意使用--pages-as-heap来测量进程中的所有内存。 更多信息在这里:http://valgrind.org/docs/manual/ms-manual.html

链接地址: http://www.djcxy.com/p/63267.html

上一篇: Peak memory usage of a linux/unix process

下一篇: google analytics 2 domain with multiple (infinite) subdomain goals setting