[AMD Official Use Only - AMD Internal Distribution Only] Hi Konstantin, ________________________________ From: Konstantin Ananyev Sent: Monday, September 22, 2025 12:19 PM To: Nithin Dabilpuram ; Tummala, Sivaprasad Cc: jerinj@marvell.com ; kirankumark@marvell.com ; ndabilpuram@marvell.com ; yanzhirun_163@163.com ; david.marchand@redhat.com ; ktraynor@redhat.com ; thomas@monjalon.net ; konstantin.v.ananyev@yandex.ru ; bruce.richardson@intel.com ; maxime.coquelin@redhat.com ; aconole@redhat.com ; dev@dpdk.org ; stable@dpdk.org Subject: RE: [PATCH] examples/l3fwd-graph: remove redundant Tx queue limit Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding. > > On Mon, Sep 1, 2025 at 11:39 PM Sivaprasad Tummala > > wrote: > > > > > > In `l3fwd-graph` application, Tx queues are configured per lcore > > > to enable a lockless design and achieve optimal performance. > > > > > > The `MAX_TX_QUEUE_PER_PORT` macro, defined as `RTE_MAX_ETHPORTS`, > > > introduced an artificial constraint on the number of Tx queues > > > and limited core-scaling performance. > > > > > > This patch removes the unused `MAX_TX_QUEUE_PER_PORT` macro and > > > redundant Tx queue check, allowing Tx queues to scale directly > > > with the no. of lcores. > > > > > > Fixes: 08bd1a174461 ("examples/l3fwd-graph: add graph-based l3fwd skeleton") > > > Cc: ndabilpuram@marvell.com > > > Cc: stable@dpdk.org > > > > > > Signed-off-by: Sivaprasad Tummala > > > --- > > > examples/l3fwd-graph/main.c | 3 --- > > > 1 file changed, 3 deletions(-) > > > > > > diff --git a/examples/l3fwd-graph/main.c b/examples/l3fwd-graph/main.c > > > index 92cdaa1ebe..12908acbba 100644 > > > --- a/examples/l3fwd-graph/main.c > > > +++ b/examples/l3fwd-graph/main.c > > > @@ -49,7 +49,6 @@ > > > #define RX_DESC_DEFAULT 1024 > > > #define TX_DESC_DEFAULT 1024 > > > > > > -#define MAX_TX_QUEUE_PER_PORT RTE_MAX_ETHPORTS > > > #define MAX_RX_QUEUE_PER_PORT 128 > > AFAIK, in the mainline we actually have: > #define MAX_TX_QUEUE_PER_PORT RTE_MAX_LCORE > In l3fwd-graph app, this change is not available and instead we have #define MAX_TX_QUEUE_PER_PORT RTE_MAX_ETHPORTS > since: > commit 88256ed85338c572d73006e4c4530a52d3b477ff > Author: Harman Kalra > Date: Tue Jan 12 23:54:46 2021 +0530 > > examples/l3fwd: remove limitation on Tx queue count > > What I am missing here? This patch marked here was fixing l3fwd app and not l3fwd-graph > > > > > > > #define MAX_RX_QUEUE_PER_LCORE 16 > > > @@ -1076,8 +1075,6 @@ main(int argc, char **argv) > > > > > > nb_rx_queue = get_port_n_rx_queues(portid); > > > n_tx_queue = nb_lcores; > > > - if (n_tx_queue > MAX_TX_QUEUE_PER_PORT) > > > - n_tx_queue = MAX_TX_QUEUE_PER_PORT; > > > printf("Creating queues: nb_rxq=%d nb_txq=%u... ", > > > nb_rx_queue, n_tx_queue); > > > > > > -- > > > 2.43.0 > > >