[PATCH v2 00/14] Add support for parameterized events from sysfs
Sukadev Bhattiprolu
sukadev at linux.vnet.ibm.com
Sat Aug 23 10:23:21 EST 2014
Jiri Olsa [jolsa at redhat.com] wrote:
<snip>
| > Description of the sysfs contents when events are parameterized (copied from an
| > included patch):
| >
| > Examples:
| >
| > domain=0x1,offset=0x8,starting_index=phys_cpu
| >
| > In the case of the last example, a value replacing "phys_cpu"
| > would need to be provided by the user selecting the particular
| > event. This is refered to as "event parameterization". All
| > non-numerical values indicate an event parameter.
| >
| > Notes on how perf-list displays parameterized events (and how to use them,
| > again culled from an included patch):
| >
| > PARAMETERIZED EVENTS
| > --------------------
| >
| > Some pmu events listed by 'perf-list' will be displayed with '?' in
| > them. For example:
| >
| > hv_gpci/dtbp_ptitc,phys_processor_idx=?/
| >
| > This means that when provided as an event, a value for
| > phys_processor_idx must also be supplied. For example:
| >
| > perf stat -e 'hv_gpci/dtbp_ptitc,phys_processor_idx=0x2/' ...
|
| hi,
| is the reason for this to document this field for event
| in "events/<event>" file?
We are trying to document that for the parameters that have the ? in
perf list, the parameter must be specified otherwise the event will
not be recognized.
|
| Because once you have the field (phys_processor_idx) defined in
| "formats/phys_processor_idx" you should be able to use it as in
| your example:
|
| perf stat -e 'hv_gpci/dtbp_ptitc,phys_processor_idx=0x2/'
|
| without any changes
For some events 'starting_index' refers to physical processor index
as shown in the sysfs entry:
$ cd /sys/bus/event_source/devices/hv_gpci/events
$ cat dispatch_timebase_by_processor_processor_time_in_timebase_cycles
request=0x10,starting_index=phys_processor_idx,counter_info_version=0x8,length=8,offset=0
and 'perf list' for this entry shows 'starting_index' with a ?
indicating it is a requireed parameter.
IIUC, rather than have the user specify a value for 'phys_processor_idx'
-e hv_gpci/dtbp_ptitc,phys_processor_idx=4/'
we would use following right ?
-e hv_gpci/dtbp_ptitc,starting_index=4/'
If so, I think the interface change makes sense. perf list would also
show 'starting_index=?' for the event.
But in the sysfs entry, rather than show 'starting_index=?', should we
leave it as:
'starting_index=phys_processor_idx'
For some events 'startind_index' refers to a physical processor id
and for others it is virtual processor id. So, showing phys_processor_idx
could serve as a hint.
Michael, Cody, Ingo, Peter, let me know if you agree or have other
comments on the inteface.
Thanks,
Sukadev
|
| thanks,
| jirka
More information about the Linuxppc-dev
mailing list