Unable to run MPI within Openshell
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 52/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- Active
- Domaine
- hpc, infrastructure
Piste de recherche
Commencez avec le Containerfile fourni et reproduisez l’échec avec openshell sandbox create --from localhost/test, puis exécutez la commande mpirun dans la sandbox et comparez-la au cas fonctionnel podman run. Suivez l’initialisation de MPI propre à la sandbox et le comportement de la mémoire partagée ; le travail est terminé lorsque le reproducer s’exécute avec succès dans une sandbox OpenShell sans erreurs.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
User Story
As a computational physicist, I want the agent to be able to run MPI-enabled applications within the Openshell sandbox, so that the agent can help me test/develop/debug MPI-enabled scientific software for High-Performance Computing (HPC).
Problem Statement
When running an MPI-enabled application within the sandbox, the application fails at initialization (MPI_Init) with the following message:
Abort(404899215): Fatal error in internal_Init_thread: Other MPI error, error stack:
internal_Init_thread(71).: MPI_Init_thread(argc=(nil), argv=(nil), required=3, provided=0x7ffda19f22f8) failed
MPII_Init_thread(261)....:
MPID_Init(549)...........:
MPIDI_UCX_init_local(234):
MPIDI_UCX_init_worker(86): ucx function returned with failed status(ucx_init.c 86 MPIDI_UCX_init_worker Shared memory error)
Abort(539116943): Fatal error in internal_Init_thread: Other MPI error, error stack:
internal_Init_thread(71).: MPI_Init_thread(argc=(nil), argv=(nil), required=3, provided=0x7ffc5cc9ebc8) failed
MPII_Init_thread(261)....:
MPID_Init(549)...........:
MPIDI_UCX_init_local(234):
MPIDI_UCX_init_worker(86): ucx function returned with failed status(ucx_init.c 86 MPIDI_UCX_init_worker Shared memory error)
Impact / Why This Matters
Having the ability for the agent to run MPI-enabled application is essential for it to help with software development for HPC. Without it, the agent can modify the code to implement new features, but is then unable to test the changes properly.
The current work-around is to do agent-assisted software development outside of openshell, i.e. without the safety guardrails that Openshell offers.
Acceptance Criteria
The bug would be considered fixed if I can run an MPI-enabled application to completion (without errors) from within an openshell sandbox (see reproducer below).
Reproduction Steps
This shows the error with a minimal MPI application: in this case a Python script using mpi4py (but the bug is not specific to Python or mpi4py, and I also observed it in C++ applications using MPI)
- Create a file
Containerfilewith the following content, so that mpi4py is available in the image (installed viaconda):
FROM ghcr.io/nvidia/openshell-community/sandboxes/base:latest
RUN curl -L -O https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh \
&& bash Miniforge3-Linux-x86_64.sh -b -u -p /sandbox/conda \
&& rm Miniforge3-Linux-x86_64.sh \
&& /sandbox/conda/bin/conda clean --all -y \
&& /sandbox/conda/bin/conda init bash
ENV PATH=/sandbox/conda/bin:$PATH
RUN conda install -y -c conda-forge mpi4py \
&& conda clean --all -y
-
Build the image locally:
podman build -t localhost/test:latest . -
Create a sandbox using this image:
openshell sandbox create --from localhost/test -
From inside the sandbox, run
mpirun -np 2 python -c "from mpi4py.MPI import COMM_WORLD"
Note that the same error does not occur when running this simply through podman instead of Openshell. More specifically:
podman run -it localhost/test:latest
and then from within the image:
mpirun -np 2 python -c "from mpi4py.MPI import COMM_WORLD"
works as intended, showing that the issue is specific to Openshell, not to the podman image.
Environment
openshell 0.0.80- Ubuntu 26.04
- Runtime:
podman version 5.7.0
- Langage dominant
- Rust
- Étoiles
- 15.4k
- Forks
- 1.7k
- Merge moyen
- 1 j 21 h
- PR mergées (30 j)
- 358
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de NVIDIA/OpenShell
-
state:triage-needed
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
Les mainteneurs répondent en général sous 1 jour
-
state:triage-needed
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
Les mainteneurs répondent en général sous 1 jour
-
docs: document workspace and provider label capabilitiesPeut-être pris @johntmyers l’a pris il y a 4 jours. Ouvertearea:docs
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
NVIDIA/OpenShell#4250 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
bug(driver-mxc): test helper fails to compile after gateway-name argumentPeut-être pris @feloy l’a pris il y a 5 jours. Ouvertestate:triage-needed
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 1 jour
-
bug: install.sh ignores XDG_CONFIG_HOME for the local gateway configPeut-être pris @fede-kamel l’a pris il y a 9 jours. Ouvertearea:cli os:linux os:macos state:validated
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
NVIDIA/OpenShell#4042 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de NVIDIA/OpenShell
Issues similaires
-
good first issue help wanted
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
-
documentation
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
NuSkooler/enigma-bbs#907 ·
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
Les mainteneurs répondent en général sous 1 jour
-
bug pixi-build-r
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
prefix-dev/pixi#7229 ·
Les mainteneurs répondent en général sous 1 jour