Hello David, The slot calculation is based on physical cores rather than logical cores. The 4 CPUs you are seeing there are logical CPUs. And since your processor has 2 threads per core, you have two physical cores; yielding a total of 4 logical cores (which is reported to lscpu). On machines with only 1 thread per core, the cpu number is the number of physical cores.
Thanks, Collin -----Original Message----- From: users <users-boun...@lists.open-mpi.org> On Behalf Of David Mathog via users Sent: Monday, June 8, 2020 2:19 PM To: users@lists.open-mpi.org Cc: David Mathog <dmat...@gmail.com> Subject: [OMPI users] slot number calculation when no config files? Using OpenMPI 4.0.1 and no configuration files of any kind on a linux machine which shows 4 CPUS and 2 threads per CPU. When this is run: mpirun --allow-run-as-root --oversubscribe -np 3 /usr/common/modules/el8/x86_64/software/q6/6.0.1-CentOS-vanilla/bin/qdynp eq2.inp it works and the expected 3 processes run. However if oversubscribe is omitted then this happens: There are not enough slots available in the system to satisfy the 3 slots that were requested by the application: It will run with 2 though even without -oversubscribe. It looks like it is using CPUs/2 to calculate the slot limit and ignoring threads. Where is this slot calculation documented? More details: $ cat /etc/centos-release CentOS Linux release 8.1.1911 (Core) $ mpirun --version mpirun (Open MPI) 4.0.1 $ lscpu | head -6 Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 4 On-line CPU(s) list: 0-3 Thread(s) per core: 2 $ gcc --version gcc (GCC) 8.3.1 20190507 (Red Hat 8.3.1-4) Thanks, David Mathog