dotTrace 2020.3 ヘルプ

予測パフォーマンス

大規模で複雑なアプリケーションの場合、通常、プロファイルするには多くの時間がかかります。スナップショットを分析しているうちに、時間がかかるような機能やクラスが見つかることがあります。これらの関数とクラスを最適化することで、アプリケーション全体のパフォーマンスを向上させることができます。調整機能オプションを使用すると、関数の最適化の影響をある程度即座に確認できます。

選択した関数を除外したり、実行時間を実質的にゼロに減らしたい場合は、簡単に実行できます。

関数呼び出しの実行時間をゼロにするには

  1. 関数を選択。

  2. 以下のいずれか 1 つを実行します:
    • メニューバーで編集 | 時間を調整する | 現在のインスタンスを最適化するを選択します。

    • 関数を右クリックし、コンテキストメニューで時間を調整する | 現在のインスタンスを最適化するをクリックします。

    • Del を押します。

すべての関数呼び出しの実行時間をゼロにするには

  1. 関数を選択。

  2. 以下のいずれか 1 つを実行します:
    • メニューバーで編集 | 時間を調整する | すべてのインスタンスを最適化するを選択します。

    • 関数を右クリックし、コンテキストメニューで時間を調整する | すべてのインスタンスを最適化するをクリックします。

    • Shift+Del を押します。

選択した機能をある程度のみ最適化する場合や、時間の調整をきめ細かく制御する必要がある場合は、時間を調整するダイアログを使用します。

関数またはクラスの実行時間を調整するには

  1. 調べたい機能を選択します。

  2. メニューバーの編集 | 時間を調整する | 時間を調整するを選択するか、右クリックしてコンテキストメニューの時間を調整する | 時間を調整するをクリックします。

  3. 時間を調整するダイアログが開きます。

    Forecasting 1
    このダイアログでオプションを設定します。詳細は、時間を調整するを参照してください。

  4. OK をクリックします。

以下の例を参照してください。最初の図は、InitializeComponents 機能で最も多くの時間が費やされたことを示しています。

Studying profiling results adjust time before
2 番目の図は、この関数の実行時間を 50% 調整した場合の変化を示しています。
Studying profiling results adjust time after

注目すると、dotTrace はスレッドツリービューのスレッドノードの調整時間を表示しません。スレッドの時間は、作業時間とアイドル時間の合計です。そのため、時間調整がスレッドの時間にどのように影響するかを正確に判断することができません。

関数の元の値を復元するには

  1. 調整された機能を選択します。

  2. 以下のいずれか 1 つを実行します:
    • メニューバーで編集 | 時間を調整する | 元の値を復元するを選択します。

    • 調整した関数を右クリックし、時間を調整する | 元の値を復元するをクリックします。

    • Ctrl+Shift+Alt+Del を押します。

現在のタブで利用可能なすべての機能の値を復元するには

  • 以下のいずれか 1 つを実行します:
    • メニューバーで編集 | 時間を調整する | 現在のタブで行われた調整のクリアを選択します。

    • タブ内の任意の場所を右クリックし、時間を調整する | 現在のタブで行われた調整のクリアをクリックします。

現在のスナップショットのすべての調整をクリアするには、概要ビューを開き、調整された関数セクションのすべての調整をクリアをクリックします。

関連ページ:

時間を調整する

ターゲット調整する必要があるターゲットメジャーを指定します。選択した機能 - 合計時間- 関数の実行時間に、この関数によって呼び出されたすべての関数が掛かる時間、選択された機能 - 自分の時間- 独自の関数実行時間、クラス 'classname' のすべての関数- 指定されたクラス

概要

概要では、スナップショット、システム構成、プロファイルされたアプリケーション、およびプロファイリング結果に関する一般的な情報を提供します。概要を開くメニューまたは Ctrl+Shift+O ショートカットを使用してください。概要は、次のセクションで構成されています。ランタイムチャートは、プロファイリング中のアプリケーション CPU アクティビティとメモリ消費量を示します。二重矢印線は、パフォーマンスデータが収集された時間枠を示しています。注釈付き関数には、追加した関数注釈のリストが含まれています。新...

サブシステムで分析を簡素化

サブシステムとは、特定のシステムコンポーネント(.NET フレームワークのさまざまな部分、外部ライブラリ、独自のコードなど)で消費される時間を簡単に把握できる、プロファイリングスナップショットデータを表示する方法です。サブシステムは、特定の名前空間またはアセンブリ内で行われたすべての呼び出しをグル