From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
To: Jesper Dangaard Brouer <hawk@kernel.org>
Cc: "Alexei Starovoitov" <alexei.starovoitov@gmail.com>,
"Toke Høiland-Jørgensen" <toke@redhat.com>,
LKML <linux-kernel@vger.kernel.org>,
"Network Development" <netdev@vger.kernel.org>,
"David S. Miller" <davem@davemloft.net>,
"Boqun Feng" <boqun.feng@gmail.com>,
"Daniel Borkmann" <daniel@iogearbox.net>,
"Eric Dumazet" <edumazet@google.com>,
"Frederic Weisbecker" <frederic@kernel.org>,
"Ingo Molnar" <mingo@redhat.com>,
"Jakub Kicinski" <kuba@kernel.org>,
"Paolo Abeni" <pabeni@redhat.com>,
"Peter Zijlstra" <peterz@infradead.org>,
"Thomas Gleixner" <tglx@linutronix.de>,
"Waiman Long" <longman@redhat.com>,
"Will Deacon" <will@kernel.org>,
"Alexei Starovoitov" <ast@kernel.org>,
"Andrii Nakryiko" <andrii@kernel.org>,
"Eduard Zingerman" <eddyz87@gmail.com>,
"Hao Luo" <haoluo@google.com>, "Jiri Olsa" <jolsa@kernel.org>,
"John Fastabend" <john.fastabend@gmail.com>,
"KP Singh" <kpsingh@kernel.org>,
"Martin KaFai Lau" <martin.lau@linux.dev>,
"Song Liu" <song@kernel.org>,
"Stanislav Fomichev" <sdf@google.com>,
"Yonghong Song" <yonghong.song@linux.dev>,
bpf <bpf@vger.kernel.org>,
"Arnaldo Carvalho de Melo" <acme@kernel.org>
Subject: Re: [PATCH net-next 14/15 v2] net: Reference bpf_redirect_info via task_struct on PREEMPT_RT.
Date: Fri, 24 May 2024 15:59:58 +0200 [thread overview]
Message-ID: <20240524135958.I_5-z_K6@linutronix.de> (raw)
In-Reply-To: <e3e21c87-d210-4360-8beb-25c6a04ce581@kernel.org>
On 2024-05-22 09:09:45 [+0200], Jesper Dangaard Brouer wrote:
> For this benchmark, to focus, I would reduce this to:
> # perf report --sort cpu,symbol --no-children
Keeping the bpf_net_ctx_set()/clear, removing the NULL checks (to align
with Alexei in his last email).
Perf numbers wise, I'm using
xdp-bench redirect-cpu --cpu 3 --remote-action drop eth1 -e
unpached:
| eth1->? 9,427,705 rx/s 0 err,drop/s
| receive total 9,427,705 pkt/s 0 drop/s 0 error/s
| cpu:17 9,427,705 pkt/s 0 drop/s 0 error/s
| enqueue to cpu 3 9,427,708 pkt/s 0 drop/s 8.00 bulk-avg
| cpu:17->3 9,427,708 pkt/s 0 drop/s 8.00 bulk-avg
| kthread total 9,427,710 pkt/s 0 drop/s 147,276 sched
| cpu:3 9,427,710 pkt/s 0 drop/s 147,276 sched
| xdp_stats 0 pass/s 9,427,710 drop/s 0 redir/s
| cpu:3 0 pass/s 9,427,710 drop/s 0 redir/s
| redirect_err 0 error/s
| xdp_exception 0 hit/s
Patched:
| eth1->? 9,557,170 rx/s 0 err,drop/s
| receive total 9,557,170 pkt/s 0 drop/s 0 error/s
| cpu:9 9,557,170 pkt/s 0 drop/s 0 error/s
| enqueue to cpu 3 9,557,170 pkt/s 0 drop/s 8.00 bulk-avg
| cpu:9->3 9,557,170 pkt/s 0 drop/s 8.00 bulk-avg
| kthread total 9,557,195 pkt/s 0 drop/s 126,164 sched
| cpu:3 9,557,195 pkt/s 0 drop/s 126,164 sched
| xdp_stats 0 pass/s 9,557,195 drop/s 0 redir/s
| cpu:3 0 pass/s 9,557,195 drop/s 0 redir/s
| redirect_err 0 error/s
| xdp_exception 0 hit/s
I think this is noise. perf output as suggested (perf report --sort
cpu,symbol --no-children).
unpatched:
| 19.05% 017 [k] bpf_prog_4f0ffbb35139c187_cpumap_l4_hash
| 11.40% 017 [k] ixgbe_poll
| 10.68% 003 [k] cpu_map_kthread_run
| 7.62% 003 [k] intel_idle
| 6.11% 017 [k] xdp_do_redirect
| 6.01% 003 [k] page_frag_free
| 4.72% 017 [k] bq_flush_to_queue
| 3.74% 017 [k] cpu_map_redirect
| 2.35% 003 [k] xdp_return_frame
| 1.55% 003 [k] bpf_prog_57cd311f2e27366b_cpumap_drop
| 1.49% 017 [k] dma_sync_single_for_device
| 1.41% 017 [k] ixgbe_alloc_rx_buffers
| 1.26% 017 [k] cpu_map_enqueue
| 1.24% 017 [k] dma_sync_single_for_cpu
| 1.12% 003 [k] __xdp_return
| 0.83% 017 [k] bpf_trace_run4
| 0.77% 003 [k] __switch_to
patched:
| 18.20% 009 [k] bpf_prog_4f0ffbb35139c187_cpumap_l4_hash
| 11.64% 009 [k] ixgbe_poll
| 7.74% 003 [k] page_frag_free
| 6.69% 003 [k] cpu_map_bpf_prog_run_xdp
| 6.02% 003 [k] intel_idle
| 5.96% 009 [k] xdp_do_redirect
| 4.45% 003 [k] cpu_map_kthread_run
| 3.71% 009 [k] cpu_map_redirect
| 3.23% 009 [k] bq_flush_to_queue
| 2.55% 003 [k] xdp_return_frame
| 1.67% 003 [k] bpf_prog_57cd311f2e27366b_cpumap_drop
| 1.60% 009 [k] _raw_spin_lock
| 1.57% 009 [k] bpf_prog_d7eca17ddc334d36_tp_xdp_cpumap_enqueue
| 1.48% 009 [k] dma_sync_single_for_device
| 1.47% 009 [k] ixgbe_alloc_rx_buffers
| 1.39% 009 [k] dma_sync_single_for_cpu
| 1.33% 009 [k] cpu_map_enqueue
| 1.19% 003 [k] __xdp_return
| 0.66% 003 [k] __switch_to
I'm going to repost the series once the merge window closes unless there
is something you want me to do.
> --Jesper
Sebastian
next prev parent reply other threads:[~2024-05-24 14:00 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20240503182957.1042122-1-bigeasy@linutronix.de>
2024-05-03 18:25 ` [PATCH net-next 11/15] lwt: Don't disable migration prio invoking BPF Sebastian Andrzej Siewior
2024-05-03 18:25 ` [PATCH net-next 12/15] seg6: Use nested-BH locking for seg6_bpf_srh_states Sebastian Andrzej Siewior
2024-05-03 18:25 ` [PATCH net-next 13/15] net: Use nested-BH locking for bpf_scratchpad Sebastian Andrzej Siewior
2024-05-03 18:25 ` [PATCH net-next 14/15] net: Reference bpf_redirect_info via task_struct on PREEMPT_RT Sebastian Andrzej Siewior
2024-05-06 19:41 ` Toke Høiland-Jørgensen
2024-05-06 23:09 ` Alexei Starovoitov
2024-05-07 12:36 ` Sebastian Andrzej Siewior
2024-05-07 13:27 ` Jesper Dangaard Brouer
2024-05-10 16:21 ` [PATCH net-next 14/15 v2] " Sebastian Andrzej Siewior
2024-05-10 16:22 ` Sebastian Andrzej Siewior
2024-05-14 5:07 ` Jesper Dangaard Brouer
2024-05-14 5:43 ` Sebastian Andrzej Siewior
2024-05-14 12:20 ` Jesper Dangaard Brouer
2024-05-17 16:15 ` Sebastian Andrzej Siewior
2024-05-22 7:09 ` Jesper Dangaard Brouer
2024-05-24 7:54 ` Sebastian Andrzej Siewior
2024-05-24 13:59 ` Sebastian Andrzej Siewior [this message]
2024-05-14 11:54 ` Toke Høiland-Jørgensen
2024-05-15 13:43 ` Sebastian Andrzej Siewior
2024-05-21 1:52 ` Alexei Starovoitov
2024-05-07 10:57 ` [PATCH net-next 14/15] " Sebastian Andrzej Siewior
2024-05-07 13:50 ` Toke Høiland-Jørgensen
2024-05-03 18:25 ` [PATCH net-next 15/15] net: Move per-CPU flush-lists to bpf_net_context " Sebastian Andrzej Siewior
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=20240524135958.I_5-z_K6@linutronix.de \
--to=bigeasy@linutronix.de \
--cc=acme@kernel.org \
--cc=alexei.starovoitov@gmail.com \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=boqun.feng@gmail.com \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=eddyz87@gmail.com \
--cc=edumazet@google.com \
--cc=frederic@kernel.org \
--cc=haoluo@google.com \
--cc=hawk@kernel.org \
--cc=john.fastabend@gmail.com \
--cc=jolsa@kernel.org \
--cc=kpsingh@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=longman@redhat.com \
--cc=martin.lau@linux.dev \
--cc=mingo@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=peterz@infradead.org \
--cc=sdf@google.com \
--cc=song@kernel.org \
--cc=tglx@linutronix.de \
--cc=toke@redhat.com \
--cc=will@kernel.org \
--cc=yonghong.song@linux.dev \
/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).