Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] use external libpmix #188

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from
Draft

Conversation

minrk
Copy link
Member

@minrk minrk commented Nov 18, 2024

This unbundles libfabric (ready) and libpmix, prrte (waiting on conda-forge/staged-recipes#28225).

I've run this build locally on osx-arm64 and everything works. Draft because pmix/prrte are not published yet.

closes #178

@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.

@minrk
Copy link
Member Author

minrk commented Nov 18, 2024

#187 unbundles libfabric, I'll update this to be just prrte, pmix

@minrk minrk changed the title [WIP] use external libfabric, libpmix, prrte [WIP] use external libpmix, prrte Nov 19, 2024
@dalcinl
Copy link
Contributor

dalcinl commented Nov 27, 2024

@minrk I would ask for advise upstream to the Open MPI team about the feasibility of this PR. Currently, the main branch of the open-mpi/ompi is using a custom fork of prrte. Moreover, this fork has diverged to the point where things are hard to patch open-mpi/ompi#12929 (comment). The open-mpi/[email protected] branch is fine, they are using upstream PMIx/PRRTE repos, but I do not really know what are the version pinning rules. I'm a little worried that once you merge this PR, things may eventually break in upcoming releases.

@hppritcha Could you please drop us a comment about how should we handle external PMIx/PRRTE packages with respect to our Open MPI builds? Is there any official place stating the exact versions or PMIx/PRRTE that Open MPI requires?

@minrk
Copy link
Member Author

minrk commented Nov 27, 2024

Yeah, I figured it would be synced to an upstream release by the time openmpi is ready for its own release, but if that's not the case and openmpi expects to carry its own unreleased forks, then we probably shouldn't do this. It would be good to have confirmation of how openmpi and prrte releases relate.

Judging by the PR that introduced the fork it looks like the plan going forward is to keep the fork divergent and not maintain compatibility with actual PRRTE.

FWIW, openpmix itself is still tracking upstream, not a fork. So it appears to be only PRRTE that's affected. In which case, we can still do this for pmix, but keep the PRRTE bundled. Or pull PRRTE out for openmpi 5 and switch back to bundled PRRTE for openmpi 6. Or just not do this altogether, which is honestly okay with me, too.

@hppritcha
Copy link

For Open MPI 5.0.x releases, we support use of an external PRRte against which Open MPI 5.0.x releases can be built.

The minimum version of PMIx we support for Open MPI 5.0.x is 4.2.0.
The minimum version of PRRTe we support for Open MPI 5.0.x is 3.0.0.

See https://docs.open-mpi.org/en/v5.0.x/installing-open-mpi/required-support-libraries.html for more details about PMIx/PRRTe dependency info.

Note that PRRTe has its own dependencies on PMIx versions that need to be kept in mind - https://docs.prrte.org/en/latest/install.html

@minrk
Copy link
Member Author

minrk commented Nov 27, 2024

Thanks! Is it right that starting with openmpi 6, it is not planned to work with public prrte releases anymore? Is the same true for pmix?

openmpi 6 forks prrte, so no point unbundling it now
@minrk minrk changed the title [WIP] use external libpmix, prrte [WIP] use external libpmix Dec 16, 2024
@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found some lint.

Here's what I've got...

For recipe/meta.yaml:

  • ❌ The recipe is not parsable by any of the known recipe parsers (['conda-forge-tick (the bot)', 'conda-recipe-manager', 'conda-souschef (grayskull)']). Please check the logs for more information and ensure your recipe can be parsed.

For recipe/meta.yaml:

  • ℹ️ The recipe is not parsable by parser conda-forge-tick (the bot). Your recipe may not receive automatic updates and/or may not be compatible with conda-forge's infrastructure. Please check the logs for more information and ensure your recipe can be parsed.
  • ℹ️ The recipe is not parsable by parser conda-souschef (grayskull). Your recipe may not receive automatic updates and/or may not be compatible with conda-forge's infrastructure. Please check the logs for more information and ensure your recipe can be parsed.
  • ℹ️ The recipe is not parsable by parser conda-recipe-manager. Your recipe may not receive automatic updates and/or may not be compatible with conda-forge's infrastructure. Please check the logs for more information and ensure your recipe can be parsed.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/12359096580. Examine the logs at this URL for more detail.

@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipe/meta.yaml:

  • ℹ️ The recipe is not parsable by parser conda-recipe-manager. Your recipe may not receive automatic updates and/or may not be compatible with conda-forge's infrastructure. Please check the logs for more information and ensure your recipe can be parsed.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/12371927813. Examine the logs at this URL for more detail.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support pmix from conda-forge?
4 participants