_MAC, et al, Things are looking up. By specifying, --with-verbs=no, things are looking up. I can run helloworld. But in a new-for-me wrinkle, I can only run on *more* than one node. Not sure I've ever seen that. Using 40 core nodes, this:
mpirun -np 41 ./helloWorld.mpi3.SLES12.OMPI400.exe works, and -np 40 fails: (1027)(master) $ mpirun -np 40 ./helloWorld.mpi3.SLES12.OMPI400.exe [borga033:05598] *** An error occurred in MPI_Barrier [borga033:05598] *** reported by process [140735567101953,140733193388034] [borga033:05598] *** on communicator MPI_COMM_WORLD [borga033:05598] *** MPI_ERR_OTHER: known error not in list [borga033:05598] *** MPI_ERRORS_ARE_FATAL (processes in this communicator will now abort, [borga033:05598] *** and potentially your MPI job) Compiler Version: Intel(R) Fortran Intel(R) 64 Compiler for applications running on Intel(R) 64, Version 18.0.5.274 Build 20180823 MPI Version: 3.1 MPI Library Version: Open MPI v4.0.0, package: Open MPI mathomp4@discover21 Distribution, ident: 4.0.0, repo rev: v4.0.0, Nov 12, 2018 forrtl: error (78): process killed (SIGTERM) Image PC Routine Line Source helloWorld.mpi3.S 000000000040A38E for__signal_handl Unknown Unknown libpthread-2.22.s 00002AAAAB9CCB20 Unknown Unknown Unknown libpthread-2.22.s 00002AAAAB9CC3ED __nanosleep Unknown Unknown libopen-rte.so.40 00002AAAAC3C5854 orte_show_help_no Unknown Unknown libopen-rte.so.40 00002AAAAC3C5595 orte_show_help Unknown Unknown libmpi.so.40.20.0 00002AAAAB3BADC5 ompi_mpi_errors_a Unknown Unknown libmpi.so.40.20.0 00002AAAAB3B99D9 ompi_errhandler_i Unknown Unknown libmpi.so.40.20.0 00002AAAAB3E4586 MPI_Barrier Unknown Unknown libmpi_mpifh.so.4 00002AAAAB15EE53 MPI_Barrier_f08 Unknown Unknown libmpi_usempif08. 00002AAAAACE7742 mpi_barrier_f08_ Unknown Unknown helloWorld.mpi3.S 000000000040939F Unknown Unknown Unknown helloWorld.mpi3.S 000000000040915E Unknown Unknown Unknown libc-2.22.so 00002AAAABBF96D5 __libc_start_main Unknown Unknown helloWorld.mpi3.S 0000000000409069 Unknown Unknown Unknown So, I'm getting closer but I have to admit I've never built an MPI stack before where running on a single node was the broken bit! On Tue, Jan 22, 2019 at 1:31 PM Cabral, Matias A <matias.a.cab...@intel.com> wrote: > Hi Matt, > > > > There seem to be two different issues here: > > a) The warning message comes from the openib btl. Given that > Omnipath has verbs API and you have the necessary libraries in your system, > openib btl finds itself as a potential transport and prints the warning > during its init (openib btl is its way to deprecation). You may try to > explicitly ask for vader btl given you are running on shared mem: -mca btl > self,vader -mca pml ob1. Or better, explicitly build without openib: > ./configure --with-verbs=no … > > b) Not my field of expertise, but you may be having some conflict > with the external components you are using: > --with-pmix=/usr/nlocal/pmix/2.1 --with-libevent=/usr . You may try not > specifying these and using the ones provided by OMPI. > > > > _MAC > > > > *From:* users [mailto:users-boun...@lists.open-mpi.org] *On Behalf Of *Matt > Thompson > *Sent:* Tuesday, January 22, 2019 6:04 AM > *To:* Open MPI Users <users@lists.open-mpi.org> > *Subject:* Re: [OMPI users] Help Getting Started with Open MPI and PMIx > and UCX > > > > Well, > > > > By turning off UCX compilation per Howard, things get a bit better in that > something happens! It's not a good something, as it seems to die with an > infiniband error. As this is an Omnipath system, is OpenMPI perhaps seeing > libverbs somewhere and compiling it in? To wit: > > > > (1006)(master) $ mpirun -np 4 ./helloWorld.mpi3.SLES12.OMPI400.exe > > -------------------------------------------------------------------------- > > By default, for Open MPI 4.0 and later, infiniband ports on a device > > are not used by default. The intent is to use UCX for these devices. > > You can override this policy by setting the btl_openib_allow_ib MCA > parameter > > to true. > > > > Local host: borgc129 > > Local adapter: hfi1_0 > > Local port: 1 > > > > -------------------------------------------------------------------------- > > -------------------------------------------------------------------------- > > WARNING: There was an error initializing an OpenFabrics device. > > > > Local host: borgc129 > > Local device: hfi1_0 > > -------------------------------------------------------------------------- > > Compiler Version: Intel(R) Fortran Intel(R) 64 Compiler for applications > running on Intel(R) 64, Version 18.0.5.274 Build 20180823 > > MPI Version: 3.1 > > MPI Library Version: Open MPI v4.0.0, package: Open MPI mathomp4@discover23 > Distribution, ident: 4.0.0, repo rev: v4.0.0, Nov 12, 2018 > > [borgc129:260830] *** An error occurred in MPI_Barrier > > [borgc129:260830] *** reported by process [140736833716225,46909632806913] > > [borgc129:260830] *** on communicator MPI_COMM_WORLD > > [borgc129:260830] *** MPI_ERR_OTHER: known error not in list > > [borgc129:260830] *** MPI_ERRORS_ARE_FATAL (processes in this communicator > will now abort, > > [borgc129:260830] *** and potentially your MPI job) > > forrtl: error (78): process killed (SIGTERM) > > Image PC Routine Line Source > > helloWorld.mpi3.S 000000000040A38E for__signal_handl Unknown Unknown > > libpthread-2.22.s 00002AAAAB9CCB20 Unknown Unknown Unknown > > libpthread-2.22.s 00002AAAAB9C90CD pthread_cond_wait Unknown Unknown > > libpmix.so.2.1.11 00002AAAB1D780A1 PMIx_Abort Unknown Unknown > > mca_pmix_ext2x.so 00002AAAB1B3AA75 ext2x_abort Unknown Unknown > > mca_ess_pmi.so 00002AAAB1724BC0 Unknown Unknown Unknown > > libopen-rte.so.40 00002AAAAC3E941C orte_errmgr_base_ Unknown Unknown > > mca_errmgr_defaul 00002AAABC401668 Unknown Unknown Unknown > > libmpi.so.40.20.0 00002AAAAB3CDBC4 ompi_mpi_abort Unknown Unknown > > libmpi.so.40.20.0 00002AAAAB3BB1EF ompi_mpi_errors_a Unknown Unknown > > libmpi.so.40.20.0 00002AAAAB3B99C9 ompi_errhandler_i Unknown Unknown > > libmpi.so.40.20.0 00002AAAAB3E4576 MPI_Barrier Unknown Unknown > > libmpi_mpifh.so.4 00002AAAAB15EE53 MPI_Barrier_f08 Unknown Unknown > > libmpi_usempif08. 00002AAAAACE7732 mpi_barrier_f08_ Unknown Unknown > > helloWorld.mpi3.S 000000000040939F Unknown Unknown Unknown > > helloWorld.mpi3.S 000000000040915E Unknown Unknown Unknown > > libc-2.22.so 00002AAAABBF96D5 __libc_start_main Unknown > Unknown > > helloWorld.mpi3.S 0000000000409069 Unknown Unknown Unknown > > > > On Sun, Jan 20, 2019 at 4:19 PM Howard Pritchard <hpprit...@gmail.com> > wrote: > > Hi Matt > > > > Definitely do not include the ucx option for an omnipath cluster. > Actually if you accidentally installed ucx in it’s default location use on > the system Switch to this config option > > > > —with-ucx=no > > > > Otherwise you will hit > > > > https://github.com/openucx/ucx/issues/750 > > > > Howard > > > > > > Gilles Gouaillardet <gilles.gouaillar...@gmail.com> schrieb am Sa. 19. > Jan. 2019 um 18:41: > > Matt, > > There are two ways of using PMIx > > - if you use mpirun, then the MPI app (e.g. the PMIx client) will talk > to mpirun and orted daemons (e.g. the PMIx server) > - if you use SLURM srun, then the MPI app will directly talk to the > PMIx server provided by SLURM. (note you might have to srun > --mpi=pmix_v2 or something) > > In the former case, it does not matter whether you use the embedded or > external PMIx. > In the latter case, Open MPI and SLURM have to use compatible PMIx > libraries, and you can either check the cross-version compatibility > matrix, > or build Open MPI with the same PMIx used by SLURM to be on the safe > side (not a bad idea IMHO). > > > Regarding the hang, I suggest you try different things > - use mpirun in a SLURM job (e.g. sbatch instead of salloc so mpirun > runs on a compute node rather than on a frontend node) > - try something even simpler such as mpirun hostname (both with sbatch > and salloc) > - explicitly specify the network to be used for the wire-up. you can > for example mpirun --mca oob_tcp_if_include 192.168.0.0/24 if this is > the network subnet by which all the nodes (e.g. compute nodes and > frontend node if you use salloc) communicate. > > > Cheers, > > Gilles > > On Sat, Jan 19, 2019 at 3:31 AM Matt Thompson <fort...@gmail.com> wrote: > > > > On Fri, Jan 18, 2019 at 1:13 PM Jeff Squyres (jsquyres) via users < > users@lists.open-mpi.org> wrote: > >> > >> On Jan 18, 2019, at 12:43 PM, Matt Thompson <fort...@gmail.com> wrote: > >> > > >> > With some help, I managed to build an Open MPI 4.0.0 with: > >> > >> We can discuss each of these params to let you know what they are. > >> > >> > ./configure --disable-wrapper-rpath --disable-wrapper-runpath > >> > >> Did you have a reason for disabling these? They're generally good > things. What they do is add linker flags to the wrapper compilers (i.e., > mpicc and friends) that basically put a default path to find libraries at > run time (that can/will in most cases override LD_LIBRARY_PATH -- but you > can override these linked-in-default-paths if you want/need to). > > > > > > I've had these in my Open MPI builds for a while now. The reason was one > of the libraries I need for the climate model I work on went nuts if both > of them weren't there. It was originally the rpath one but then eventually > (Open MPI 3?) I had to add the runpath one. But I have been updating the > libraries more aggressively recently (due to OS upgrades) so it's possible > this is no longer needed. > > > >> > >> > >> > --with-psm2 > >> > >> Ensure that Open MPI can include support for the PSM2 library, and > abort configure if it cannot. > >> > >> > --with-slurm > >> > >> Ensure that Open MPI can include support for SLURM, and abort configure > if it cannot. > >> > >> > --enable-mpi1-compatibility > >> > >> Add support for MPI_Address and other MPI-1 functions that have since > been deleted from the MPI 3.x specification. > >> > >> > --with-ucx > >> > >> Ensure that Open MPI can include support for UCX, and abort configure > if it cannot. > >> > >> > --with-pmix=/usr/nlocal/pmix/2.1 > >> > >> Tells Open MPI to use the PMIx that is installed at > /usr/nlocal/pmix/2.1 (instead of using the PMIx that is bundled internally > to Open MPI's source code tree/expanded tarball). > >> > >> Unless you have a reason to use the external PMIx, the internal/bundled > PMIx is usually sufficient. > > > > > > Ah. I did not know that. I figured if our SLURM was built linked to a > specific PMIx v2 that I should build Open MPI with the same PMIx. I'll > build an Open MPI 4 without specifying this. > > > >> > >> > >> > --with-libevent=/usr > >> > >> Same as previous; change "pmix" to "libevent" (i.e., use the external > libevent instead of the bundled libevent). > >> > >> > CC=icc CXX=icpc FC=ifort > >> > >> Specify the exact compilers to use. > >> > >> > The MPI 1 is because I need to build HDF5 eventually and I added psm2 > because it's an Omnipath cluster. The libevent was probably a red herring > as libevent-devel wasn't installed on the system. It was eventually, and I > just didn't remove the flag. And I saw no errors in the build! > >> > >> Might as well remove the --with-libevent if you don't need it. > >> > >> > However, I seem to have built an Open MPI that doesn't work: > >> > > >> > (1099)(master) $ mpirun --version > >> > mpirun (Open MPI) 4.0.0 > >> > > >> > Report bugs to http://www.open-mpi.org/community/help/ > >> > (1100)(master) $ mpirun -np 4 ./helloWorld.mpi3.SLES12.OMPI400.exe > >> > > >> > It just sits there...forever. Can the gurus here help me figure out > what I managed to break? Perhaps I added too much to my configure line? Not > enough? > >> > >> There could be a few things going on here. > >> > >> Are you running inside a SLURM job? E.g., in a "salloc" job, or in an > "sbatch" script? > > > > > > I have salloc'd 8 nodes of 40 cores each. Intel MPI 18 and 19 work just > fine (as you'd hope on an Omnipath cluster), but for some reason Open MPI > is twitchy on this cluster. I once managed to get Open MPI 3.0.1 working (a > few months ago), and it had some interesting startup scaling I liked (slow > at low core count, but getting close to Intel MPI at high core count), > though it seemed to not work after about 100 nodes (4000 processes) or so. > > > > -- > > Matt Thompson > > “The fact is, this is about us identifying what we do best and > > finding more ways of doing less of it better” -- Director of Better > Anna Rampton > > _______________________________________________ > > users mailing list > > users@lists.open-mpi.org > > https://lists.open-mpi.org/mailman/listinfo/users > _______________________________________________ > users mailing list > users@lists.open-mpi.org > https://lists.open-mpi.org/mailman/listinfo/users > > _______________________________________________ > users mailing list > users@lists.open-mpi.org > https://lists.open-mpi.org/mailman/listinfo/users > > > > > -- > > Matt Thompson > > “The fact is, this is about us identifying what we do best and > > finding more ways of doing less of it better” -- Director of Better > Anna Rampton > _______________________________________________ > users mailing list > users@lists.open-mpi.org > https://lists.open-mpi.org/mailman/listinfo/users -- Matt Thompson “The fact is, this is about us identifying what we do best and finding more ways of doing less of it better” -- Director of Better Anna Rampton
_______________________________________________ users mailing list users@lists.open-mpi.org https://lists.open-mpi.org/mailman/listinfo/users