public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Bryan Rittmeyer <bryanr@bryanr.org>
To: Andrew Fleming <afleming@motorola.com>
Cc: linux-kernel@vger.kernel.org, linuxppc-dev@lists.linuxppc.org
Subject: Re: [patch] oprofile + ppc750cx perfmon
Date: Fri, 28 Mar 2003 00:31:22 -0800	[thread overview]
Message-ID: <20030328083122.GB5317@bryanr.org> (raw)
In-Reply-To: <F0BBB858-6093-11D7-BD8D-000393C30512@motorola.com>

On Thu, Mar 27, 2003 at 02:37:34PM -0600, Andrew Fleming wrote:
> I'm 99.9% positive that the counters are different.  In my experience, 
> every new microarchitecture has a completely different set of counters. 

yup. a kernel API to wrap all the low-level register config would be
nice but my interest for now is just the ppc750cx. If someone else wants to
build additional ppc32 support into oprofile, my patches could serve as a
basic starting point.

> Earlier on the list, the possibility of using the performance interrupt 
> with the timebase was proposed.

the timebase is simpler but less configurable than the PMCs.
my latest patch runs everything (oprofile+timer_interrupt)
via the timebase--there is no real support yet for the more
sophisticated PMCs.

We can allow for more user configurability by using the timebase
along side PMC interrupts. However, then we have to identify
which counter(s) caused a given interrupt, and that probably means
keeping some past state for the timebase and PMCs. For now, I'm satisfied
with hardcoded 1500 Hz profiling via the timebase; finishing up the syscall
interception is more important.

> [dec/pm switch-over race in v0003]

known issue, I was pondering a solution for a few days. It seems like
the decrementer is not individually maskable or haltable so my v0004
approach is to just do mtspr(SPRN_DEC, 0x7fffffff) upon enabling perfmon
and again inside each pm_irq.

-Bryan

       reply	other threads:[~2003-03-28  8:35 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20030327130535.GA1132@bryanr.org>
     [not found] ` <F0BBB858-6093-11D7-BD8D-000393C30512@motorola.com>
2003-03-28  8:31   ` Bryan Rittmeyer [this message]
2003-03-25  5:09 [patch] oprofile + ppc750cx perfmon Bryan Rittmeyer
2003-03-25  8:57 ` Bryan Rittmeyer
2003-03-25  9:45   ` Benjamin Herrenschmidt
2003-03-26  5:04     ` Bryan Rittmeyer
     [not found]   ` <20030325174309.GB57374@compsoc.man.ac.uk>
2003-03-26  3:50     ` Bryan Rittmeyer
     [not found]       ` <20030327010121.GA94874@compsoc.man.ac.uk>
2003-03-28  8:50         ` Bryan Rittmeyer

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=20030328083122.GB5317@bryanr.org \
    --to=bryanr@bryanr.org \
    --cc=afleming@motorola.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.linuxppc.org \
    /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