呼び出し元/呼び出し先ビュー - プロファイラー インストルメンテーション データ

Visual Studio 2017 RC の最新のドキュメントの詳細については、Visual Studio 2017 RC ドキュメントをご参照ください。

呼び出し元\/呼び出し先ビューには、選択した関数およびその親関数と子関数に関するプロファイリング情報がコール ツリーに一覧表示されます。 呼び出し元\/呼び出し先ビューには、次の 3 つのグリッドがあります。

[現在の関数] は中央のグリッドに表示されます。このグリッドには、選択した関数に関するプロファイル情報が表示されます。 値には関数のすべての呼び出しが含まれます。

[現在の関数を呼び出した関数] は最上部のグリッドに表示されます。このグリッドには、選択した関数の呼び出し元 (親) 関数に関するプロファイル情報が表示されます。 値は、この呼び出し元関数からの呼び出しによって生成された現在の関数の値の量を示します。

[現在の関数によって呼び出された関数] は、下部のグリッドに表示されます。このグリッドには、選択した関数の呼び出し先 (子) 関数のインスタンスに関するプロファイル情報が表示されます。 値は、子関数が現在の関数によって呼び出されたときに、子関数で費やされた時間のみを示します。

一般

全般の各列は、ビューの行で関数を識別します。

説明
[関数名] 関数の名前。
[関数アドレス] 関数のアドレス。
[関数行番号] ソース ファイルのこの関数の開始行番号。
[呼び出し数] この関数への呼び出しの総数。
[ソース ファイル] この関数の定義を含むソース ファイル。
[モジュール名] 関数を含むモジュールの名前。
[モジュール パス] 関数を含むモジュールのパス。
プロセス ID プロファイリング実行のプロセス ID (PID)。
プロセス名 プロセスの名前。
[プローブ オーバーヘッド時間 (関数のみ)] インストルメンテーションによって発生したこの関数のオーバーヘッド時間。 プローブ オーバーヘッドはすべての排他時間から減算されています。
[プローブ オーバーヘッド時間 (子を含む)] インストルメンテーションによって発生したこの関数とその子関数のオーバーヘッド時間。 プローブ オーバーヘッドはすべての包括時間から減算されています。
関数のコンテキスト:

0 - 現在の関数

1 - 現在の関数を呼び出す関数

2 - 現在の関数で呼び出される関数

VSPerfReport コマンド ライン レポートでのみ有効です。
ルート関数名 現在の関数の名前。 VSPerfReport コマンド ライン レポートでのみ有効です。

包括経過値

包括経過値は、関数が呼び出し履歴に存在していた時間を示します。 この時間には、子関数で費やされた時間とオペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) で費やされた時間が含まれます。

説明
[経過時間 (子を含む)] - 現在の関数の場合、その関数で費やされた時間。 この値には、子関数とオペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) で費やされた時間が含まれます。
- 呼び出し元関数の場合、この呼び出し元関数からの呼び出しによって生成された現在の関数の包括経過時間の量。
- 呼び出し先関数の場合、現在の関数からの呼び出しによって生成されたこの関数のインスタンスで費やされた時間。 この値には、呼び出し先の子関数とオペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) で費やされた時間が含まれます。
[包括経過時間 %] プロファイリング実行の包括経過時間の合計に対する、このコンテキストのこの関数に費やされた包括経過時間の割合。
[平均経過時間 (子を含む)] このコンテキストのこの関数の呼び出しの平均包括経過時間。
[最大経過時間 (子を含む)] このコンテキストのこの関数の呼び出しの最大包括経過時間。
[最小経過時間 (子を含む)] このコンテキストのこの関数の呼び出しの最小包括経過時間。

排他経過値

排他経過値は、関数が呼び出し履歴の最上位で直接実行されていた時間を示します。 この時間には、オペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) で費やされた時間が含まれますが、子関数で費やされた時間は含まれません。

説明
[経過時間 (関数のみ)] - 現在の関数の場合、その関数の直接実行で費やされた時間。 この値には、子関数とオペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) で費やされた時間が含まれます。
- 呼び出し元関数の場合、この呼び出し元関数からの呼び出しによって生成された現在の関数の排他経過時間の量。
- 呼び出し先関数の場合、現在の関数からの呼び出しによって生成されたこの関数のインスタンスで費やされた時間。 この値には、呼び出し先関数の子関数で費やされた時間は含まれませんが、オペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) は含まれます。
[排他経過時間 %] プロファイリング実行の排他経過時間の合計に対する、このコンテキストのこの関数に費やされた排他経過時間の合計の割合。
[平均経過時間 (関数のみ)] このコンテキストのこの関数の呼び出しの平均排他経過時間。
[最大経過時間 (関数のみ)] このコンテキストのこの関数の呼び出しの最大排他経過時間。
[最小経過時間 (関数のみ)] このコンテキストのこの関数の呼び出しの最小排他経過時間。

アプリケーション包括値

アプリケーション包括値は、関数が呼び出し履歴に存在していた時間を示します。 この時間には、オペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) で費やされた時間は含まれませんが、子関数で費やされた時間は含まれます。

説明
[アプリケーション時間 (子を含む)] - 現在の関数の場合、その関数と子関数で費やされた時間。 この値には、オペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) で費やされた時間は含まれません。
- 呼び出し元関数の場合、この呼び出し元関数からの呼び出しによって生成された現在の関数のアプリケーション包括時間の量。
- 呼び出し先関数の場合、現在の関数からの呼び出しによって生成されたこの関数のインスタンスで費やされた時間。 この値には、呼び出し先関数の子関数で費やされた時間が含まれますが、オペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) で費やされた時間は含まれません。
[アプリケーション包括時間 %] プロファイリング実行の包括経過時間の合計に対する、このコンテキストのこの関数のアプリケーション包括時間の合計の割合。
[平均アプリケーション時間 (子を含む)] このコンテキストのこの関数の呼び出しの平均アプリケーション包括時間。
[最大アプリケーション時間 (子を含む)] このコンテキストのこの関数の呼び出しの最大アプリケーション包括時間。
[最小アプリケーション時間 (子を含む)] このコンテキストのこの関数の呼び出しの最小アプリケーション包括時間。

アプリケーション排他値

アプリケーション排他値は、関数で費やされた時間を示します。 これには、子関数で費やされた時間およびオペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) は含まれません。

説明
[アプリケーション時間 (関数のみ)] - 現在の関数の場合、その関数の直接実行で費やされた時間。 この値には、子関数で費やされた時間およびオペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) は含まれません。
- 呼び出し元関数の場合、この呼び出し元関数からの呼び出しによって生成された現在の関数のアプリケーション排他時間の量。
- 呼び出し先関数の場合、現在の関数からの呼び出しによって生成されたこの関数のインスタンスで費やされた時間。 この値には、呼び出し先関数の子関数で費やされた時間およびオペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) は含まれません。
[アプリケーション排他時間 %] プロファイリング実行の排他経過時間の合計に対する、このコンテキストのこの関数のアプリケーション排他時間の合計の割合。
[平均アプリケーション時間 (関数のみ)] このコンテキストのこの関数の呼び出しの平均アプリケーション排他時間。
[最大アプリケーション時間 (関数のみ)] このコンテキストのこの関数の呼び出しの最大アプリケーション排他時間。
[最小アプリケーション時間 (関数のみ)] このコンテキストのこの関数の呼び出しの最小アプリケーション排他時間。

参照

方法: レポート ビューの列をカスタマイズする
呼び出し元\/呼び出し先ビュー
呼び出し元\/呼び出し先ビュー - サンプリング
呼び出し元\/呼び出し先ビュー - インストルメンテーション