linuxで cpu使用率を見るコマンド

サーバー監視をするため data収集するのに良いコマンドは無いか?
と言うことで internetを調べたら、
sar
mpstat
uptime
w
とかコマンドが出てきました

時間がかかる phpの makeを実行させている時の結果です

[root@vine62 ~]# w
10:44:32 稼働 6 日間, 22:53, 2 ユーザ, 負荷平均率: 1.03, 0.72, 0.38
ユーザ 端末 場所 ログイン@ 待機 JCPU PCPU 現プロセス名
hoge pts/0 192.168.1.121 09時42分 0.00秒 0.06秒 0.00秒 sshd: hoge [priv]
hoge pts/1 192.168.1.121 10時12分 3:04分 13.18秒 0.00秒 sshd: hoge [priv]

[root@vine62 ~]# uptime
10:44:36 稼働 6 日間, 22:53, 2 ユーザ, 負荷平均率: 1.03, 0.72, 0.38

[root@vine62 ~]# mpstat -P ALL
Linux 3.4.87-2vl6 (vine) 2014年06月29日 _x86_64_ (2 CPU)

10時44分43秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
10時44分43秒 all 0.17 0.00 0.06 0.13 0.00 0.00 0.00 0.00 0.00 99.64
10時44分43秒 0 0.16 0.00 0.06 0.24 0.00 0.00 0.00 0.00 0.00 99.54
10時44分43秒 1 0.18 0.00 0.06 0.02 0.00 0.00 0.00 0.00 0.00 99.74

wと uptimeは同じ表示をすると書いてあったので、同じ数字が出てきて良いんですが、mpstatは何か数値が違っています
cpu使用率の目的は、サーバー監視でグラフ化なので、uptimeの 5分平均値を 100倍して intで記録すれば良いかな?

そう難しいモンでも無かったんで、/proc/statを一定時間で差を見て、割合を計算することにしました

/proc/stat の各数字の意味は以下の通りです

[root@vine62 ~]# cat /proc/stat
#cpu 328546 104 107989 151659827 209779 0 2348 0 0 0
#cpu0 167990 36 59142 75713283 190539 0 2278 0 0 0
#cpu1 160556 68 48847 75946544 19239 0 69 0 0 0
#1 user
#2 nice
#3 system
#4 idle
#5 iowait
#6 irq
#7 softirq
#8 steal
#9 guest
#10 guest-nice