呼び出し元/呼び出し先ビュー - プロファイラーの .NET メモリ インストルメンテーション データ
インストルメンテーション メソッドを使用して収集された .NET メモリ プロファイル データの呼び出し元/呼び出し先ビューには、選択した関数およびその関数の親関数と子関数の割り当ておよびタイミング データが表示されます。呼び出し元/呼び出し先ビューには、次の 3 つのグリッドがあります。
[現在の関数] は中央のグリッドに表示されます。このグリッドには、選択した関数に関するメモリ プロファイル情報が表示されます。値には関数のすべてのサンプル呼び出しが含まれます。
[現在の関数を呼び出した関数] は最上部のグリッドに表示されます。このグリッドには、呼び出し元 (親) 関数からの呼び出しによって生成された、選択した (現在の) 関数の値の量が表示されます。
[現在の関数によって呼び出された関数] は、下部のグリッドに表示されます。このグリッドには、子関数が現在の関数によって呼び出されたときに、選択した関数の呼び出し先 (子) 関数に関するメモリ プロファイル データが表示されます。
呼び出し元または呼び出し先の関数行をダブルクリックすると、その行が現在の関数になります。
[全般]
[列] |
Description |
---|---|
[関数名] |
関数の名前。 |
[関数アドレス] |
関数のアドレス。 |
[関数行番号] |
ソース ファイルのこの関数の開始行番号。 |
[呼び出し数] |
この関数への呼び出しの総数。 |
[ソース ファイル] |
この関数の定義を含むソース ファイル。 |
[モジュール名] |
関数を含むモジュールの名前。 |
[モジュール パス] |
関数を含むモジュールのパス。 |
[プロセス ID] |
プロファイリング実行のプロセス ID。 |
[プロセス名] |
プロセスに割り当てられた名前。 |
[プローブ オーバーヘッド時間 (関数のみ)] |
インストルメンテーションによって発生したこの関数のオーバーヘッド時間。プローブ オーバーヘッドはすべての排他時間から減算されています。 |
[プローブ オーバーヘッド時間 (子を含む)] |
インストルメンテーションによって発生したこの関数とその子関数のオーバーヘッド時間。プローブ オーバーヘッドはすべての包括時間から減算されています。 |
種類 |
関数のコンテキスト: 0 - 現在の関数 1 - 現在の関数を呼び出す関数 2 - 現在の関数で呼び出される関数 VSPerfReport コマンド ライン レポートでのみ有効です。 |
ルート関数名 |
現在の関数の名前。VSPerfReport コマンド ライン レポートでのみ有効です。 |
.NET メモリの割り当て値
[列] |
Description |
---|---|
[割り当て数 (関数のみ)] |
|
[割り当て % (関数のみ)] |
プロファイリング実行で作成されたすべてのオブジェクトに対する、この関数の排他的割り当てであったオブジェクトの割合。 |
[割り当て数 (子を含む)] |
|
[割り当て % (子を含む)] |
プロファイリング実行で作成されたすべてのオブジェクトに対する、この関数の包括的割り当てであったオブジェクトの割合。 |
[割り当てバイト数 (関数のみ)] |
|
[割り当てバイト数 % (関数のみ)] |
プロファイリング実行で割り当てられたすべてのメモリのバイト数に対する、この関数の排他的割り当てであったバイト数の割合。 |
[割り当てバイト数 (子を含む)] |
|
[割り当てバイト数 % (子を含む)] |
プロファイリング実行で割り当てられたすべてのメモリのバイト数に対する、この関数の包括的割り当てであったバイト数の割合。 |
包括経過値
包括経過値は、関数が呼び出し履歴に存在していた時間を示します。この時間には、子関数とオペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) で費やされた時間が含まれます。
[列] |
Description |
---|---|
[経過時間 (子を含む)] |
|
[包括経過時間 %] |
プロファイリング実行の包括経過時間の合計に対する、このコンテキストのこの関数に費やされた包括経過時間の割合。 |
[平均経過時間 (子を含む)] |
このコンテキストのこの関数の呼び出しの平均包括経過時間。 |
[最大経過時間 (子を含む)] |
このコンテキストのこの関数の呼び出しの最大包括経過時間。 |
[最小経過時間 (子を含む)] |
このコンテキストのこの関数の呼び出しの最小包括経過時間。 |
排他経過値
排他経過値は、関数が呼び出し履歴の最上位で直接実行されていた時間を示します。この時間には、オペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) で費やされた時間が含まれますが、子関数で費やされた時間は含まれません。
[列] |
Description |
---|---|
[経過時間 (関数のみ)] |
|
[排他経過時間 %] |
プロファイリング実行の排他経過時間の合計に対する、このコンテキストのこの関数に費やされた排他経過時間の合計の割合。 |
[平均経過時間 (関数のみ)] |
このコンテキストのこの関数の呼び出しの平均排他経過時間。 |
[最大経過時間 (関数のみ)] |
このコンテキストのこの関数の呼び出しの最大排他経過時間。 |
[最小経過時間 (関数のみ)] |
このコンテキストのこの関数の呼び出しの最小排他経過時間。 |
アプリケーション包括値
アプリケーション包括値は、関数が呼び出し履歴に存在していた時間を示します。この時間には、オペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) で費やされた時間は含まれませんが、子関数で費やされた時間は含まれます。
[列] |
Description |
---|---|
[アプリケーション時間 (子を含む)] |
|
[アプリケーション包括時間 %] |
プロファイリング実行の包括経過時間の合計に対する、このコンテキストのこの関数のアプリケーション包括時間の合計の割合。 |
[平均アプリケーション時間 (子を含む)] |
このコンテキストのこの関数の呼び出しの平均アプリケーション包括時間。 |
[最大アプリケーション時間 (子を含む)] |
このコンテキストのこの関数の呼び出しの最大アプリケーション包括時間。 |
[最小アプリケーション時間 (子を含む)] |
このコンテキストのこの関数の呼び出しの最小アプリケーション包括時間。 |
アプリケーション排他値
アプリケーション排他値は、関数で費やされた時間を示しますが、子関数で費やされた時間は含まれません。また、オペレーティング システムの呼び出し (コンテキストの切り替え、入出力操作など) で費やされた時間も含まれません。
[列] |
Description |
---|---|
[アプリケーション時間 (関数のみ)] |
|
[アプリケーション排他時間 %] |
プロファイリング実行の排他経過時間の合計に対する、このコンテキストのこの関数のアプリケーション排他時間の合計の割合。 |
[平均アプリケーション時間 (関数のみ)] |
このコンテキストのこの関数の呼び出しの平均アプリケーション排他時間。 |
[最大アプリケーション時間 (関数のみ)] |
このコンテキストのこの関数の呼び出しの最大アプリケーション排他時間。 |
[最小アプリケーション時間 (関数のみ)] |
このコンテキストのこの関数の呼び出しの最小アプリケーション排他時間。 |
参照
処理手順
方法: プロファイリング ツールのレポート ビューの列をカスタマイズする
関連項目
呼び出し元/呼び出し先ビュー - プロファイラー .NET メモリ サンプリング データ