最適化後にアプリケーションの呼び出しツリーがどのように変化したかを理解して、関数と呼び出し先ごとのパフォーマンス・メトリックの違いを確認するため、[トップダウン・ツリー] サブタブをクリックして [トップダウン・ツリー] ウィンドウを調査します。
比較モードでは、[トップダウン・ツリー] ウィンドウに 2 つの結果のデータカラムと、各プログラム単位の 2 つの結果の差を示す新しいカラムが表示されます。2 つの差は、<結果 1 の値> - <結果 2 の値> で計算されます。
比較モードの [トップダウン・ツリー] ウィンドウでは、2 つのグループ化レベルがサポートされます。
[関数スタック] の粒度は、関数のインスタンス別にデータをグループ化します。[開始アドレス] カラムで、同じソース関数または同じループの異なるインスタンスを特定します。
[ソース関数スタック]の粒度では、ソース関数別にデータをグループ化します。このモードでは、同じソース関数のすべてのインスタンスは、1 つの関数に集約されます。
関数 foo() は、アプリケーションの bar1() と bar2() の 2 つの場所から呼び出されます。結果 2 で foo() 関数が低速になった場合、[トップダウン・ツリー] ウィンドウ (比較モード) を使用して、どの呼び出し (bar1()、bar2() または両方) で低速になったかを確認します。
結果をスタックありとなしで比較するには、[コールスタック・モード] フィルターバー・オプションを [ユーザー/システム関数] に切り替えて、パフォーマンス・データがサンプルされた関数に関連付けます。