Index objects commands are applicable to all experiments. An index object list is a list of objects for whom an index can be computed from the recorded data. Index objects are predefined for Threads, Cpus, Samples, and Seconds. You can define other index objects with the indxobj_define command.
The following commands control the index-object lists.
Write the list of the index objects that match the given type, along with their metrics. Metrics and sorting for index objects is the same as those for the function list, but containing exclusive metrics only. The name indxobj_type can also be used directly as the command.
Write the list of known types of index objects, as used for indxobj_type in the indxobj command.
Define a new type of index object with a mapping of packets to the object given by the index_exp. The syntax of the expression is described in Expression Grammar.
The indxobj_type must not already be defined. Its name is case-insensitive, must be entirely composed of alphanumeric characters or the ’_’ character, and begin with an alphabetic character.
The index_exp must be syntactically correct, or an error is returned and the definition is ignored. If the index_exp contains any blanks, it must be surrounded by double quotes (").
The <Unknown> index object has an index of -1, and the expression used to define a new index object should support recognizing <Unknown>.
For example, for index objects based on virtual or physical PC, the expression should be of the following form:
Specify a selection of metrics for index objects. The metric_spec may only contain exclusive metrics and static metrics, since index objects are not hierarchical.
For information on the syntax of metric lists, see Metric Lists. To see a listing of the available metrics, use the metric_list command.
Sort the index object lists by the specified metric. The indxobj_sort metric must be either an exclusive metric or a static metric. If multiple metrics are specified, sort is done according to the first visible one that matches.