Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Version History

« Previous Version 3 Current »

Introduction

The Workflow Profiler is a tool to visualize Workflow and Unit performance. Both execution speed and memory consumption are profiled and visualized graphically.

Key design features of the profiler are:

  • Minimal memory footprint (it uses <1k per profile entry).
  • Minimal performance impact (less than 2% of added CPU usage when activated).
  • Since sampling performance was always there, there is no additional runtime overhead for that, just memory profiling needed to be added.
  • Only uses CPU time when the panel is active.


Overview

Settings: Toggles between timing and memory profiling.

Workflow Reference Time: Enter a value in milliseconds which is used to draw the Workflow timing bar (default = 20 ms, meaning 50 executions per second).

  • Increasing the value: The workflow timing profile bar gets recalculated and will be smaller.
  • Decreasing the value: The workflow timing profile bar gets recalculated and will be larger.

Workflow: Shows the workflow name and the total execution time or memory consumption, depending on the profile type setting.

The Workflow memory performance bar is calculated relative to the total memory assigned to the JVM. It should always be pretty small.

Units: For each Unit in the active Workflow there's an entry describing the Unit's performance, either execution time or memory consumption. Variables and Published Input/Output Units are excluded from that list. The list is selectable and supports multiple and disjoint selections. If one or more Units are selected in the list, the corresponding Units are selected in the Workflow view, and vice versa.

The Unit performance bars are relative to the Workflow performance. A Unit profile bar going fully to the right to red does not necessarily mean a bad thing – it just means that it consumes most of the workflow execution time or memory used.
  • No labels