linux_dsm_epyc7002/drivers
Gavi Teitz dabeb3b0d5 net/mlx5e: Enable stateless offloads for VF representor netdevs
Enabled checksum and TSO offloads for the representors, in
order to increase their performance, which is required to
increase the performance of flows that cannot be offloaded.

Checksum offloads contribute to a general acceleration of all
traffic (to around 150%), whereas the TSO offload contributes
to a prominent acceleration of the representor's TX for traffic
flows with larger than MTU sized packets (to around 200%). This
is the usual case for TCP streams, as the PF, which serves as
the uplink representor, and the VF representors employ GRO before
forwarding the packets to the representor.

GRO was enabled implicitly for the representors beforehand, and
is explicitly enabled here to ensure that the representors preserve
the performance boost it provides (of around 200%) when working in
tandem with the TSO offload by the forwardee, which is the standard
case as both the PF and the VF representors employ HW TSO.

The impact of these changes can be seen in the following
measurements taken on a setup of a VM over a VF, connected
to OVS via the VF representor, to an external host:

Before current changes:
                     TCP Throughput [Gb/s]
External host to VM         ~ 10.5
VM to external host         ~ 23.5

With just checksum offloads enabled:
                     TCP Throughput [Gb/s]
External host to VM         ~ 14.9
VM to external host         ~ 28.5

With the TSO offload also enabled:
                     TCP Throughput [Gb/s]
External host to VM         ~ 30.5

Signed-off-by: Gavi Teitz <gavi@mellanox.com>
Reviewed-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
2018-10-01 11:32:42 -07:00
..
accessibility
acpi
amba
android
ata for-linus-20180920 2018-09-21 09:41:05 +02:00
atm
auxdisplay
base
bcma
block for-linus-20180920 2018-09-21 09:41:05 +02:00
bluetooth
bus
cdrom
char
clk
clocksource
connector
cpufreq
cpuidle
crypto
dax
dca
devfreq
dio
dma
dma-buf
edac
eisa
extcon
firewire
firmware
fmc
fpga
fsi
gnss
gpio
gpu amdgpu, vwmgfx, i915, sun4i, vgem, vc4, udl and core fixes. 2018-09-21 09:11:18 +02:00
hid
hsi
hv
hwmon
hwspinlock
hwtracing
i2c
ide
idle
iio
infiniband
input
iommu
ipack
irqchip
isdn mISDN: remove redundant null pointer check before kfree_skb 2018-09-21 09:09:22 -07:00
leds
lightnvm
macintosh
mailbox
mcb
md
media
memory
memstick
message
mfd
misc
mmc
mtd
mux
net net/mlx5e: Enable stateless offloads for VF representor netdevs 2018-10-01 11:32:42 -07:00
nfc
ntb
nubus
nvdimm
nvme
nvmem
of
opp
oprofile
parisc
parport
pci PCI: hv: Fix return value check in hv_pci_assign_slots() 2018-09-21 19:13:22 -07:00
pcmcia
perf
phy
pinctrl pinctrl: intel: Do pin translation in other GPIO operations as well 2018-09-20 08:21:52 -07:00
platform
pnp
power
powercap
pps
ps3
ptp
pwm
rapidio
ras
regulator
remoteproc
reset
rpmsg
rtc
s390 s390/qeth: remove duplicated carrier state tracking 2018-09-26 09:56:08 -07:00
sbus
scsi Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net 2018-09-25 10:35:29 -07:00
sfi
sh
siox
slimbus
sn
soc
soundwire
spi
spmi
ssb
staging Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net 2018-09-25 10:35:29 -07:00
target scsi: target: iscsi: Use bin2hex instead of a re-implementation 2018-09-21 12:32:30 -04:00
tc
tee
thermal
thunderbolt
tty serial: imx: restore handshaking irq for imx1 2018-09-20 14:51:31 +02:00
uio
usb usb: typec: mux: Take care of driver module reference counting 2018-09-20 13:35:01 +02:00
uwb
vfio
vhost net: vhost: add rx busy polling in tx path 2018-09-26 20:25:55 -07:00
video
virt
virtio
visorbus
vlynq
vme
w1
watchdog
xen
zorro
Kconfig
Makefile