21.5. perf レコードで呼び出し先のデータを取得する
perf record
ツールを設定して、どの関数がパフォーマンスプロファイル内の他の関数を呼び出しているかを記録することができます。これは、複数のプロセスが同じ関数を呼び出す場合にボトルネックを特定するのに役立ちます。
前提条件
-
perf のインストール で説明されているように、
perf
ユーザー領域ツールがインストールされている。
手順
--call-graph
オプションを使用して、パフォーマンスデータのサンプルと記録を行います。$ perf record --call-graph method command
-
command
を、サンプルデータを作成するコマンドに置き換えます。コマンドを指定しないと、Ctrl+C を押して手動で停止するまでperf record
がデータのサンプリングを行います。 method を、以下のアンワインドメソッドのいずれかに置き換えます。
fp
-
フレームポインターメソッドを使用します。GCC オプション
--fomit-frame-pointer
でビルドされたバイナリーの場合など、コンパイラーの最適化により、スタックをアンワインドできない可能性があります。 dwarf
- DWARF 呼び出し情報を使用してスタックのアンワインドを行います。
lbr
- Intel プロセッサーで最後のブランチレコードハードウェアを使用します。
-
関連情報
-
システムの
perf-record (1)
man ページ