[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190828053629.28658-1-jakub.kicinski@netronome.com>
Date: Tue, 27 Aug 2019 22:36:27 -0700
From: Jakub Kicinski <jakub.kicinski@...ronome.com>
To: alexei.starovoitov@...il.com, daniel@...earbox.net
Cc: netdev@...r.kernel.org, oss-drivers@...ronome.com,
jaco.gericke@...ronome.com,
Jakub Kicinski <jakub.kicinski@...ronome.com>
Subject: [PATCH bpf-next 0/2] nfp: bpf: add simple map op cache
Hi!
This set adds a small batching and cache mechanism to the driver.
Map dumps require two operations per element - get next, and
lookup. Each of those needs a round trip to the device, and on
a loaded system scheduling out and in of the dumping process.
This set makes the driver request a number of entries at the same
time, and if no operation which would modify the map happens
from the host side those entries are used to serve lookup
requests for up to 250us, at which point they are considered
stale.
This set has been measured to provide almost 4x dumping speed
improvement, Jaco says:
OLD dump times
500 000 elements: 26.1s
1 000 000 elements: 54.5s
NEW dump times
500 000 elements: 7.6s
1 000 000 elements: 16.5s
Jakub Kicinski (2):
nfp: bpf: rework MTU checking
nfp: bpf: add simple map op cache
drivers/net/ethernet/netronome/nfp/bpf/cmsg.c | 187 ++++++++++++++++--
drivers/net/ethernet/netronome/nfp/bpf/fw.h | 1 +
drivers/net/ethernet/netronome/nfp/bpf/main.c | 33 ++++
drivers/net/ethernet/netronome/nfp/bpf/main.h | 24 +++
.../net/ethernet/netronome/nfp/bpf/offload.c | 3 +
drivers/net/ethernet/netronome/nfp/nfp_net.h | 2 +-
.../ethernet/netronome/nfp/nfp_net_common.c | 9 +-
7 files changed, 239 insertions(+), 20 deletions(-)
--
2.21.0
Powered by blists - more mailing lists