build: reduce max_lcores for ppc

Message ID 20210428201016.125533-1-drc@linux.vnet.ibm.com (mailing list archive)
State Accepted, archived
Delegated to: Thomas Monjalon
Headers
Series build: reduce max_lcores for ppc |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/github-robot success github build: passed
ci/Intel-compilation warning apply issues

Commit Message

David Christensen April 28, 2021, 8:10 p.m. UTC
  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")
Cc: dwilder@us.ibm.com

Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
---
 config/ppc/meson.build | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

--
2.27.0
  

Comments

Luca Boccassi April 29, 2021, 11:28 a.m. UTC | #1
On Wed, 28 Apr 2021 at 21:10, David Christensen <drc@linux.vnet.ibm.com>
wrote:
>
> 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")
> Cc: dwilder@us.ibm.com
>
> Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
> ---
>  config/ppc/meson.build | 17 ++++++++++++++---
>  1 file changed, 14 insertions(+), 3 deletions(-)

Acked-by: Luca Boccassi <bluca@debian.org>
  
Thomas Monjalon May 4, 2021, 1:16 p.m. UTC | #2
29/04/2021 13:28, Luca Boccassi:
> On Wed, 28 Apr 2021 at 21:10, David Christensen <drc@linux.vnet.ibm.com>
> wrote:
> >
> > 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.

> > Bugzilla ID: 684
> > Fixes: db1f2f8a9fe5 ("config: increase maximum lcores for ppc")
> > Cc: dwilder@us.ibm.com

Cc: stable@dpdk.org

> >
> > Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
> > ---
> >  config/ppc/meson.build | 17 ++++++++++++++---
> >  1 file changed, 14 insertions(+), 3 deletions(-)
> 
> Acked-by: Luca Boccassi <bluca@debian.org>

Applied, thanks
  

Patch

diff --git a/config/ppc/meson.build b/config/ppc/meson.build
index 0d8da87e6f..ed6ea07d24 100644
--- a/config/ppc/meson.build
+++ b/config/ppc/meson.build
@@ -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)