[ovs-build] Passed: ovsrobot/ovs#2379 (series_165058 - 34cc881)

Travis CI builds at travis-ci.org
Wed Mar 18 10:39:28 UTC 2020

Build Update for ovsrobot/ovs

Build: #2379
Status: Passed

Duration: 41 mins and 44 secs
Commit: 34cc881 (series_165058)
Author: Yi Yang
Message: Use TPACKET_V3 to accelerate veth for userspace datapath

We can avoid high system call overhead by using TPACKET_V3
and using DPDK-like poll to receive and send packets (Note: send
still needs to call sendto to trigger final packet transmission).

>From Linux kernel 3.10 on, TPACKET_V3 has been supported,
so all the Linux kernels current OVS supports can run
TPACKET_V3 without any problem.

I can see about 50% performance improvement for veth compared to
last recvmmsg optimization if I use TPACKET_V3, it is about 2.21
Gbps, but it was 1.47 Gbps before.

After is_pmd is set to true, performance can be improved much
more, it is about 180% performance improvement.

TPACKET_V3 can support TSO, but its performance isn't good because
of TPACKET_V3 kernel implementation issue, so it falls back to
recvmmsg in case userspace-tso-enable is set to true, but its
performance is better than recvmmsg in case userspace-tso-enable is
set to false, so just use TPACKET_V3 in that case.

Note: how much performance improvement is up to your platform,
some platforms can see huge improvement, some ones aren't so
noticeable, but if is_pmd is set to true, you can see big
performance improvement, the prerequisite is your tested veth
interfaces should be attached to different pmd threads.

Signed-off-by: Yi Yang <yangyi01 at inspur.com>
Co-authored-by: William Tu <u9012063 at gmail.com>
Signed-off-by: William Tu <u9012063 at gmail.com>
Signed-off-by: 0-day Robot <robot at bytheb.org>

View the changeset: https://github.com/ovsrobot/ovs/commit/34cc881c5c89

View the full build log and details: https://travis-ci.org/github/ovsrobot/ovs/builds/663868133?utm_medium=notification&utm_source=email


You can unsubscribe from build emails from the ovsrobot/ovs repository going to https://travis-ci.org/account/preferences/unsubscribe?repository=22285853&utm_medium=notification&utm_source=email.
Or unsubscribe from *all* email updating your settings at https://travis-ci.org/account/preferences/unsubscribe?utm_medium=notification&utm_source=email.
Or configure specific recipients for build notifications in your .travis.yml file. See https://docs.travis-ci.com/user/notifications.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-build/attachments/20200318/eec33468/attachment.html>

More information about the build mailing list