Re: [EXTERNAL] Re: [PATCH net-next v2] net: mana: Set default number of queues to 16
From: Jakub Kicinski
Date: Fri Mar 27 2026 - 19:57:17 EST
On Fri, 27 Mar 2026 04:00:31 +0000 Long Li wrote:
> We considered netif_get_num_default_rss_queues() but chose a fixed default based on our performance testing. On Azure VMs, typical
> workloads plateau at around 16 queues - adding more queues beyond that doesn't improve throughput but increases memory usage and
> interrupt overhead.
>
> netif_get_num_default_rss_queues() would return 32-64 on large VMs (64-128 vCPUs), which wastes resources without benefit.
>
> That said, I agree that completely ignoring the core-based heuristic isn't ideal for consistency. One option is to use
> netif_get_num_default_rss_queues() but clamp it to a maximum of MANA_DEF_NUM_QUEUES (16), so small VMs still get enough queues and
> large VMs don't over-allocate. Something like:
>
> apc->num_queues = min(netif_get_num_default_rss_queues(), MANA_DEF_NUM_QUEUES);
> apc->num_queues = min(apc->num_queues, gc->max_num_queues);
>
> For reference, it seems mlx4 does something similar - it caps at DEF_RX_RINGS (16) regardless of core count.
mlx4 is a bit ancient. And mlx5 does the wrong thing, which is why
I'm so sensitive to this issue :(
> Do you want me to send a v2?
Please send a follow up, let's leave this patch be and make an
incremental change.
Thanks!