パフォーマンス計測ツールの分類

詳解システム・パフォーマンス4.1にはパフォーマンス計測ツールの分類について書かれています。

www.amazon.co.jp

ひとえにパフォーマンス計測のツールと言っても、その特徴ごとに分類することができます。 主な観点は以下の2つです。

  • 全てのイベントに対する集計(=カウンタ)かイベントごとの集計(=トレーシング)か
  • システム全体に対する統計かプロセスごとの統計か

カウンタ

受信したネットワークパケットの数など、イベントの回数を集計するツールです。

  • システム全体を計測:vmstat, mpstat, iostat, netstat, sar
  • プロセスごとの計測:ps, top, pmap

トレーシング

1つのHTTPリクエストなどイベントごとにデータを集計するツールです。ロギングも一種のトレーシングと考えることができます。

  • システム全体の計測;tcpdump, snoop, blktrace, iosnoop, execsnoop, dtruss, DTrace, SystemTap, perf
  • プロセスごとの計測:strace, truss, gdb, mdb

その他

プロファイリングはターゲットに対しサンプリングを行って計測するツールです。間隔を指定して使います。

例)oprofile, perf, DTrace, SystemTap, cachegrind, Intel VTune Amplifier XE, Oracle Solaris Studio