public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
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.)

-- 

  parent reply	other threads:[~2005-12-22 18:39 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-12-19 11:31 quick overview of the perfmon2 interface Stephane Eranian
2005-12-20 10:51 ` Andrew Morton
2005-12-20 11:19   ` [Perfctr-devel] " Mikael Pettersson
2005-12-20 18:05   ` Tony Luck
2005-12-20 18:16     ` [Perfctr-devel] " Stephane Eranian
2005-12-20 23:52   ` David Gibson
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 17:23         ` Christoph Hellwig
2005-12-22 18:17           ` William Cohen
2005-12-22 18:36           ` John Reiser [this message]
2005-12-22 18:48   ` [perfmon] " Stephane Eranian

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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox