C(++)言語: valgrindの使い方 (massif)
Kazuki Ohta, 2006/05/20

「Binary Hacks」
(2-3) Massif: ヒーププロファイラを使う
Massifを用いるとプログラムが使用するヒープを検査する事が出来る。例えばどれぐらいメモリを使用しているのかとか、スタックの消費量とか。更にアウトプットとしてPostScript形式を使用しメモリ使用量を可視化する事が出来る。
試しにSigSchemeを以下のようにプロファイリングしてみた結果を張り付ける。お使いのPostScript Viewerで御覧下さい。
libtool --mode=execute valgrind --tool=massif ./sscm bench/bench-let-loop.scm
縦軸がヒープ使用量、横軸が時間。右側にはメモリを確保した関数名等が表示されるので、メモリ使用量のボトルネック等を探す際に有効。
このプログラムは最初からヒープを一気に確保しているのであまり面白くないが、User Manualには面白い例が掲載されているので一度目を通すと良い。

User Manualより拝借
[ return ]