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: ndabilpu...@marvell.com Cc: sta...@dpdk.org Signed-off-by: Sivaprasad Tummala <sivaprasad.tumm...@amd.com> --- 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 #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