dotTrace 2020.2ヘルプ

タイムラインプロファイリング

タイムラインプロファイリング中に、dotTraceはアプリケーションイベントを記録し、プロファイリングセッション中にアプリケーションの状態がどのように変化したかに関するデータを書き込みます。これらには、一時的なコールスタックとスレッドの状態データだけでなく、メモリ割り当て、ガベージコレクション、I/O操作に関する一時的なデータも含まれます。
セッションが終了した後、記録されたイベントをタイムライン図に表示するタイムラインビューアーでプロファイリング結果を分析できます。
タイムラインプロファイリングは、Event Tracing for Windows(ETW)に基づいています。

タイムラインプロファイリングを使用するタイミング

タイムラインプロファイリングは、次の場合に便利です。

  • アプリケーションのボトルネックを見つけます。

  • ユーザーインターフェースの原因を特定します。

  • 過度のガベージコレクションとI/O操作の識別

  • 不規則な作業のディストリビューション、ロックの競合、シリアル化された実行などのマルチスレッドアプリケーションにおける課題の特定

タイムラインとパフォーマンスプロファイリングの違い

ほとんどの場合、両方のプロファイリング方法は互換性があります。どちらもコールスタックデータを収集し、パフォーマンスのボトルネックを特定できます。
タイムラインプロファイリングの主な利点は、アプリケーションによって行われた呼び出しだけでなく、これらの呼び出しが時間内にどのように分散されたかを確認できることです。これは、イベントの発生順が重要なマルチスレッドアプリケーションの動作を分析する場合に非常に役立ちます。たとえば、同期の遅延、UIのフリーズの原因などを特定できます。
もう1つの利点は、タイムラインプロファイリングにより幅広いデータが収集されることです。呼び出しスタックデータに加えて、メモリ割り当て、ガベージコレクション、およびI/Oイベントを記録します。

では、短所は何ですか?まず、トレースパフォーマンスプロファイリングタイプとは異なり、タイムラインプロファイリングでは、実行された呼び出しの正確な数を特定できません。アルゴリズムの複雑さを分析するために使用することはほとんどできません。
もう1つの懸念は、タイムラインプロファイリングがまったく異なるデータ表現を意味することです。これは、タイムラインビューアーを使用します。タイムラインビューアーは、イベントタイムラインで動作するように調整されたフィルターとダイアグラムのセットです。パフォーマンスプロファイリングとそのパフォーマンスビューアーインターフェースは、より簡単な「最も遅い方法は何か」に適しています。シナリオ。

最終更新日: 2020年5月08日