conda-forge / msmpi-feedstock

A conda-smithy repository for msmpi.
BSD 3-Clause "New" or "Revised" License
1 stars 7 forks source link

Use the MS-MPI binary installer in the recipe? #4

Closed leofang closed 3 years ago

leofang commented 3 years ago

I am raising this as an alternative possibility for discussion. This may not be a big deal since apparently MS-MPI is no longer under active development, but it's still worth keeping track of.

Currently we build MS-MPI from source (it seems to be open-sourced on GitHub since v10.0): https://github.com/conda-forge/msmpi-feedstock/blob/6bc93a33ceef2532fea5293534c613818fb36655/recipe/meta.yaml#L9 But, while we currently build v10.1.1 according to the official release v10.1.2 is already out, and yet it's not tagged on GitHub.

If we want to switch to use MS-MPI's binary distributions, mpi4py has a long history of testing all freely available MPI implementations to get a great coverage thanks to its author @dalcinl's persistence and hard work. In particular, all current and past MS-MPI versions are tested, see mpi4py's Windows CI script here. So if deemed necessary I'd say it's the easiest to start with borrowing code from mpi4py for the recipe.

leofang commented 3 years ago

Work ongoing in #6. Note that the change of the build method is necessary because

  1. The Fortran support is incorrect (we don't need mpifort.lib)
  2. We need to use the official installer anyway to overwrite the existing MPI so that tests can run
  3. It allows us to support 10.1.2 (#8)

In any case, I found MSMPI_VER needs to be patched (mpi4py/mpi4py#19).

leofang commented 3 years ago

Closed by #6.

isuruf commented 3 years ago

By switching to the binary installer, you'll be stuck with whatever gfortran version that the binary installer was compiled with and be incompatible with the rest of conda-forge.

dalcinl commented 3 years ago

@isuruf @leofang I believe Fortran support can be fixed by recompiling include/mpi.f90 to generate a new .mod file.