linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@kernel.org>
To: "Wangnan (F)" <wangnan0@huawei.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
	Yunlong Song <yunlong.song@huawei.com>,
	paulus@samba.org, mingo@redhat.com, acme@kernel.org,
	linux-kernel@vger.kernel.org, namhyung@kernel.org,
	ast@kernel.org, masami.hiramatsu.pt@hitachi.com,
	kan.liang@intel.com, adrian.hunter@intel.com, jolsa@kernel.org,
	dsahern@gmail.com, bp@alien8.de, jean.pihet@linaro.org,
	rric@kernel.org, xiakaixu@huawei.com, hekuang@huawei.com
Subject: Re: [PATCH] perf record: Add snapshot mode support for perf's regular events
Date: Thu, 26 Nov 2015 10:19:10 +0100	[thread overview]
Message-ID: <20151126091910.GA6380@gmail.com> (raw)
In-Reply-To: <5655AF89.8070907@huawei.com>


* Wangnan (F) <wangnan0@huawei.com> wrote:

> 
> 
> On 2015/11/25 20:20, Peter Zijlstra wrote:
> >On Wed, Nov 25, 2015 at 05:44:00PM +0800, Wangnan (F) wrote:
> >>
> >>On 2015/11/25 17:27, Peter Zijlstra wrote:
> >>>On Tue, Nov 24, 2015 at 10:00:31PM +0800, Yunlong Song wrote:
> >>>>In our patch, we create and maintain a user space ring buffer to store
> >>>>perf's tracing info, instead of directly writing to perf.data file as
> >>>>before. In snapshot mode, only a SIGUSR2 signal can trigger perf to dump
> >>>>the tracing info currently stored in the user space ring buffer to
> >>>>perf.data file.
> >>>I would very much like to first fix the perf overwrite mode: see
> >>>lkml.kernel.org/r/20151023151205.GW11639@twins.programming.kicks-ass.net
> >>I think they can be done in parallel. We can first do something with
> >>tracking events and perf's output file, and wait for kernel level
> >>overwrite mode fixed, then decide whether to implement perf's own
> >>ringbuffer.
> >That seems backwards; why would you ever want to endlessly copy the
> >events if you're not going to use them?
> 
> I agree that we need to fixing overwrite mode. However, user space ringbuffer 
> can be more flexible. for example, dynamically shrinking and expansion. It would 
> be hard in kernel I think, and I'm not sure how much flexibility we need. Doing 
> things in kernel always more difficult than in userspace.
> 
> But yes, we can do that userspace ring buffer when we really need it. At very 
> first we can start working on perf side and assume overwrite mode is ready.

I don't think Peter asked for much: pick up the patch he has already written and 
use it, to have an even lower overhead always-enabled background tracing mode of 
perf.

Resizing shouldn't be much of an issue with existing features: if events start 
overflowing or some other threshold for dynamic increase of the ring-buffer is met 
then the daemon should open a new set of events with a larger ring-buffer, and 
close the old events once the new tracing ring-buffer is up and running.

Use event multiplexing to output all interesting events into the same single (per 
CPU) ring-buffer.

Thanks,

	Ingo

  reply	other threads:[~2015-11-26  9:19 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-24 14:00 [PATCH] perf record: Add snapshot mode support for perf's regular events Yunlong Song
2015-11-24 14:00 ` Yunlong Song
2015-11-24 14:30   ` Arnaldo Carvalho de Melo
2015-11-25 12:44     ` Yunlong Song
2015-11-24 15:06   ` David Ahern
2015-11-24 15:20     ` Arnaldo Carvalho de Melo
2015-11-24 15:24       ` David Ahern
2015-11-24 15:40         ` Arnaldo Carvalho de Melo
2015-11-24 16:16           ` David Ahern
2015-11-25  3:50       ` Wangnan (F)
2015-11-25  5:06         ` David Ahern
2015-11-25  7:22         ` Adrian Hunter
2015-11-25  7:47           ` Wangnan (F)
2015-11-25  8:27             ` Adrian Hunter
2015-11-25  8:43               ` Wangnan (F)
2015-11-25  9:05                 ` Adrian Hunter
2015-11-25  7:50     ` Yunlong Song
2015-11-25  9:27 ` Peter Zijlstra
2015-11-25  9:44   ` Wangnan (F)
2015-11-25 12:20     ` Peter Zijlstra
2015-11-25 12:54       ` Wangnan (F)
2015-11-26  9:19         ` Ingo Molnar [this message]
2015-11-26  9:24           ` Wangnan (F)
2015-11-26  9:27           ` Ingo Molnar
2015-11-26  9:40             ` Ingo Molnar
2015-11-26  9:57             ` Ingo Molnar
2015-12-02  8:25   ` Wangnan (F)
2015-12-02 13:38     ` [RFC PATCH] perf/core: Put size of a sample at the end of it Wang Nan
2015-12-03 10:08       ` Peter Zijlstra
2015-12-03 10:31         ` Wangnan (F)
2015-12-07 13:28       ` [RFC PATCH v2 0/3] perf core/perf tools: Utilizing overwrite ring buffer Wang Nan
2015-12-07 13:28         ` [RFC PATCH v2 1/3] perf/core: Put size of a sample at the end of it Wang Nan
2015-12-07 13:28         ` [RFC PATCH v2 2/3] perf tools: Enable overwrite settings Wang Nan
2015-12-07 13:28         ` [RFC PATCH v2 3/3] perf record: Find tail pointer through size at end of event Wang Nan

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=20151126091910.GA6380@gmail.com \
    --to=mingo@kernel.org \
    --cc=acme@kernel.org \
    --cc=adrian.hunter@intel.com \
    --cc=ast@kernel.org \
    --cc=bp@alien8.de \
    --cc=dsahern@gmail.com \
    --cc=hekuang@huawei.com \
    --cc=jean.pihet@linaro.org \
    --cc=jolsa@kernel.org \
    --cc=kan.liang@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=masami.hiramatsu.pt@hitachi.com \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=paulus@samba.org \
    --cc=peterz@infradead.org \
    --cc=rric@kernel.org \
    --cc=wangnan0@huawei.com \
    --cc=xiakaixu@huawei.com \
    --cc=yunlong.song@huawei.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;
as well as URLs for NNTP newsgroup(s).