* USO / UFO status ?
@ 2019-10-30 14:15 Jose Abreu
2019-10-30 19:48 ` Willem de Bruijn
0 siblings, 1 reply; 6+ messages in thread
From: Jose Abreu @ 2019-10-30 14:15 UTC (permalink / raw)
To: netdev; +Cc: Joao Pinto
Hi netdev,
What's the status of UDP Segmentation Offload (USO) and UDP
Fragmentation Offloading (UFO) on current mainline ?
I see that NETIF_F_GSO_UDP_L4 is only supported by Mellanox NIC's but I
also saw some patches from Intel submitting the support. Is there any
tool to test this (besides the -net selftests) ?
---
Thanks,
Jose Miguel Abreu
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: USO / UFO status ?
2019-10-30 14:15 USO / UFO status ? Jose Abreu
@ 2019-10-30 19:48 ` Willem de Bruijn
2019-10-30 21:22 ` Josh Hunt
0 siblings, 1 reply; 6+ messages in thread
From: Willem de Bruijn @ 2019-10-30 19:48 UTC (permalink / raw)
To: Jose Abreu; +Cc: netdev, Joao Pinto
On Wed, Oct 30, 2019 at 3:16 PM Jose Abreu <Jose.Abreu@synopsys.com> wrote:
>
> Hi netdev,
>
> What's the status of UDP Segmentation Offload (USO) and UDP
> Fragmentation Offloading (UFO) on current mainline ?
>
> I see that NETIF_F_GSO_UDP_L4 is only supported by Mellanox NIC's but I
> also saw some patches from Intel submitting the support. Is there any
> tool to test this (besides the -net selftests) ?
UDP segmentation offload with UDP_SEGMENT is always available with
software segmentation. The only driver with hardware offload (USO)
merged so far is indeed mlx5. Patches for various Intel NICs are in
review.
UFO is no longer generated by the protocol stack. It is still accepted
as input from legacy userspace with VIRTIO_NET_HDR_GSO_UDP.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: USO / UFO status ?
2019-10-30 19:48 ` Willem de Bruijn
@ 2019-10-30 21:22 ` Josh Hunt
2019-10-31 10:20 ` Jose Abreu
0 siblings, 1 reply; 6+ messages in thread
From: Josh Hunt @ 2019-10-30 21:22 UTC (permalink / raw)
To: Willem de Bruijn, Jose Abreu; +Cc: netdev, Joao Pinto
On 10/30/19 12:48 PM, Willem de Bruijn wrote:
> On Wed, Oct 30, 2019 at 3:16 PM Jose Abreu <Jose.Abreu@synopsys.com> wrote:
>>
>> Hi netdev,
>>
>> What's the status of UDP Segmentation Offload (USO) and UDP
>> Fragmentation Offloading (UFO) on current mainline ?
>>
>> I see that NETIF_F_GSO_UDP_L4 is only supported by Mellanox NIC's but I
>> also saw some patches from Intel submitting the support. Is there any
>> tool to test this (besides the -net selftests) ?
>
> UDP segmentation offload with UDP_SEGMENT is always available with
> software segmentation. The only driver with hardware offload (USO)
> merged so far is indeed mlx5. Patches for various Intel NICs are in
> review.
>
I recently added UDP GSO offload support for ixgbe, igb, and i40e. I saw
that Jeff sent the patches to Dave earlier today targeting net-next so
you should be able to test with those once they land in net-next.
I also wrote a wrapper script around the selftest benchmark code to do
my testing with, and believe the Intel folks used it as part of their
validation as well. You can find it attached to this thread:
https://lore.kernel.org/netdev/0e0e706c-4ce9-c27a-af55-339b4eb6d524@akamai.com/
Unfortunately it's poorly named there since there's already a
udpgso_bench.sh in the kernel tree... :|
Josh
^ permalink raw reply [flat|nested] 6+ messages in thread
* RE: USO / UFO status ?
2019-10-30 21:22 ` Josh Hunt
@ 2019-10-31 10:20 ` Jose Abreu
2019-11-05 15:24 ` Jose Abreu
0 siblings, 1 reply; 6+ messages in thread
From: Jose Abreu @ 2019-10-31 10:20 UTC (permalink / raw)
To: Josh Hunt, Willem de Bruijn, Jose Abreu; +Cc: netdev, Joao Pinto
Thank you both for the feedback!
From: Josh Hunt <johunt@akamai.com>
Date: Oct/30/2019, 21:22:32 (UTC+00:00)
> On 10/30/19 12:48 PM, Willem de Bruijn wrote:
> > On Wed, Oct 30, 2019 at 3:16 PM Jose Abreu <Jose.Abreu@synopsys.com> wrote:
> >>
> >> Hi netdev,
> >>
> >> What's the status of UDP Segmentation Offload (USO) and UDP
> >> Fragmentation Offloading (UFO) on current mainline ?
> >>
> >> I see that NETIF_F_GSO_UDP_L4 is only supported by Mellanox NIC's but I
> >> also saw some patches from Intel submitting the support. Is there any
> >> tool to test this (besides the -net selftests) ?
> >
> > UDP segmentation offload with UDP_SEGMENT is always available with
> > software segmentation. The only driver with hardware offload (USO)
> > merged so far is indeed mlx5. Patches for various Intel NICs are in
> > review.
> >
>
> I recently added UDP GSO offload support for ixgbe, igb, and i40e. I saw
> that Jeff sent the patches to Dave earlier today targeting net-next so
> you should be able to test with those once they land in net-next.
Well, I'm more interested in implementing it in stmmac. I have some HW
that supports USO and UFO.
> I also wrote a wrapper script around the selftest benchmark code to do
> my testing with, and believe the Intel folks used it as part of their
> validation as well. You can find it attached to this thread:
Thanks!
---
Thanks,
Jose Miguel Abreu
^ permalink raw reply [flat|nested] 6+ messages in thread
* RE: USO / UFO status ?
2019-10-31 10:20 ` Jose Abreu
@ 2019-11-05 15:24 ` Jose Abreu
2019-11-06 13:33 ` Jose Abreu
0 siblings, 1 reply; 6+ messages in thread
From: Jose Abreu @ 2019-11-05 15:24 UTC (permalink / raw)
To: Josh Hunt, Willem de Bruijn; +Cc: netdev, Joao Pinto
From: Jose Abreu <joabreu@synopsys.com>
Date: Oct/31/2019, 10:20:37 (UTC+00:00)
> Well, I'm more interested in implementing it in stmmac. I have some HW
> that supports USO and UFO.
Hi Josh,
Using your script these are the results I get:
Size = 1472
udp tx: 96 MB/s 68594 calls/s 68594 msg/s
udp tx: 95 MB/s 68018 calls/s 68018 msg/s
udp tx: 95 MB/s 68035 calls/s 68035 msg/s
udp tx: 95 MB/s 67880 calls/s 67880 msg/s
udp tx: 95 MB/s 67887 calls/s 67887 msg/s
udp tx: 95 MB/s 67789 calls/s 67789 msg/s
udp tx: 95 MB/s 67977 calls/s 67977 msg/s
udp tx: 95 MB/s 68325 calls/s 68325 msg/s
udp tx: 95 MB/s 68018 calls/s 68018 msg/s
udp tx: 95 MB/s 67926 calls/s 67926 msg/s
Size = 2944
udp tx: 107 MB/s 38151 calls/s 38151 msg/s
udp tx: 106 MB/s 38062 calls/s 38062 msg/s
udp tx: 107 MB/s 38114 calls/s 38114 msg/s
udp tx: 106 MB/s 37916 calls/s 37916 msg/s
udp tx: 106 MB/s 38054 calls/s 38054 msg/s
udp tx: 106 MB/s 37944 calls/s 37944 msg/s
udp tx: 106 MB/s 38064 calls/s 38064 msg/s
udp tx: 106 MB/s 38106 calls/s 38106 msg/s
udp tx: 106 MB/s 38042 calls/s 38042 msg/s
udp tx: 107 MB/s 38119 calls/s 38119 msg/s
Size = 5888
udp tx: 108 MB/s 19328 calls/s 19328 msg/s
udp tx: 108 MB/s 19290 calls/s 19290 msg/s
udp tx: 108 MB/s 19287 calls/s 19287 msg/s
udp tx: 108 MB/s 19300 calls/s 19300 msg/s
udp tx: 108 MB/s 19401 calls/s 19401 msg/s
udp tx: 111 MB/s 19803 calls/s 19803 msg/s
udp tx: 111 MB/s 19798 calls/s 19798 msg/s
udp tx: 110 MB/s 19723 calls/s 19723 msg/s
udp tx: 110 MB/s 19734 calls/s 19734 msg/s
udp tx: 108 MB/s 19258 calls/s 19258 msg/s
Size = 11776
udp tx: 112 MB/s 9997 calls/s 9997 msg/s
udp tx: 112 MB/s 10027 calls/s 10027 msg/s
udp tx: 112 MB/s 10027 calls/s 10027 msg/s
udp tx: 112 MB/s 10028 calls/s 10028 msg/s
udp tx: 112 MB/s 10026 calls/s 10026 msg/s
udp tx: 112 MB/s 9975 calls/s 9975 msg/s
udp tx: 112 MB/s 10026 calls/s 10026 msg/s
udp tx: 112 MB/s 10027 calls/s 10027 msg/s
udp tx: 110 MB/s 9882 calls/s 9882 msg/s
udp tx: 111 MB/s 9919 calls/s 9919 msg/s
Size = 23552
udp tx: 111 MB/s 4980 calls/s 4980 msg/s
udp tx: 112 MB/s 5021 calls/s 5021 msg/s
udp tx: 111 MB/s 4976 calls/s 4976 msg/s
udp tx: 112 MB/s 5016 calls/s 5016 msg/s
udp tx: 112 MB/s 5008 calls/s 5008 msg/s
udp tx: 111 MB/s 4966 calls/s 4966 msg/s
udp tx: 111 MB/s 4973 calls/s 4973 msg/s
udp tx: 112 MB/s 5018 calls/s 5018 msg/s
udp tx: 112 MB/s 5008 calls/s 5008 msg/s
udp tx: 112 MB/s 5008 calls/s 5008 msg/s
Size = 47104
udp tx: 112 MB/s 2515 calls/s 2515 msg/s
udp tx: 112 MB/s 2499 calls/s 2499 msg/s
udp tx: 111 MB/s 2488 calls/s 2488 msg/s
udp tx: 111 MB/s 2482 calls/s 2482 msg/s
udp tx: 111 MB/s 2490 calls/s 2490 msg/s
udp tx: 112 MB/s 2495 calls/s 2495 msg/s
udp tx: 111 MB/s 2485 calls/s 2485 msg/s
udp tx: 111 MB/s 2489 calls/s 2489 msg/s
udp tx: 112 MB/s 2501 calls/s 2501 msg/s
udp tx: 112 MB/s 2507 calls/s 2507 msg/s
Size = 61824
udp tx: 112 MB/s 1912 calls/s 1912 msg/s
udp tx: 112 MB/s 1904 calls/s 1904 msg/s
udp tx: 112 MB/s 1904 calls/s 1904 msg/s
udp tx: 111 MB/s 1896 calls/s 1896 msg/s
udp tx: 111 MB/s 1884 calls/s 1884 msg/s
udp tx: 111 MB/s 1884 calls/s 1884 msg/s
udp tx: 112 MB/s 1904 calls/s 1904 msg/s
udp tx: 112 MB/s 1908 calls/s 1908 msg/s
udp tx: 112 MB/s 1916 calls/s 1916 msg/s
udp tx: 112 MB/s 1913 calls/s 1913 msg/s
Do you know if these are in-line with the remaining 1G NICs ?
---
Thanks,
Jose Miguel Abreu
^ permalink raw reply [flat|nested] 6+ messages in thread
* RE: USO / UFO status ?
2019-11-05 15:24 ` Jose Abreu
@ 2019-11-06 13:33 ` Jose Abreu
0 siblings, 0 replies; 6+ messages in thread
From: Jose Abreu @ 2019-11-06 13:33 UTC (permalink / raw)
To: Josh Hunt, Willem de Bruijn; +Cc: netdev, Joao Pinto
From: Jose Abreu <joabreu@synopsys.com>
Date: Nov/05/2019, 15:24:54 (UTC+00:00)
> From: Jose Abreu <joabreu@synopsys.com>
> Date: Oct/31/2019, 10:20:37 (UTC+00:00)
>
> > Well, I'm more interested in implementing it in stmmac. I have some HW
> > that supports USO and UFO.
>
> Hi Josh,
>
> Using your script these are the results I get:
And now, with full benchmark:
UDP GSO On:
$pkt_size kB/s(sar) MB/s Calls/s Msg/s CPU MB2CPU
==========================================================
1472 114786.35 108 77680 77680 42.63 2.53
2944 108055.11 103 37075 37075 23.3 4.42
5888 111820.25 108 19309 19309 10.68 10.11
11776 113832.08 110 9864 9864 6.1 18.03
23552 114330.73 111 4962 4962 3.05 36.39
47104 114753.60 111 2493 2493 2.31 48.05
61824 114558.31 111 1896 1896 1.68 66.07
UDP GSO Off:
$pkt_size kB/s(sar) MB/s Calls/s Msg/s CPU MB2CPU
==========================================================
1472 114415.01 108 77386 77386 40.21 2.68
2944 115230.37 108 38964 38964 23.84 4.53
5888 109765.31 103 18579 18579 16.14 6.38
11776 110878.09 104 9369 9369 8.64 12.03
23552 109194.77 103 4613 4613 4 25.75
47104 108597.13 102 2294 2294 2.11 48.34
61824 109141.54 103 1756 1756 1.53 67.32
---
Thanks,
Jose Miguel Abreu
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2019-11-06 13:34 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-30 14:15 USO / UFO status ? Jose Abreu
2019-10-30 19:48 ` Willem de Bruijn
2019-10-30 21:22 ` Josh Hunt
2019-10-31 10:20 ` Jose Abreu
2019-11-05 15:24 ` Jose Abreu
2019-11-06 13:33 ` Jose Abreu
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.