Re: [RFC PATCH net-next v2 6/7] net: ravb: Enable SW IRQ Coalescing for GbEth

From: Sergey Shtylyov
Date: Sat Feb 10 2024 - 13:42:53 EST


On 2/6/24 12:19 PM, Paul Barker wrote:

> Software IRQ Coalescing is required to improve network stack performance
> in the RZ/G2L SoC family and the RZ/G3S SoC, i.e. the SoCs which use the
> GbEth IP.
>
> For the RZ/G2L, network throughput is comparable before and after this
> change. CPU usage during TCP RX testing dropped by 6.5% and during UDP
> RX testing dropped by 10%.
>
> For the RZ/G2UL, network throughput is greatly increased by this change
> (results obtained with iperf3):
> * TCP TX: 2.9% more throughput
> * TCP RX: 1.1% more throughput
> * UDP TX: similar throughput
> * UDP RX: 41500% more throughput

Wow! 8-)

> For the RZ/G3S we see improvements in network throughput similar to the
> RZ/G2UL.
>
> The improvement of UDP RX bandwidth for the single core SoCs (RZ/G2UL &
> RZ/G3S) is particularly critical.
>
> Signed-off-by: Paul Barker <paul.barker.ct@xxxxxxxxxxxxxx>
[...]

> diff --git a/drivers/net/ethernet/renesas/ravb.h b/drivers/net/ethernet/renesas/ravb.h
> index 55a7a08aabef..ca7a66759e35 100644
> --- a/drivers/net/ethernet/renesas/ravb.h
> +++ b/drivers/net/ethernet/renesas/ravb.h
> @@ -1078,6 +1078,7 @@ struct ravb_hw_info {
> unsigned nc_queues:1; /* AVB-DMAC has RX and TX NC queues */
> unsigned magic_pkt:1; /* E-MAC supports magic packet detection */
> unsigned half_duplex:1; /* E-MAC supports half duplex mode */
> + unsigned needs_irq_coalesce:1; /* Requires SW IRQ Coalescing to achieve best performance */

Is this really a hardware feature?
Also, s/Requires SW/Needs software/ and s/to achieve best performance//,
please...

[...]

MBR, Sergey