After you click Review to display the memory usage trend for the selected recording, the Memory Usage page launches. This page shows a graphical representation of the memory usage trend over time using two time-series graphs along with meta-data information related to the recording.

The left panel provides quick access to the following links:
  • The OpenEdge Memory Profiler Home page.
  • The currently selected recording, along with two pre-loaded memory snapshots associated with the _PreCleanup and _Exit tags.
The visualization panel displays the memory trend for the currently selected recording, where the x-axis represents Time, while the y-axis represents Memory Used in MB.

Memory usage graphs

You can examine the selected recording to analyze:

  • Upper graph—Represents a segment of the recording determined by the selection in the lower graph navigator. The graph displays each relevant snapshot as a point. You can view the memory trend by looking at the full timeline. If multiple snapshots are available for a given time, selecting one displays a list of the other snapshots for viewing.

    Snapshot tooltip

    You can hover over the memory usage line in the upper graph to see a tooltip containing the following details for a particular snapshot:

    Table 1. Fields of snapshot tooltip
    Field Description
    Snapshot ID Specifies the snapshot identifier at a particular time of memory use within the recording.
    Time Specifies the timestamp of the snapshot within the recording, without a timezone.
    Application Memory Specifies the application memory consumed by the ABL application at the time of the snapshot.
    Platform Memory Specifies the platform memory consumed by the ABL application at the time of the snapshot.
    Objects Specifies the total count of application objects encountered at the time of the snapshot.
    Tag Specifies the tag name provided by the AVM or user-defined tags generated programmatically.

    When you click a snapshot on the graph, the Snapshot at <Time> dialog box appears. This dialog displays all the tooltip fields defined in the Fields of snapshot tooltip table, along with an additional field—Request API. This field indicates the name of the top-level API called for the current request and is applicable only to PAS for OpenEdge. For ABL client processes, this field remains blank.

    Snapshot dialog box for concurrent snapshots

    When you click a snapshot on the graph, and if there are multiple snapshots recorded within the same second, the graph displays the one with the highest memory usage. The Snapshot at <Time> dialog displays a dropdown list for the Snapshot ID. This allows you to choose the specific snapshot you want to view. Once selected, the metadata for that snapshot appears in the Recording Details section. In all other cases, the Snapshot at <Time> dialog maintains its original behavior, that is displaying a single Snapshot ID without a dropdown list.

    To view more detailed information about the memory consumed by the selected snapshot, click View Snapshot. The Snapshot page opens. For more information about the Snapshot page, see Snapshot.

  • Lower graph—Represents the complete recording timeline plotted with all snapshots. When a recording is selected, only a subset of the recording timeline is highlighted. You can reposition the timeline selector anywhere inside the graph and also expand or contract the time span. The upper graph updates anytime the selection in the lower graph changes to reflect memory consumption only during the selected time span.

Both, the upper and the lower graphs illustrate the usage trends of application and platform memory by an ABL application. You have the choice to select or leave either memory type. However, hovering over both application and platform memory plots in the upper graph displays a tooltip that contains the memory details for a specific snapshot, as outlined in the Fields of snapshot tooltip table. For more information on application and platform memory and the objects they may include, see Memory utilization in an ABL session.

Filter memory usage graph using tags

In the Memory Usage section, click the Tag Filter dropdown menu to select one or more tag names of interest and display only snapshots that belong to the selected tags. This multi-select drop-down list contains tags grouped by the System and User categories. For more information on tags, see Tags.

The selected filter box updates dynamically based on the number of selected tags:
  • If fewer than two tags are selected, only the selected tags are shown.

  • If three tags are selected, two tags are shown followed by a (+1 more) indicator.

  • If all tags are selected, the label displays the type of tag, for example, System.
Note: By default, the Memory Usage page displays the full recording, encompassing both system and user-defined tags.

After you select the required tag from the drop-down list, the upper graph updates to display only snapshots associated with the selected tags within the time span selected in the bottom graph. The lower graph always shows all snapshots.

Note:
  • When you select tags to filter snapshots, the shape of the graph may vary between the upper and lower sections.
  • When the timeline selector is set to display the entire recording, the _Exit tag may not appear in the upper graph. This occurs when the _Exit tag shares a one-second interval with other snapshots, and the graph selects a different snapshot to display, typically the one with the highest memory usage. To work around this, you can:
    • Filter the upper graph to display only the _Exit tag.
    • Access the memory snapshot corresponding to the _Exit tag from the left panel. As previously stated, when viewing the memory usage trend for a recording, the left panel always lists snapshots associated with the _PreCleanup and _Exit tags, where the _Exit tag typically has a snapshot ID one greater than the _PreCleanup tag.
    • Click the _Exit tag hyperlink in the Tags section located at the bottom right of the Memory Usage page. For more information, see Tags.