[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240914175323.16206416@rorschach.local.home>
Date: Sat, 14 Sep 2024 17:53:23 -0400
From: Steven Rostedt <rostedt@...dmis.org>
To: "Masami Hiramatsu (Google)" <mhiramat@...nel.org>
Cc: Alexei Starovoitov <alexei.starovoitov@...il.com>, Florent Revest
<revest@...omium.org>, linux-trace-kernel@...r.kernel.org, LKML
<linux-kernel@...r.kernel.org>, Martin KaFai Lau <martin.lau@...ux.dev>,
bpf <bpf@...r.kernel.org>, Sven Schnelle <svens@...ux.ibm.com>, Alexei
Starovoitov <ast@...nel.org>, Jiri Olsa <jolsa@...nel.org>, Arnaldo
Carvalho de Melo <acme@...nel.org>, Daniel Borkmann <daniel@...earbox.net>,
Alan Maguire <alan.maguire@...cle.com>, Mark Rutland
<mark.rutland@....com>, Peter Zijlstra <peterz@...radead.org>, Thomas
Gleixner <tglx@...utronix.de>, Guo Ren <guoren@...nel.org>,
linux-arch@...r.kernel.org
Subject: Re: [PATCH v14 19/19] fgraph: Skip recording calltime/rettime if it
is not nneeded
On Fri, 13 Sep 2024 00:11:38 +0900
"Masami Hiramatsu (Google)" <mhiramat@...nel.org> wrote:
> From: Masami Hiramatsu (Google) <mhiramat@...nel.org>
>
> Skip recording calltime and rettime if the fgraph_ops does not need it.
> This is a kind of performance optimization for fprobe. Since the fprobe
> user does not use these entries, recording timestamp in fgraph is just
> a overhead (e.g. eBPF, ftrace). So introduce the skip_timestamp flag,
> and all fgraph_ops sets this flag, skip recording calltime and rettime.
>
> Here is the performance results measured by
> tools/testing/selftests/bpf/benchs/run_bench_trigger.sh
>
> Without this:
> kprobe-multi : 5.700 ± 0.065M/s
> kretprobe-multi: 4.239 ± 0.006M/s
>
> With skip-timestamp:
> kprobe-multi : 6.265 ± 0.033M/s +9.91%
> kretprobe-multi: 4.758 ± 0.009M/s +12.24%
>
> Suggested-by: Jiri Olsa <olsajiri@...il.com>
> Signed-off-by: Masami Hiramatsu (Google) <mhiramat@...nel.org>
Can you try this series instead:
https://lore.kernel.org/all/20240914214805.779822616@goodmis.org/
I rather get rid of the calltime completely from the generic logic, and
that series does just that.
That series only replaces this patch and can be applied before this
series (or after).
-- Steve
Powered by blists - more mailing lists