From: Daniel Borkmann <dborkman@redhat.com>
To: Alexei Starovoitov <ast@plumgrid.com>
Cc: Ingo Molnar <mingo@kernel.org>,
"David S. Miller" <davem@davemloft.net>,
Steven Rostedt <rostedt@goodmis.org>,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
"H. Peter Anvin" <hpa@zytor.com>,
Thomas Gleixner <tglx@linutronix.de>,
Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>,
Tom Zanussi <tom.zanussi@linux.intel.com>,
Jovi Zhangwei <jovi.zhangwei@gmail.com>,
Eric Dumazet <edumazet@google.com>,
Linus Torvalds <torvalds@linux-foundation.org>,
Andrew Morton <akpm@linux-foundation.org>,
Frederic Weisbecker <fweisbec@gmail.com>,
Arnaldo Carvalho de Melo <acme@infradead.org>,
Pekka Enberg <penberg@iki.fi>,
Arjan van de Ven <arjan@infradead.org>,
Christoph Hellwig <hch@infradead.org>,
linux-kernel@vger.kernel.org, netdev@vger.kernel.org
Subject: Re: [RFC PATCH v2 tip 0/7] 64-bit BPF insn set and tracing filters
Date: Sat, 15 Feb 2014 17:13:42 +0100 [thread overview]
Message-ID: <52FF9236.1040205@redhat.com> (raw)
In-Reply-To: <CAMEtUuyZtE1hSBP5xXOjTy1sed2iV1JK8pEGQATiwmxsj+GUFw@mail.gmail.com>
On 02/14/2014 06:55 PM, Alexei Starovoitov wrote:
> On Fri, Feb 14, 2014 at 9:02 AM, Daniel Borkmann <dborkman@redhat.com> wrote:
>> On 02/14/2014 01:59 AM, Alexei Starovoitov wrote:
>> ...
>>>>
>>>> I'm very curious, do you also have any performance numbers, e.g. for
>>>>
>>>> networking by taking JIT'ed/non-JIT'ed BPF filters and compare them
>>>> against
>>>> JIT'ed/non-JIT'ed eBPF filters to see how many pps we gain or loose e.g.
>>>> for a scenario with a middle box running cls_bpf .. or some other macro/
>>>> micro benchmark just to get a picture where both stand in terms of
>>>> performance? Who knows, maybe it would outperform nftables engine as
>>>> well? ;-) How would that look on a 32bit arch with eBPF that is 64bit?
>>>
>>> I don't have jited/non-jited numbers, but I suspect for micro-benchmarks
>>> the gap should be big. I was shooting for near native performance after
>>> JIT.
>>
>> Ohh, I meant it would be interesting to see a comparison of e.g. common
>> libpcap
>> high-level filters that are in 32bit BPF + JIT (current code) vs 64bit BPF +
>> JIT
>> (new code). I'm wondering how 32bit-only archs should be handled to not
>> regress
>> in evaluation performance to the current code.
>
> Agreed. If we want to rip off old bpf interpreter and replace it with old->new
> converter + new bpf interpreter, the performance of it should be very close.
> In grand scheme some differences are ok, since libpcap bpf filters are not hot.
> So much is happening before and after that tcpdump won't notice whether
> filter was jited or not. cls_bpf is a different story, though I don't know what
> specific use case you have there.
> Could you define a bpf micro benchmark ? cls_bpf with pktgen?
Well, that's just one example, it's not necessarily about cls_bpf, e.g. just
a modified pktgen where skb goes through new/old BPF filters on local output
path and the remote machine queries nic counters (e.g. ifpps, an ixia box or
something else suitable). There's probably even something more simple and
suitable for comparing both, so it doesn't necessarily has to be this scenario.
It's just to have a basic comparison to see where we would stand e.g. in case
of 32/64bit architectures. Otherwise, regarding your other email, sounds like
convergence at least to _me_. Details can then still be discussed at particular
steps, but integrating this step by step into the existing architecture would
be a good start, imho.
next prev parent reply other threads:[~2014-02-15 16:14 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-06 1:10 [RFC PATCH v2 tip 0/7] 64-bit BPF insn set and tracing filters Alexei Starovoitov
2014-02-06 1:10 ` [RFC PATCH v2 tip 1/7] Extended BPF core framework Alexei Starovoitov
2014-02-06 1:10 ` [RFC PATCH v2 tip 2/7] Extended BPF JIT for x86-64 Alexei Starovoitov
2014-02-06 1:10 ` [RFC PATCH v2 tip 3/7] Extended BPF (64-bit BPF) design document Alexei Starovoitov
2014-02-06 1:10 ` [RFC PATCH v2 tip 4/7] Revert "x86/ptrace: Remove unused regs_get_argument_nth API" Alexei Starovoitov
2014-02-06 1:10 ` [RFC PATCH v2 tip 5/7] use BPF in tracing filters Alexei Starovoitov
2014-02-06 1:10 ` [RFC PATCH v2 tip 6/7] LLVM BPF backend Alexei Starovoitov
2014-02-06 1:10 ` [RFC PATCH v2 tip 7/7] tracing filter examples in BPF Alexei Starovoitov
2014-02-06 10:42 ` [RFC PATCH v2 tip 0/7] 64-bit BPF insn set and tracing filters Daniel Borkmann
2014-02-07 1:20 ` Alexei Starovoitov
2014-02-13 20:20 ` Daniel Borkmann
2014-02-13 22:22 ` Daniel Borkmann
2014-02-14 0:59 ` Alexei Starovoitov
2014-02-14 17:02 ` Daniel Borkmann
2014-02-14 17:55 ` Alexei Starovoitov
2014-02-15 16:13 ` Daniel Borkmann [this message]
2014-02-14 4:47 ` Alexei Starovoitov
2014-02-14 17:27 ` Daniel Borkmann
2014-02-14 20:17 ` Alexei Starovoitov
2014-02-13 22:32 ` H. Peter Anvin
2014-02-13 22:44 ` Daniel Borkmann
2014-02-13 22:47 ` H. Peter Anvin
2014-02-13 22:55 ` Daniel Borkmann
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=52FF9236.1040205@redhat.com \
--to=dborkman@redhat.com \
--cc=a.p.zijlstra@chello.nl \
--cc=acme@infradead.org \
--cc=akpm@linux-foundation.org \
--cc=arjan@infradead.org \
--cc=ast@plumgrid.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=fweisbec@gmail.com \
--cc=hch@infradead.org \
--cc=hpa@zytor.com \
--cc=jovi.zhangwei@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=masami.hiramatsu.pt@hitachi.com \
--cc=mingo@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=penberg@iki.fi \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
--cc=tom.zanussi@linux.intel.com \
--cc=torvalds@linux-foundation.org \
/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).