Thanks Andy! Do you happen to know if you took any special steps when building slurm to ensure that pmi2 support was present? At this end, my MVAPICH2 configure (when I try to use pmi2) is
./configure --with-pm=slurm --prefix=${installDir} --with-slurm=/opt/slurm --with-pmi=pmi2 However, as long as the “--with-pmi=pmi2” option is included, it fails with “could not find slurm/pmi2.h”. Unfortunately “--enable-slurm=yes” did not resolve the issue; the same is true for directly specifying the slurm include and library paths (--with-slurm-include and --with-slurm-lib). My suspicion is that our installation of slurm currently lacks the necessary PMI2 header file and libraries, but I am not clear on how to install these. If there is any way to install them without reinstalling slurm then that would be ideal, but if a reinstall is necessary then that too can be scheduled. Regards, Seb From: Andy Riebs [mailto:andy.ri...@hpe.com] Sent: Friday, September 29, 2017 12:30 PM To: slurm-dev <slurm-dev@schedmd.com> Subject: [slurm-dev] Re: slurm with PMI2 FWIW, we include these options when we build mvapich2: --with-pmi=pmi2 \ --with-pm=slurm \ --with-slurm=/opt/slurm \ --enable-slurm=yes" It feels like there is some redundancy there, but it works! Andy On 09/29/2017 12:12 PM, Sebastian Eastham wrote: Dear Slurm Developers mailing list, I was hoping for a quick clarification regarding PMI2 support in slurm. We are running slurm v14.11.5, and installing MVAPICH2 v2.3b, which is listed as preferring PMI2. However, we found upon trying to configure MVAPICH2 that we could not use the flag “--with-pmi=pmi2”, as this resulted in the error “could not find slurm/pmi2.h”. As a result, we built MVAPICH2 without this flag. Strangely, we can successfully run MVAPICH2 MPI jobs with slurm, using srun -n $SLURM_NTASKS --mpi=pmi2 ./my_binary, but code which requires communication between cores is running extremely slowly. My assumption is that this is because PMI2 is not actually being used, in spite of the --mpi-pmi2 flag for srun. My questions are: 1. I notice that “srun --mpi=list” shows pmi2 as an option, and that I can launch srun with the flag --mpi=pmi2. However, given that our installed slurm/lib directory does not contain a libpmi2.so file (only libpmi.*/libslurm*.* etc), and I cannot find pmi2.h installed anywhere, am I right in thinking that our as-installed version of slurm does not support PMI2? Some of the archived mailing list posts seem to support this conclusion, but I was not sure. 2. If indeed we do not have pmi2 support, what is the procedure to upgrade our build to include pmi2 support? Can this be done without fully reinstalling slurm? If so, how? If not, what additional steps will need to be taken on the reinstall to ensure that slurm has the required pmi2 support? I appreciate any help or guidance that you can give me! Regards, Seb =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Dr. Sebastian D. Eastham Research Scientist Laboratory for Aviation and the Environment Massachusetts Institute of Technology =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=