lkml.org 
[lkml]   [2018]   [Sep]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFCv2 00/48] perf tools: Add threads to record command

* Jiri Olsa <jolsa@redhat.com> wrote:

> On Fri, Sep 14, 2018 at 02:13:07PM +0200, Ingo Molnar wrote:
> >
> > * Peter Zijlstra <peterz@infradead.org> wrote:
> >
> > > On Fri, Sep 14, 2018 at 01:47:25PM +0200, Jiri Olsa wrote:
> > > > On Fri, Sep 14, 2018 at 01:15:28PM +0200, Peter Zijlstra wrote:
> > > > > On Fri, Sep 14, 2018 at 11:40:22AM +0200, Ingo Molnar wrote:
> > > > > > In fact keeping the files separate has scalability advantages for 'perf report' and similar
> > > > > > parsing tools: they could read all the streams in a per-CPU fashion already, from the very
> > > > > > beginning.
> > > > >
> > > > > Also writing to different files from different CPUs is good for record,
> > > > > less contention on the inode state (which include pagecache).
> > > >
> > > > maybe I should explain a little bit more on this
> > > >
> > > > we write to different (per-cpu) files during the record,
> > > > and at the end of the session, we take them and store
> > > > them inside perf.data
> > >
> > > How long does it take to combine that? If we generated a lot of data,
> > > that could take a fair amount of time, no?
>
> yep.. fair amount ;-) wasn't that bad in my tests,
> but could be evil on some really big server

Also, adding any sort of 'global' processing to the end of a session sucks as a workflow
principle: perf record should ideally be as lightweight as ftrace. It should trace and that's
it - the processing should be done at the report phase. Shuffling hundreds of megs or gigs
around at the end of the session is really bad.

> > Agreed - plus at the report stage it would be advantageous to be able to *read* per-cpu files
> > as well.
> >
> > If we do things smartly them report will create similar NUMA affinity as the record session
> > used.
>
> ok, separate files it is

Thanks!!

Ingo

\
 
 \ /
  Last update: 2018-09-14 14:47    [W:0.099 / U:0.404 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site