Skip to content

Cannot specify PE (processing elements) in PRTE_MCA_rmaps_default_mapping_policy #13586

@satishskamath

Description

@satishskamath

Thank you for taking the time to submit an issue!

Background information

What version of Open MPI are you using? (e.g., v4.1.6, v5.0.1, git branch name and hash, etc.)

  1) 2025                           5) GCC/14.2.0                      9) libpciaccess/0.18.1-GCCcore-14.2.0  13) UCX/1.18.0-GCCcore-14.2.0       17) UCC/1.3.0-GCCcore-14.2.0
  2) GCCcore/14.2.0                 6) numactl/2.0.19-GCCcore-14.2.0  10) hwloc/2.11.2-GCCcore-14.2.0         14) libfabric/2.0.0-GCCcore-14.2.0  18) OpenMPI/5.0.7-GCC-14.2.0
  3) zlib/1.3.1-GCCcore-14.2.0      7) XZ/5.6.3-GCCcore-14.2.0        11) OpenSSL/3                           15) PMIx/5.0.6-GCCcore-14.2.0
  4) binutils/2.42-GCCcore-14.2.0   8) libxml2/2.13.4-GCCcore-14.2.0  12) libevent/2.1.12-GCCcore-14.2.0      16) PRRTE/3.0.8-GCCcore-14.2.0

v5.0.7

Describe how Open MPI was installed (e.g., from a source/distribution tarball, from a git clone, from an operating system distribution package, etc.)

Easybuild.

Please describe the system on which you are running

  • Operating system/version: Red Hat Enterprise Linux release 9.4 (Plow)
  • Computer hardware: AMD rome/genoa
  • Network type: Infiniband

Details of the problem

[satishk@tcn3 hybrid_mpi_openmp]$ mpirun -np 2 --report-bindings --prtemca rmaps_default_mapping_policy "slot:PE=2"  ./hybrid_new 
[satishk@tcn3 hybrid_mpi_openmp]$ mpirun -np 2 --report-bindings --prtemca rmaps_default_mapping_policy "slot"  ./hybrid_new 
[tcn3.local.snellius.surf.nl:2467403] Rank 0 bound to package[0][core:0]
[tcn3.local.snellius.surf.nl:2467403] Rank 1 bound to package[0][core:1]
Hello from thread 0 out of 2 from process 1 out of 2 on tcn3.local.snellius.surf.nl
Hello from thread 1 out of 2 from process 1 out of 2 on tcn3.local.snellius.surf.nl
Hello from thread 0 out of 2 from process 0 out of 2 on tcn3.local.snellius.surf.nl
Hello from thread 1 out of 2 from process 0 out of 2 on tcn3.local.snellius.surf.nl

PRRTE environment variables are not working as expected.
Based on the documentation of prte_info, I should be able to specify processing elements within slots but it does not produce any output.
Documentation:

               MCA rmaps: "rmaps_default_mapping_policy" (current value: "", data source: default, type: string)
                          Default mapping Policy [slot | hwthread | core | l1cache | l2cache | l3cache | numa | package | node | seq | dist | ppr | rankfile | pe-list=a,b
                          (comma-delimited ranges of cpus to use for this job)], with supported colon-delimited modifiers: PE=y (for multiple cpus/proc), SPAN, OVERSUBSCRIBE,
                          NOOVERSUBSCRIBE, NOLOCAL, HWTCPUS, CORECPUS, DEVICE=dev (for dist policy), INHERIT, NOINHERIT, ORDERED, FILE=%s (path to file containing sequential or
                          rankfile entries)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions