For experiments collected with hardware counter profiling and dataspace profiling, you can view metrics related to the following:
Memory objects - components in the memory subsystem, such as cache lines, pages, and memory banks. The object is determined from an index computed from the virtual or physical address as recorded. Memory objects are predefined for virtual and physical pages, for sizes of 8KB, 64KB, 512KB, and 4MB. You can define others with the mobj_define command.
This data can only be collected on Solaris objects compiled with the -xhwcprof compiler option on SPARC architectures.
See Hardware Counter Overflow Profiling Data and for more information about these types of data. See -h counter_definition_1...[,counter_definition_n] for information about the command line used to perform hardware counter overflow profiling.
Write the summary metrics panel for the named data object. The optional parameter N is needed for those cases where the object name is ambiguous. When the directive is on the command-line, N is required; if it is not needed, it is ignored.
Write the annotated data object layouts for all program data objects with data-derived metric data, sorted by the current data sort metric values for the structures as a whole. Each aggregate data object is shown with the total metrics attributed to it, followed by all of its elements in offset order, each with their own metrics and an indicator of its size and location relative to 32-byte blocks.
Write the list of the memory objects of the given type with the current metrics. Metrics used and sorting as for the data space list. You can also use the name mobj_type directly as the command.
Write the list of known types of memory objects, as used for mobj_type in the memobj command.
Define a new type of memory objects with a mapping of VA/PA to the object given by the index_exp. The syntax of the expression is described in Expression Grammar.
The mobj_type must not already be defined. Its name must be entirely composed of alphanumeric characters or the ’_’ character, and begin with an alphabetic character.
The index_exp must be syntactically correct. If it is not syntactically correct, an error is returned and the definition is ignored.
The <Unknown> memory object has an index of -1, and the expression used to define a new memory object should support recognizing <Unknown>. For example, for VADDR-based objects, the expression should be of the following form:
and for PADDR-based objects, the expression should be of the following form: