Thread (10 messages) 10 messages, 3 authors, 5d ago

Re: [PATCH net v2] tun/tap & vhost-net: make qdisc backpressure opt-in via IFF_BACKPRESSURE

From: Brett A C Sheffield <hidden>
Date: 2026-07-07 20:06:18
Also in: linux-doc, lkml

On 2026-07-07 08:52, Simon Schippers wrote:
Brett, can you try the two attached patches here with iperf3?
I think testing with 8 and 16 threads is enough, so where there is a
regression.

The two patches are about time when to wake:
Currently we wake after consuming half the internal ring buffer.
One of the attached patches wakes after 2 cachelines (128 of 1000
packets) and the other one just wakes once the ring buffer is empty.

This would really help :)
Sure...


7.2.0-rc2 (unpatched)

threads 1
[  5]   0.00-10.00  sec  20.4 GBytes  17.5 Gbits/sec    0            sender
[  5]   0.00-10.00  sec  2.00 GBytes  1.72 Gbits/sec                  receiver

threads 2
[SUM]   0.00-10.00  sec  12.7 GBytes  10.9 Gbits/sec    0             sender
[SUM]   0.00-10.00  sec  4.00 GBytes  3.43 Gbits/sec                  receiver

threads 8
[SUM]   0.00-10.00  sec  11.5 GBytes  9.85 Gbits/sec    0             sender
[SUM]   0.00-10.01  sec  11.4 GBytes  9.83 Gbits/sec                  receiver

threads 16
[SUM]   0.00-10.00  sec  11.6 GBytes  9.95 Gbits/sec    0             sender
[SUM]   0.00-10.01  sec  11.5 GBytes  9.91 Gbits/sec                  receiver


7.2.0-rc2 with 0001-tun-set-waking-threshold-to-ptr_ring_empty.patch

threads 1
[  5]   0.00-10.00  sec  19.6 GBytes  16.8 Gbits/sec    0            sender
[  5]   0.00-10.00  sec  2.00 GBytes  1.72 Gbits/sec                  receiver

threads 2
[SUM]   0.00-10.00  sec  11.1 GBytes  9.50 Gbits/sec    0             sender
[SUM]   0.00-10.00  sec  4.00 GBytes  3.43 Gbits/sec                  receiver

threads 8
[SUM]   0.00-10.00  sec  10.8 GBytes  9.25 Gbits/sec    0             sender
[SUM]   0.00-10.01  sec  10.7 GBytes  9.23 Gbits/sec                  receiver

threads 16
[SUM]   0.00-10.00  sec  10.9 GBytes  9.34 Gbits/sec    0             sender
[SUM]   0.00-10.01  sec  10.8 GBytes  9.30 Gbits/sec                  receiver


7.2.0-rc2 with 0001-tun-set-waking-threshold-to-tx_ring.batch.patch

threads 1
[  5]   0.00-10.00  sec  19.6 GBytes  16.9 Gbits/sec    2            sender
[  5]   0.00-10.00  sec  2.00 GBytes  1.72 Gbits/sec                  receiver

threads 2
[SUM]   0.00-10.00  sec  13.9 GBytes  11.9 Gbits/sec    0             sender
[SUM]   0.00-10.00  sec  4.00 GBytes  3.43 Gbits/sec                  receiver

threads 8
[SUM]   0.00-10.00  sec  12.7 GBytes  10.9 Gbits/sec    0             sender
[SUM]   0.00-10.01  sec  12.3 GBytes  10.6 Gbits/sec                  receiver

threads 16
[SUM]   0.00-10.00  sec  12.5 GBytes  10.7 Gbits/sec    0             sender
[SUM]   0.00-10.00  sec  12.4 GBytes  10.7 Gbits/sec                  receiver



HTH,


Brett
-- 
Brett Sheffield (he/him)
Librecast - Decentralising the Internet with Multicast
https://librecast.net/
https://blog.brettsheffield.com/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help