[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <25ade2e7-a8fe-2adb-8d4c-6cc6add21267@gmail.com>
Date: Mon, 21 Oct 2019 20:47:17 +0900
From: Toshiaki Makita <toshiaki.makita1@...il.com>
To: Björn Töpel <bjorn.topel@...il.com>,
William Tu <u9012063@...il.com>
Cc: Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Martin KaFai Lau <kafai@...com>,
Song Liu <songliubraving@...com>, Yonghong Song <yhs@...com>,
"David S. Miller" <davem@...emloft.net>,
Jakub Kicinski <jakub.kicinski@...ronome.com>,
Jesper Dangaard Brouer <hawk@...nel.org>,
John Fastabend <john.fastabend@...il.com>,
Jamal Hadi Salim <jhs@...atatu.com>,
Cong Wang <xiyou.wangcong@...il.com>,
Jiri Pirko <jiri@...nulli.us>,
Pablo Neira Ayuso <pablo@...filter.org>,
Jozsef Kadlecsik <kadlec@...filter.org>,
Florian Westphal <fw@...len.de>,
Pravin B Shelar <pshelar@....org>,
Netdev <netdev@...r.kernel.org>, bpf <bpf@...r.kernel.org>,
Stanislav Fomichev <sdf@...ichev.me>,
"Karlsson, Magnus" <magnus.karlsson@...el.com>
Subject: Re: [RFC PATCH v2 bpf-next 00/15] xdp_flow: Flow offload to XDP
On 2019/10/21 20:23, Björn Töpel wrote:
> On Sat, 19 Oct 2019 at 00:31, Toshiaki Makita
> <toshiaki.makita1@...il.com> wrote:
>>
> [...]
>>
>> * About OVS AF_XDP netdev
>>
>> Recently OVS has added AF_XDP netdev type support. This also makes use
>> of XDP, but in some ways different from this patch set.
>>
>> - AF_XDP work originally started in order to bring BPF's flexibility to
>> OVS, which enables us to upgrade datapath without updating kernel.
>> AF_XDP solution uses userland datapath so it achieved its goal.
>> xdp_flow will not replace OVS datapath completely, but offload it
>> partially just for speed up.
>>
>> - OVS AF_XDP requires PMD for the best performance so consumes 100% CPU
>> as well as using another core for softirq.
>>
>
> Disclaimer; I haven't studied the OVS AF_XDP code, so this is about
> AF_XDP in general.
>
> One of the nice things about AF_XDP is that it *doesn't* force a user
> to busy-poll (burn CPUs) like a regular userland pull-mode driver.
> Yes, you can do that if you're extremely latency sensitive, but for
> most users (and I think some OVS deployments might fit into this
> category) not pinning cores/interrupts and using poll() syscalls (need
> wakeup patch [1]) is the way to go. The scenario you're describing
> with ksoftirqd spinning on one core, and user application on another
> is not something I'd recommend, rather run your packet processing
> application on one core together with the softirq processing.
Thank you for the information.
I want to evaluate AF_XDP solution more appropriately.
William, please correct me if I'm saying something wrong here.
Or guide me if more appropriate configuration to achieve best performance is possible.
>
> Björn
> [1] https://lore.kernel.org/bpf/1565767643-4908-1-git-send-email-magnus.karlsson@intel.com/#t
Toshiaki Makita
Powered by blists - more mailing lists