Skip to contentSkip to conversation

build: reduce max_lcores for ppc

PATCH Applied David Christensen 3 participants 3 messages Apr 28, 2021 – May 4, 2021 Arm/Amlogic Meson SoC support

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 build: reduce max_lcores for ppc

When setting RTE_MAX_LCORES to the maximum value supported by ppc hardware (1536), the lcores_autotest may timeout after 30 seconds because the test takes nearly 60 seconds to complete. Set max_lcores to a lower value because the maximum value is unlikely to be seen in any production systems and to eliminate the quick test timeout error.

Bugzilla ID: 684

Fixes db1f2f8a9fe5 ("config: increase maximum lcores for ppc")
---
 config/ppc/meson.build | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)
config/ppc/meson.build +14 -3
index 0d8da87e6f..ed6ea07d24 100644
@@ -17,7 +17,18 @@ if not power9_supported
 	dpdk_conf.set('RTE_MACHINE','power8')
 endif
 
-# overrides specific to ppc64
-dpdk_conf.set('RTE_MAX_LCORE', 1536)
-dpdk_conf.set('RTE_MAX_NUMA_NODES', 32)
+# Certain POWER9 systems can scale as high as 1536 LCORES, but setting such a
+# high value can waste memory, cause timeouts in time limited autotests, and is
+# unlikely to be used in many production situations.  Similarly, keeping the
+# default 64 LCORES seems too small as most POWER9 dual socket systems will have
+# at least 128 LCORES available.  Set RTE_MAX_LCORE to 128 for POWER systems as
+# a compromise.
+dpdk_conf.set('RTE_MAX_LCORE', 128)
+
+# POWER systems do not allocate NUMA nodes sequentially.  A dual socket system
+# will have CPUs associated with NUMA nodes 0 & 8, so ensure that the second
+# NUMA node will be supported by setting RTE_MAX_NUMA_NODES to 16. High end
+# systems can scale even higher with as many as 32 NUMA nodes.
+dpdk_conf.set('RTE_MAX_NUMA_NODES', 16)
+
 dpdk_conf.set('RTE_CACHE_LINE_SIZE', 128)

--
2.27.0

Acked-by on v1 1/1
#1 lore raw
Quoted 7 lines · David Christensen

When setting RTE_MAX_LCORES to the maximum value supported by ppc hardware (1536), the lcores_autotest may timeout after 30 seconds because the test takes nearly 60 seconds to complete. Set max_lcores to a lower value because the maximum value is unlikely to be seen in any production systems and to eliminate the quick test timeout error.

Quoted 8 lines

Bugzilla ID: 684

Fixes db1f2f8a9fe5 ("config: increase maximum lcores for ppc")
---
 config/ppc/meson.build | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)
#2 lore raw

29/04/2021 13:28, Luca Boccassi:

Quoted 8 lines
Quoted 6 lines · David Christensen

When setting RTE_MAX_LCORES to the maximum value supported by ppc hardware (1536), the lcores_autotest may timeout after 30 seconds because the test takes nearly 60 seconds to complete. Set max_lcores to a lower value because the maximum value is unlikely to be seen in any production systems and to eliminate the quick test timeout error.

The compromise is documented, so the config exception is acceptable.

Quoted 3 lines
Quoted 3 lines

Bugzilla ID: 684

Fixes db1f2f8a9fe5 ("config: increase maximum lcores for ppc")
Quoted 7 lines
Quoted 5 lines
---
 config/ppc/meson.build | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

Applied, thanks