Conversation
|
Does it really have no dependencies? |
|
Looking at |
|
Ssh, you'll spoil it. Technically it depends on pbs, hwloc, blcr, and ftb? But so do mpich and mvapich2... We should probably at least be consistent here. Meaning remove hwloc as a dependency of openmpi, or add hwloc as a dependency of mpich, mvapich2, and hydra. |
|
Looks like it has embedded hwloc. Looks like the others are too, but they might be just wrapper bits. |
|
Maybe I'll remove hwloc as a dependency of OpenMPI someday. It would solve a problem I was having since PGI cannot compile libpciaccess. I don't think Hydra depends on MPI? It's just used to control MPI processes. The only reason we need an explicit Hydra package is because we need some of the functionality of [email protected] and MVAPICH2 is a little behind MPICH in its Hydra version. |
|
Hmm, yeah, it seems to just have some |
|
Hydra is mpiexec and mpirun. MPICH and MVAPICH2 build Hydra (mpiexec). |
|
I removed OpenMPI's dependency on hwloc. OpenMPI, MPICH, MVAPICH2, and Hydra all come with their own version of hwloc, so there is no need to build it externally. Furthermore, hwloc's dependency on libpciaccess cannot be built with PGI (#481). If you would rather use an externally built hwloc, we should add hwloc as a dependency for OpenMPI, MPICH, MVAPICH2, and Hydra. If anyone knows how to build MVAPICH2 with an external Hydra, let me know. Otherwise, I'll just have to make sure our users load Hydra and MVAPICH2 in the right order. |
6dee01f to
c110865
Compare
|
ping @tgamblin |
|
@adamjstewart The hwloc built into OpenMPI is a few versions older than the stand-alone hwloc distribution. I'd like to keep building with an external hwloc, using that newer version. Can you add it back in? You can make it a variant so that you can disable it. You could instead also make libpciaccess a variant of hwloc, allowing you to disable this instead if that's where you're having problems with the PGI compiler. |
|
Haha, I know your pain. The reason I needed a Hydra package is because the one that comes with MVAPICH2 is slightly behind and doesn't contain some of the options we need. Unfortunately for me, I don't think there is an option to build with external Hydra. I'll add the hwloc dependency back in and probably make libpciaccess a variant of hwloc as you suggested. Do you have any opinions on whether or not to add hwloc as a dependency of MPICH, MVAPICH2, and Hydra? It would be nice for all of them to use the exact same hwloc installation. |
|
It would make sense, but I haven't build mpich or mvapich recently, and I don't know how easy it is to configure them this way. (Thus I also don't know how to make mvapich digest an external hydra.) |
|
I believe it's done the same way it is for OpenMPI. I'll make the change and let people comment on the actual PR. |
|
Huh, I'm not sure why I thought you could build MPICH and MVAPICH2 with an external hwloc, but it turns out you can't. You can for Hydra and OpenMPI though. |
- Avoid bug when compiling with intel (catchorg/Catch2#1748) Co-authored-by: Blanco Alonso Jorge <[email protected]>
No description provided.