The OOABL Classes view displays a paginated list of all classes at the time of the reference and target snapshots, allowing you to compare memory and instance metrics across both points in time.

The class list displays the following columns that provide detailed information about each class:

Table 1. Classes comparison table
Column name Description
Name Specifies the name of the class.
Total Memory (SID1) (KB) Specifies the sum of memory used (in KB) by all instances of the class in the reference snapshot.
Total Memory (SID2) (KB) Specifies the sum of memory used (in KB) by all instances of the class in the target snapshot.
Memory Difference (KB) Specifies the difference in memory usage (in KB) between the two snapshots.
Total Base Memory (KB) (SID1) Specifies the total memory used (in KB) by the object in the reference snapshot, including memory consumed by all classes within its hierarchy.
Total Base Memory (KB) (SID2) Specifies the total memory used (in KB) by the object in the target snapshot, including memory consumed by all instances within its hierarchy.
Base Memory Difference (KB) Specifies the difference in total base memory usage (in KB) between the two snapshots.
Count (SID1) Specifies the count of all instances of a specific class type that are in memory at the time the reference snapshot was taken.
Count (SID2) Specifies the count of all instances of a specific class type that are in memory at the time the target snapshot was taken.
Count Difference [Created, Difference] Specifies the difference in the number of objects in the target snapshot compared to the reference snapshot, along with the count of instances created or deleted.
Note:
  • The Name column is always visible and cannot be deselected.
  • SID1 and SID2 refer to the snapshot identifiers used in the comparison. SID1 represents the reference snapshot taken earlier, and SID2 represents the target snapshot taken at a later point in the recording session.
Not all columns are displayed by default. You can customize the table view by selecting or deselecting columns using the column picker, available through the Primary Column Selection menu. Additionally, you can sort the table by a specific column by clicking the corresponding column header.
Note: The Name column is always visible and cannot be deselected.

Compare class-level memory usage across snapshots

To compare the memory footprint of classes between two snapshots, expand a class entry to view the list of object instances associated with it in both the reference and target snapshots. When expanded, each class displays the following object-level details:

Table 2. Class-level object details across snapshots
Column name Description
ID Specifies a unique identifier for the object allocated in memory. This object is an instance of the class it is grouped under.
Type Specifies the object type. For example, OOABL Static Obj.
Base Memory (KB) (SID1) Specifies the amount of memory used (in KB) by the application object, in the reference snapshot.
Base Memory (KB) (SID2) Specifies the amount of memory used (in KB) by the application object, in the target snapshot.
Base Memory Difference (KB) Specifies the difference in base memory usage between the two snapshots.
Memory (KB) (SID1) Specifies the sum of the memory used (in KB) for each object, including the memory consumed by the objects scoped to it, in the reference snapshot.
Memory (KB) (SID2) Specifies the sum of the memory used (in KB) for each object, including the memory consumed by the objects scoped to it, in the target snapshot.
Memory Difference (KB) Specifies the difference in memory usage between the two snapshots.
Status Specifies the status of an object. The valid values are:
  • Created—Specifies that the object has been created in memory and it exists in the snapshot.
  • Active—Specifies that the object is currently in use or referenced by other parts of the application.
  • Deleted—Specifies that the object has been deallocated or is no longer in use.
Not all columns are displayed by default. You can customize the table view by selecting or deselecting columns using the column picker, available through the Secondary Column Selection menu. Additionally, you can sort the table by a specific column by clicking the corresponding column header.
Note: The Type column is always visible and cannot be deselected.

Analyze class-level object call stack

Clicking an object row opens a panel displaying the Call Stack, which tracks the sequence in which object creation is executed in the application. Call stacks are critical as they help you understand which parts of the application code were run. You may also copy the entire stack by clicking the copy icon in the Call Stack title bar. Copying the call stack into a text editor creates a clear and accessible record of the execution sequence for debugging, analyzing, and collaboration purposes.