Gentlemen, On Tue, Oct 31, 2006 at 01:59:52PM -0500, William Cohen wrote: > > This is being run on a 2.6.18 kernel with the perfmon patchs. The libpfm is > the snapshot from 060926. I don't know if this might be a version issue, > but it can't hurt to include those details. I reconfigured with the > additional option. I also turned on /sys/kernel/perfmon/debug (the > messages.txt file). > > > PAPI_DEBUG=SUBSTRATE ./utils/papi_command_line PAPI_TOT_CYC >& > /tmp/output.txt > > It looks like the actual write to the pmc is the problem. I should add that > when I try to run pfmon after this that the machine locks up. I assumpte > that the is an oops. However, I have a GUI console so I can't see the > specific panic that is occurring on my laptop. > Which machine is this run on, your AMD64 laptop?
> Oct 31 13:42:08 yugo kernel: perfmon: __pfm_write_pmcs.356: CPU0 [4670]: pmc0 > is not implemented/unaccessible Your are trying to write pmc0. If on AMd64 or P6, pmc0 normally exist UNLESS you have the NMI watchdog turned on. Take a look in /sys/kernel/perfmon/pmu_desc, if you do not have a pmc0 subdir, then that is probably the issue. I do not know how PAPI uses libpfm, but if you take a look at the examples, you will see that they pass a bitmask pfp_unavail_pmcs to pfm_dispatch_events(). This is the list of PMC that are not available. Using this information libpfm, work around the PMC limitations. You need to populate the bitmask, in the example subdir, take a look a detect_pmcs.c. I suspect PAPI is nott doing this, thus libpfm returns an invalid assignment. Tools cannot assume they own the entire PMU, they need to query what's available. Hope this helps. -- -Stephane _______________________________________________ perfmon mailing list perfmon@linux.hpl.hp.com http://www.hpl.hp.com/hosted/linux/mail-archives/perfmon/