DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] sched: make RED scaling configurable
@ 2017-09-01 13:41 alangordondewar
  2017-09-11 15:51 ` Kantecki, Tomasz
  2017-09-13 10:15 ` [dpdk-dev] [PATCH v2] " alangordondewar
  0 siblings, 2 replies; 15+ messages in thread
From: alangordondewar @ 2017-09-01 13:41 UTC (permalink / raw)
  To: tomasz.kantecki; +Cc: dev, Alan Dewar

From: Alan Dewar <alan.dewar@att.com>

The RED code stores the maximum threshold is a 32-bit integer as a
pseudo fixed-point floating number with 10 fractional bits.  Twelve
other bits are used to encode the filter weight, leaving just 10 bits
for the queue length.  This limits the maximum queue length supported
by RED queues as 1024 packets.

Move the "hard" definitions from red.h into config/common_base so that
RED scaling can be configured during build.

Signed-off-by: Alan Dewar <alan.dewar@att.com>
---
 config/common_base         | 2 ++
 lib/librte_sched/rte_red.h | 3 +--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/config/common_base b/config/common_base
index 5e97a08..5501dfe 100644
--- a/config/common_base
+++ b/config/common_base
@@ -666,6 +666,8 @@ CONFIG_RTE_SCHED_COLLECT_STATS=n
 CONFIG_RTE_SCHED_SUBPORT_TC_OV=n
 CONFIG_RTE_SCHED_PORT_N_GRINDERS=8
 CONFIG_RTE_SCHED_VECTOR=n
+CONFIG_RTE_RED_SCALING=10
+CONFIG_RTE_RED_MAX_TH_MAX=1023
 
 #
 # Compile the distributor library
diff --git a/lib/librte_sched/rte_red.h b/lib/librte_sched/rte_red.h
index ca12227..49d3379 100644
--- a/lib/librte_sched/rte_red.h
+++ b/lib/librte_sched/rte_red.h
@@ -51,10 +51,9 @@ extern "C" {
 #include <rte_debug.h>
 #include <rte_cycles.h>
 #include <rte_branch_prediction.h>
+#include <rte_config.h>
 
-#define RTE_RED_SCALING                     10         /**< Fraction size for fixed-point */
 #define RTE_RED_S                           (1 << 22)  /**< Packet size multiplied by number of leaf queues */
-#define RTE_RED_MAX_TH_MAX                  1023       /**< Max threshold limit in fixed point format */
 #define RTE_RED_WQ_LOG2_MIN                 1          /**< Min inverse filter weight value */
 #define RTE_RED_WQ_LOG2_MAX                 12         /**< Max inverse filter weight value */
 #define RTE_RED_MAXP_INV_MIN                1          /**< Min inverse mark probability value */
-- 
2.1.4

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2018-01-04 18:25 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-01 13:41 [dpdk-dev] [PATCH] sched: make RED scaling configurable alangordondewar
2017-09-11 15:51 ` Kantecki, Tomasz
2017-09-13 10:15 ` [dpdk-dev] [PATCH v2] " alangordondewar
2017-09-18 22:03   ` Kantecki, Tomasz
2017-09-20 13:12   ` [dpdk-dev] [PATCH v3] " alangordondewar
2017-09-25 10:36     ` Dumitrescu, Cristian
2017-09-26  8:02       ` Dewar, Alan
2017-10-03  9:21     ` [dpdk-dev] [PATCH v4] " alangordondewar
2017-10-03 17:15       ` Dumitrescu, Cristian
2018-01-02 16:21         ` Dumitrescu, Cristian
2018-01-02 16:43       ` Dumitrescu, Cristian
2018-01-03 14:29         ` Dewar, Alan
2018-01-03 16:20           ` Dumitrescu, Cristian
2018-01-04 13:34             ` Dewar, Alan
2018-01-04 18:25               ` Dumitrescu, Cristian

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).