プロファイリングデータの分析
このセクションの内容:
ここでは、データの分析方法の例を紹介します。
最初の図は、[ソース : トレース(コール)]を使用したプロファイリングの結果を示します。プロファイラはプログラムの流れに沿って、関数の入口と出口を検出します。
InitFib関数の場合、フラット時間231は関数自体の内部で消費された時間です。
InitFib関数の場合、累積時間487は、InitFibが呼び出すすべての関数も含めて、関数自体の内部で消費された時間です。
InitFib/GetFib関数の場合、累積時間256は、GetFib内で消費された時間です(ただし、InitFibから呼び出されたときのみ)。これにはGetFibが呼び出すすべての関数が含まれます。
さらにデータを見ていくと、GetFib関数が別に示され、そのサブ関数がすべて表示されています(この場合は該当なし)。

2 番目の図は、[ソース : トレース(フラット)]を使用したプロファイリングの結果を示します。この場合、プロファイラはプログラムの流れに従わず、PC のアドレスが関数のスコープ内にあるかどうかだけが検出されます。トレースデータが不十分な場合、データに軽度のエラーが含まれることがあります。
InitFib 関数の場合、フラット時間 231 は関数自体の内部で消費された回数(ヒット数)を示します。

デバッグ プローブを使用するときに有効なデータを確保するには、必ず最大トレース バッファ サイズを使用し、バッファがいっぱいになる前に実行を停止するようにコードにブレークポイントを設定します。
注記
< 関数なし > エントリは、アプリケーションの既知の C-SPY 範囲内ではない PC 値を示します。