[lkml]   [2009]   [Jun]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [perf] howto switch from pfmon

* Brice Goglin <> wrote:

> > How many threads does your workload typically run, and how do
> > you get their stats displayed?
> In the aforementioned OpenMP stuff, we use pfmon to get the
> local/remote numa memory access ratio of each thread. In this
> specific case, we bind one thread per core (even with a O(1)
> scheduler, people tend to avoid launching hundreds of threads on
> current machines). pfmon gives us something similar to the output
> of 'perf stat' in a file whose filename contains process and
> thread IDs. We apply our own custom script to convert these many
> pfmon output files into a single summary saying for each thread,
> its thread ID, its core binding, its individual numa node access
> numbers and percentages, and if they were local or remote (with
> the Barcelona counters we were talking about, you need to check
> where you were running before you know if accesses to node X are
> actually local or remote accesses).

Update: based on your feedback the latest perfcounters tree includes
the following new perf record features:

-s, --stat per thread counts
-n, --no-samples don't sample

--stat instructs the kernel to gather precise per task/thread stats
and emits those counts to the data file. Via --no-samples one can do
non-profiling runs - i.e. only statistics collection.

The 'perf stat' pretty printing side is not fully implemented yet -
right now you can only see these stats if you look for
PERF_EVENT_READ counts in the raw event log:

perf report -D | grep PERF_EVENT_READ

But the biggest piece, the kernel and perf record side is there
already. What kind of output would you prefer? Maybe you'd like to
take a stab at implementing the perf report side?


 \ /
  Last update: 2009-06-29 21:31    [W:0.056 / U:12.100 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site