27.4. flamegraphs の解釈
フレームグラフの各ボックスは、スタック内の異なる関数を示しています。スタックの深さは、x 軸で示されています。CPU でサンプルされた実際の関数は、最も上のボックスで、その他下のものは、その上位となります。X 軸は、サンプルの呼び出しグラフデータの近接性を表示します。
特定の行のスタックの子は、x 軸に沿って降順でそれぞれの関数から取得されたサンプルの数に基づいて表示されます。x 軸は時間の経過を表すものではありません。ボックスが広いほど、データがサンプリングされていたときに、CPU 上または CPU 上の一部での頻度が高いことを意味します。
手順
以前表示されていない可能性のある関数の名前を確認するには、フレームグラフ内のボックスをクリックしてその特定の場所のスタックに拡大します。
- フレームグラフのデフォルトビューに戻るには、 をクリックします。
ユーザー空間関数を表すボックスには、関数のバイナリーが取り除かれているため、flamegraphs
で Unknown とラベルが付けられる場合があります。実行可能ファイルの debuginfo
パッケージがインストールされているか、実行可能ファイルがローカルで開発したアプリケーションである場合は、アプリケーションはデバッグ情報と共にコンパイルされる必要があります。GCC で -g
オプションを使用して、このような状況で関数名またはシンボルを表示します。