Hi! I am trying to create a tool using libpfm which can sample L2 cache misses via PEBS, but also collect information from event counters. As far as I understand, there may be two ways to go about this:
1) Place the PEBS samples and the event counter samples in the sampling buffer and collect all of the samples at the same time upon buffer overflow. There is a default sampling buffer format for event counters, and a PEBS sampling buffer format. However, I am not sure how to go about placing both in the sampling buffer at the same time. Does it require a new sampling buffer format to use both? 2) Use PEBS as normal, and configure other event counters, but do not place these event counters into the sampling buffer. Instead, upon buffer overflow, read the PMDs, and collect event counter information at a courser granularity. I am trying this option currently but it does not seem to work. I have a tool which uses PEBS fine. But once I try to add another event counter, pfm_dispatch_events does not return successfully. The first counter is set to "MEM_LOAD_RETIRED:L2_MISS" as pfmlib_input.pfp_events[0] and is the events to sample PEBS on. The second event I am trying to add is "INSTRUCTIONS_RETIRED" at pfmlib_input.pfp_events[1]. Has anyone done this before or have advice on how to do this? Thanks in advance for any help! --alexshye
_______________________________________________ perfmon mailing list [email protected] http://www.hpl.hp.com/hosted/linux/mail-archives/perfmon/
