Re: [PATCH] mm: cache largest vma

From: Frederic Weisbecker
Date: Mon Nov 04 2013 - 13:10:25 EST


On Mon, Nov 04, 2013 at 06:52:45PM +0100, Ingo Molnar wrote:
>
> * Frederic Weisbecker <fweisbec@xxxxxxxxx> wrote:
>
> > On Mon, Nov 04, 2013 at 08:05:00AM +0100, Ingo Molnar wrote:
> > >
> > > * Davidlohr Bueso <davidlohr@xxxxxx> wrote:
> > >
> > > > Btw, do you suggest using a high level tool such as perf for getting
> > > > this data or sprinkling get_cycles() in find_vma() -- I'd think that the
> > > > first isn't fine grained enough, while the later will probably variate a
> > > > lot from run to run but the ratio should be rather constant.
> > >
> > > LOL - I guess I should have read your mail before replying to it ;-)
> > >
> > > Yes, I think get_cycles() works better in this case - not due to
> > > granularity (perf stat will report cycle granular just fine), but due
> > > to the size of the critical path you'll be measuring. You really want
> > > to extract the delta, because it's probably so much smaller than the
> > > overhead of the workload itself.
> > >
> > > [ We still don't have good 'measure overhead from instruction X to
> > > instruction Y' delta measurement infrastructure in perf yet,
> > > although Frederic is working on such a trigger/delta facility AFAIK.
> > > ]
> >
> > Yep, in fact Jiri took it over and he's still working on it. But yeah,
> > once that get merged, we should be able to measure instructions or
> > cycles inside any user or kernel function through kprobes/uprobes or
> > function graph tracer.
>
> So, what would be nice is to actually make use of it: one very nice
> usecase I'd love to see is to have the capability within the 'perf top'
> TUI annotated assembly output to mark specific instructions as 'start' and
> 'end' markers, and measure the overhead between them.

Yeah that would be a nice interface. Speaking about that, it would be nice to get your input
on the proposed interface for toggle events.

It's still in an RFC state, although it's getting quite elaborated, and I believe we haven't
yet found a real direction to take for the tooling interface IIRC. For example the perf record
cmdline used to state toggle events based contexts was one of the parts we were not that confident about.
And we really don't want to take a wrong direction for that as it's going to be complicated
to handle in any case.

See this thread:
https://lwn.net/Articles/568602/

thanks.

>
> I.e. allow perf top / perf report to manage probes into interesting
> functions - or create a similar TUI for 'perf probe' to allow easy live
> marking/probing of various kernel functionality.
>
> Thanks,
>
> Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/