1. In neither case do I set I_MPI_PMI_LIBRARY, which I thought I needed to -- how else does IMPI find the Slurm PMI? This might be why --mpi=none is failing, but for the moment, I can't set the variable because I can't find libpmi[1,2,x].so.
2. I would think that since none is the default, it should work. Under what conditions would none fail, but pmi2 work? Is it because IMPI supports pmi2?
3. If I do need to set I_MPI_PMI_LIBRARY, why does pmi2 still work without setting I_MPI_PMI_LIBRARY? Or do I not need to set it when using IMPI?
4. I'm still trying to understand a bit more of the correlation between libpmi.so and mpi_*.so. libpmi.so is the Slurm PMI library, correct? And mpi_* are the Slurm plug-in libraries (e.g. mpi_none, mpi_pmi2, etc.). How do these libraries fit together?