From: John Reiser <jreiser@BitWagon.com>
To: Christoph Hellwig <hch@infradead.org>
Cc: William Cohen <wcohen@redhat.com>,
Stephane Eranian <eranian@hpl.hp.com>,
Andrew Morton <akpm@osdl.org>,
linux-kernel@vger.kernel.org, perfmon@napali.hpl.hp.com,
linux-ia64@vger.kernel.org, perfctr-devel@lists.sourceforge.net
Subject: Re: [Perfctr-devel] Re: quick overview of the perfmon2 interface
Date: Thu, 22 Dec 2005 18:36:14 +0000 [thread overview]
Message-ID: <43AAF21E.5040800@BitWagon.com> (raw)
In-Reply-To: <20051222172303.GC6038@infradead.org>
Christoph Hellwig wrote:
> On Thu, Dec 22, 2005 at 10:37:56AM -0500, William Cohen wrote:
>
>>Both OProfile and PAPI are open source and could use such an performance
>>monitoring interface.
>>
>>One of the problems right now is there is a patchwork of performance
>>monitoring support. Each instrumentation system has its own set of
>>drivers/patches. Few have support integrated into the kernel, e.g.
>>OProfile. However, the OProfile driver provides only a subset of the
>>performance monitoring support, system-wide sampling. The OProfile
>>driver doesn't allow per-thread monitoring or stopwatch style
>>measurement, which can be very useful for some performance monitoring
>>applications.
>
>
> What about improving oprofile then? Unlike the vtune or perfoman people
> the oprofile authors have shown they actually are able to design sensible
> interfaces, and oprofile has broad plattform support over most support
> architectures.
Oprofile cannot be improved to provide stopwatch timing.
It is impossible because oprofile is sampling, not direct measurement.
Perfmon2, or anything which requires a system call to read a meter
[counter] of nanoseconds [per-thread virtualized cycle counter]
often adds unreasonably high overhead: hundreds of cycles or more,
instead of tens or less. CPU manufacturers are making life
difficult for users of perfctr, by muddying the meaning of
their user-readable cycle counters (see x86 RDTSC) or by omitting
user-readable cycle counters entirely (whether in the name of lower cost,
reducing "side channel" system information leaks, or otherwise.)
--
WARNING: multiple messages have this Message-ID (diff)
From: John Reiser <jreiser@BitWagon.com>
To: Christoph Hellwig <hch@infradead.org>
Cc: William Cohen <wcohen@redhat.com>,
Stephane Eranian <eranian@hpl.hp.com>,
Andrew Morton <akpm@osdl.org>,
linux-kernel@vger.kernel.org, perfmon@napali.hpl.hp.com,
linux-ia64@vger.kernel.org, perfctr-devel@lists.sourceforge.net
Subject: Re: [Perfctr-devel] Re: quick overview of the perfmon2 interface
Date: Thu, 22 Dec 2005 10:36:14 -0800 [thread overview]
Message-ID: <43AAF21E.5040800@BitWagon.com> (raw)
In-Reply-To: <20051222172303.GC6038@infradead.org>
Christoph Hellwig wrote:
> On Thu, Dec 22, 2005 at 10:37:56AM -0500, William Cohen wrote:
>
>>Both OProfile and PAPI are open source and could use such an performance
>>monitoring interface.
>>
>>One of the problems right now is there is a patchwork of performance
>>monitoring support. Each instrumentation system has its own set of
>>drivers/patches. Few have support integrated into the kernel, e.g.
>>OProfile. However, the OProfile driver provides only a subset of the
>>performance monitoring support, system-wide sampling. The OProfile
>>driver doesn't allow per-thread monitoring or stopwatch style
>>measurement, which can be very useful for some performance monitoring
>>applications.
>
>
> What about improving oprofile then? Unlike the vtune or perfoman people
> the oprofile authors have shown they actually are able to design sensible
> interfaces, and oprofile has broad plattform support over most support
> architectures.
Oprofile cannot be improved to provide stopwatch timing.
It is impossible because oprofile is sampling, not direct measurement.
Perfmon2, or anything which requires a system call to read a meter
[counter] of nanoseconds [per-thread virtualized cycle counter]
often adds unreasonably high overhead: hundreds of cycles or more,
instead of tens or less. CPU manufacturers are making life
difficult for users of perfctr, by muddying the meaning of
their user-readable cycle counters (see x86 RDTSC) or by omitting
user-readable cycle counters entirely (whether in the name of lower cost,
reducing "side channel" system information leaks, or otherwise.)
--
next prev parent reply other threads:[~2005-12-22 18:36 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-12-19 11:31 quick overview of the perfmon2 interface Stephane Eranian
2005-12-19 11:31 ` Stephane Eranian
2005-12-20 10:51 ` Andrew Morton
2005-12-20 10:51 ` Andrew Morton
2005-12-20 11:19 ` [Perfctr-devel] " Mikael Pettersson
2005-12-20 11:19 ` Mikael Pettersson
2005-12-20 18:05 ` Tony Luck
2005-12-20 18:05 ` Tony Luck
2005-12-20 18:16 ` [Perfctr-devel] " Stephane Eranian
2005-12-20 18:16 ` Stephane Eranian
2005-12-20 23:52 ` David Gibson
2005-12-20 23:52 ` David Gibson
2005-12-22 11:56 ` Stephane Eranian
2005-12-22 11:56 ` Stephane Eranian
2005-12-22 12:05 ` Christoph Hellwig
2005-12-22 15:37 ` [Perfctr-devel] " William Cohen
2005-12-22 15:37 ` William Cohen
2005-12-22 17:23 ` Christoph Hellwig
2005-12-22 18:17 ` William Cohen
2005-12-22 18:17 ` William Cohen
2005-12-22 18:36 ` John Reiser [this message]
2005-12-22 18:36 ` John Reiser
2005-12-22 18:48 ` [perfmon] " Stephane Eranian
2005-12-22 18:48 ` Stephane Eranian
2005-12-21 22:39 ` Truong, Dan
2005-12-21 22:39 ` Truong, Dan
2005-12-22 13:31 ` Truong, Dan
2005-12-22 13:31 ` Truong, Dan
2005-12-22 13:46 ` Andrew Morton
2005-12-22 13:46 ` Andrew Morton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=43AAF21E.5040800@BitWagon.com \
--to=jreiser@bitwagon.com \
--cc=akpm@osdl.org \
--cc=eranian@hpl.hp.com \
--cc=hch@infradead.org \
--cc=linux-ia64@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=perfctr-devel@lists.sourceforge.net \
--cc=perfmon@napali.hpl.hp.com \
--cc=wcohen@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.