From: Paul Mackerras <paulus@samba.org>
To: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>,
Andi Kleen <andi@firstfloor.org>, Ingo Molnar <mingo@elte.hu>,
linux-kernel@vger.kernel.org,
Thomas Gleixner <tglx@linutronix.de>,
Andrew Morton <akpm@linux-foundation.org>,
Stephane Eranian <eranian@googlemail.com>,
Eric Dumazet <dada1@cosmosbay.com>,
Robert Richter <robert.richter@amd.com>,
Arjan van de Veen <arjan@infradead.org>,
Peter Anvin <hpa@zytor.com>,
"David S. Miller" <davem@davemloft.net>,
Maynard Johnson <mpjohn@us.ibm.com>,
carll@us.ibm.com
Subject: Re: Performance counter API review was [patch] Performance Counters for Linux, v3
Date: Wed, 4 Feb 2009 21:47:18 +1100 [thread overview]
Message-ID: <18825.29238.559809.341658@cargo.ozlabs.ibm.com> (raw)
In-Reply-To: <1233737124.10184.57.camel@laptop>
Peter Zijlstra writes:
> How is smp_call_function() going to help here? You still need to pull
> all that data through that one FD. That's a cacheline bounce fest.
Well, let's put this into perspective. We would be collecting 8 bytes
of data from each CPU. Hardly a "cacheline bounce fest". :)
> Why not collect all this data with per-cpu threads and post-process in
> user-space. The processing might even be capable of doing per-cpu
> filtering, reducing the amount of data that needs to be merged.
>
> No way that's better done in the kernel.
Not quite sure why you think there's an enormous volume of data to be
managed...
> > > Also, why would you be profiling while doing a hotplug? Both cpu
> > > profiling, and hotplug, are administrator operations, just don't do
> > > that.
> >
> > Performance counters are also used for counting, which by definition
> > is something that takes place over a period of time, possibly quite a
> > long time. It would be annoying to have to stop counting and start a
> > new count every time we need to plug or unplug a cpu.
>
> Well, you need to at least stop/start the cpu to be hot-(un)plugged, no
> way around that.
It might be worth having the kernel do that automatically, given that
the perfcounters code already has a hotplug notifier routine.
However, I don't think this point is worth debating until we have a
more concrete proposal.
> > I'm planning to make that operation (summing over all children) be
> > something that userspace can request via an ioctl, so userspace gets
> > to decide when and how often it's worth the expense of doing it.
>
> Userspace already has that control, you don't have to read the counter
> before you get SIGCHLD.
>
> I'm not seeing how an ioctl will help here, or did you mean a toggle
> between:
> - collect the full hierarchy
> - read the currently collected data and don't bother with the
> active kids
No, I meant an operation that syncs up all the child counters to the
parent so that a subsequent read of the counter immediately afterwards
will get a full total (just by reading the parent counter). But it
could be implemented as a toggle instead.
Paul.
next prev parent reply other threads:[~2009-02-04 10:47 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-12-11 15:52 Ingo Molnar
2008-12-11 18:02 ` Vince Weaver
2008-12-12 8:25 ` Peter Zijlstra
2008-12-12 8:35 ` stephane eranian
2008-12-12 8:51 ` Peter Zijlstra
2008-12-12 9:00 ` Peter Zijlstra
2008-12-12 9:07 ` Ingo Molnar
2008-12-12 8:59 ` stephane eranian
2008-12-12 9:23 ` Peter Zijlstra
2008-12-12 10:21 ` Robert Richter
2008-12-12 10:59 ` Christoph Hellwig
2008-12-12 11:35 ` Robert Richter
2008-12-12 16:45 ` Chris Friesen
2008-12-12 17:42 ` stephane eranian
2008-12-12 18:01 ` stephane eranian
2008-12-12 19:45 ` Chris Friesen
2008-12-15 14:50 ` stephane eranian
2008-12-15 22:32 ` Chris Friesen
2008-12-17 7:45 ` stephane eranian
2008-12-14 23:13 ` Ingo Molnar
2008-12-15 0:37 ` Paul Mackerras
2008-12-15 12:58 ` stephane eranian
2008-12-15 14:42 ` stephane eranian
2008-12-15 20:58 ` stephane eranian
2008-12-15 22:53 ` Paul Mackerras
2008-12-13 11:17 ` Peter Zijlstra
2008-12-13 13:48 ` Henrique de Moraes Holschuh
2008-12-13 17:44 ` stephane eranian
2008-12-14 1:02 ` Paul Mackerras
2008-12-14 22:37 ` Ingo Molnar
2008-12-15 0:50 ` Paul Mackerras
2008-12-15 13:02 ` stephane eranian
2008-12-12 17:03 ` Samuel Thibault
2008-12-12 17:11 ` Peter Zijlstra
2008-12-12 18:18 ` Vince Weaver
2008-12-11 18:35 ` Andrew Morton
2008-12-12 6:22 ` Ingo Molnar
2008-12-11 19:11 ` Tony Luck
2008-12-11 19:34 ` Ingo Molnar
2008-12-12 8:29 ` Peter Zijlstra
2008-12-12 8:54 ` Ingo Molnar
2008-12-12 13:42 ` Andi Kleen
2008-12-14 14:51 ` Performance counter API review was " Andi Kleen
2009-02-02 20:03 ` Corey Ashford
2009-02-02 20:33 ` Peter Zijlstra
2009-02-03 16:53 ` Maynard Johnson
2009-02-04 2:18 ` Paul Mackerras
2009-02-04 2:32 ` Nathan Lynch
2009-02-04 8:45 ` Peter Zijlstra
2009-02-04 10:47 ` Paul Mackerras [this message]
2009-02-04 10:51 ` Peter Zijlstra
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=18825.29238.559809.341658@cargo.ozlabs.ibm.com \
--to=paulus@samba.org \
--cc=a.p.zijlstra@chello.nl \
--cc=akpm@linux-foundation.org \
--cc=andi@firstfloor.org \
--cc=arjan@infradead.org \
--cc=carll@us.ibm.com \
--cc=cjashfor@linux.vnet.ibm.com \
--cc=dada1@cosmosbay.com \
--cc=davem@davemloft.net \
--cc=eranian@googlemail.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=mpjohn@us.ibm.com \
--cc=robert.richter@amd.com \
--cc=tglx@linutronix.de \
/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
all inboxes | Powered by JetHome®