I need to find what and when these applications used so much CPU (and IO if possible too). This should be in a graphic timeline like we see in GNOME System Monitor CPU History. I also want to compare that graphic with the Psensor temperature monitor too.

I found answers for single process where you already know the PID, but I am looking for that information whenever the applications are top-using CPU or IO, which can be any pid any time, on the last 1 hour.

I wonder if there is some application that can do it.

  • Are you looking for a real-time round robin type plot or will a static plot created after a period of data acquisition do? The second one is a pretty easy script to fire up while the first is harder...
    – unclejamil
    Nov 24, 2013 at 2:17
  • The static would be very helpful, I think a real-time could easly come later based on the static data? Nov 24, 2013 at 16:44

1 Answer 1


I thought it might be fun to take a stab at this one with python and matplotlib. It's a bit big for posting here but here is a link to it on my site. This is a real ugly way to get it done but hopefully it will give you some ideas. I just parsed the output of ps and pulled the cpu temp stuff from the output of sysctl since I'm on an OpenBSD box but it works well enough.. I suppose you could get pretty fancy with the data acquisition part and come up with a ton of different things. If you'd like I can put it up on github or something.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .