25.3. perf mem 出力の解釈
修飾子なしで perf mem report コマンドを実行すると表示される表では、データが複数の列に分類されます。
- 'Overhead' 列
- その特定の機能で収集された全体のサンプルのパーセンテージを示します。
- 'Samples' 列
- その行でアカウントを指定したサンプル数を表示します。
- 'Local Weight' 列
- プロセッサーのコアサイクルでアクセスレイテンシーを表示します。
- 'Memory Access' 列
- 発生したメモリーアクセスのタイプを表示します。
- 'Symbol' 列
- 関数名またはシンボルを表示します。
- 'Shared Object' 列
- サンプルの送信元である ELF イメージの名前を表示します (サンプルがカーネルからのものである場合に [kernel.kallsyms] という名前が使用されます)。
- 'Data Symbol' 列
- 行がターゲットとしていたメモリーの場所のアドレスを表示します。
重要
多くの場合、アクセスされるメモリーまたはスタックメモリーの動的割り当てにより、'Data Symbol' の列は raw アドレスを表示します。
- "Snoop" 列
- バストランザクションを表示します。
- 'TLB Access' 列
- TLB メモリーアクセスを表示します。
- 'Locked' 列
- 関数がメモリーがロックされたか否かを示します。
デフォルトモードでは、関数は、オーバーヘッドの最も高いものが最初に表示される順に降順でソートされます。