Is there a linux tool like top, only cumulative?

Found it... "top -S"


top already keeps a cumulative total of time spent on the cpu (user+system) I believe. That's what's listed in the TIME+ field:

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 5117 michael   20   0  508m 238m  30m R   16  6.1   7:55.47 firefox
 3135 root      20   0  194m  53m  14m S    8  1.4  26:37.08 X
 4359 michael   20   0  117m  83m  14m S    1  2.1  17:59.34 gnome-panel

'real time' probably isn't that interesting to watch - it's just the amount of elapsed time since the process started.

If you're interested in hacking it up yourself, everything you need is in /proc/*/stat :)

Or try using ps:

ps -eo pid,user,args,etime,time,%cpu --sort %cpu
watch -n1 ps -eo pid,user,args,etime,time,%cpu --sort -%cpu

(the very last line is probably closest to what you actually ask :)