9.9.1 Overview of the base object list output functionality for Tenured augmentation factors
With the base object list output functionality for Tenured augmentation factors, you can use the unused objects statistical functionality in the Tenured area to list the base object information of unused objects and output to the thread dump file.
The unused objects statistical functionality in the Tenured area is a prerequisite for the base object list output functionality for Tenured augmentation factors.
- Tip
-
You can specify the information acquired using the base object list output functionality for Tenured augmentation factors in the automatic allocation setup file that is specified when you use the Explicit Memory Management functionality. For details about using the Explicit management heap with the automatic allocation configuration file, see 7.13.2 Using the Explicit Memory Management functionality by using the automatic placement configuration file in the uCosminexus Application Server Expansion Guide.
This subsection describes the mechanism of the base object list output functionality for Tenured augmentation factors.
- Organization of this subsection
(1) Output of the base object list
The base object list output functionality for Tenured augmentation factors is executed in continuation after the processing of the unused objects statistical functionality in the Tenured area. For details about the processing executed in the unused objects statistical functionality in the Tenured area, see the subsection 9.8.1 Overview of the unused objects statistical functionality in the Tenured area.
In the base object list output functionality for Tenured augmentation factors, search the objects in the ascending order of their address within the Tenured area. Among the searched objects, acquire the class information of objects that are already investigated in a reference relationship, and also the information of unused objects and save in an output options list.
The information saved in the output options list is sorted according to the total instance size, and only the class information in which the total size is more than the value specified in the -rootobjectinfost option of the jheapprof command are output.
(2) Checking the reference relationship of unused objects
The following is an example of the reference relationship based on the unused objects within the Tenured area, when you execute the base object list output functionality for Tenured augmentation factors to acquire the base objects.
- Number of instances
-
-
classA: One, because of the existence of a1
-
classB: Two, because of the existence of b1 and b2
-
classC: Two, because of the existence of c1 and c2
-
- Total instance size
-
-
classA: 122, when the size of the instance of classA (a1) and the size of the referenced instances (b1, b2, c1, c2) is totaled
-
classB: 22, when the size of the instances of classB (b1, b2) and the size of the referenced instances (c1, c2) is totaled
-
classC: 2, when the instances of classC (c1, c2) are totaled
Figure 9‒15: Example of the reference relationship based on the unused objects within the Tenured area
-
When you execute the unused objects statistical functionality in the Tenured area to acquire information about a reference relationship as is shown in Figure 9-15, the information acquired by the base object list output functionality for Tenured augmentation factors will be as follows:
-
Base point object: a1
-
Class of the base point object: A
-
Total instance size of class A of the base point object: 122
The following is an output example for the case when you execute the base object list output functionality for Tenured augmentation factors to output the information about the reference relationship as shown in Figure 9-15:
Garbage Profile Root Object Information --------------------------------------- *, A # 122