[mpich-discuss] Issue with MPICH + mpi4py on Ubuntu 24.04
Jørgen Dokken
dokken at simula.no
Mon Sep 16 02:06:15 CDT 2024
When trying to install MPICH from the apt repository on Ubuntu 24.04 and
then installing mpi4py with pip, I get a non-functional installation of
mpi4py. It does not happen if I use openmpi, or downgrade to Ubuntu 22.04.
It has been tested with the same MPICH on other systems (See:
https://urldefense.us/v3/__https://github.com/mpi4py/mpi4py/issues/547__;!!G_uCfscf7eWS!cPoueuWR7fxw1e0Sea_FpPwE69LSB-4AL5z_w7BTkhgE477ScU4TJA4tOTBUI_OpT980NxbAga-iHw$ ) for where it has been tested,
leading one to believe that something is wrong with the ubuntu build.
Minimal reproducible dockerfile:
```
FROM ubuntu:24.04
ARG MPI="mpich"
ENV OPENBLAS_NUM_THREADS=1 \
OPENBLAS_VERBOSE=0
ENV DEB_PYTHON_INSTALL_LAYOUT=deb_system
ENV DEBIAN_FRONTEND=noninteractive
WORKDIR /tmp
RUN apt-get -qq update && \
apt-get -yq upgrade && \
apt-get -y install \
lib${MPI}-dev \
python3-dev \
python3-pip \
python3-setuptools \
python3-venv && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
ENV VIRTUAL_ENV=/test-env
ENV PATH=/${VIRTUAL_ENV}/bin:$PATH
RUN python3 -m venv ${VIRTUAL_ENV}
# Install Python packages (via pip)
RUN python3 -m pip install --no-cache-dir mpi4py -v
ENV OMPI_ALLOW_RUN_AS_ROOT=1 \
OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1
CMD ["mpiexec", "-v", "--np", "2", "python3", "-c", "from mpi4py
import MPI; print(f'{MPI.COMM_WORLD.rank}/{MPI.COMM_WORLD.size}')"]
```
with the output
```
host: 6a2e05040a65
[mpiexec at 6a2e05040a65] Timeout set to -1 (-1 means infinite)
==================================================================================================
mpiexec options:
----------------
Base path: /usr/bin/
Launcher: (null)
Debug level: 1
Enable X: -1
Global environment:
-------------------
PATH=//test-env/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HOSTNAME=6a2e05040a65
TERM=xterm
OPENBLAS_NUM_THREADS=1
OPENBLAS_VERBOSE=0
DEB_PYTHON_INSTALL_LAYOUT=deb_system
DEBIAN_FRONTEND=noninteractive
VIRTUAL_ENV=/test-env
OMPI_ALLOW_RUN_AS_ROOT=1
OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1
HOME=/root
Hydra internal environment:
---------------------------
GFORTRAN_UNBUFFERED_PRECONNECTED=y
Proxy information:
*********************
[1] proxy: 6a2e05040a65 (1 cores)
Exec list: python3 (2 processes);
==================================================================================================
Proxy launch args: /usr/bin/hydra_pmi_proxy --control-port
6a2e05040a65:36819 --debug --rmk user --launcher ssh --demux poll
--pgid 0 --retries 10 --usize -2 --pmi-port 0 --gpus-per-proc -2
--gpu-subdevs-per-proc -2 --proxy-id
Arguments being passed to proxy 0:
--version 4.2.0 --iface-ip-env-name MPIR_CVAR_CH3_INTERFACE_HOSTNAME
--hostname 6a2e05040a65 --global-core-map 0,1,1 --pmi-id-map 0,0
--global-process-count 2 --auto-cleanup 1 --pmi-kvsname
kvs_1_0_1589598326_6a2e05040a65 --pmi-process-mapping (vector,(0,1,2))
--global-inherited-env 11
'PATH=//test-env/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
'HOSTNAME=6a2e05040a65' 'TERM=xterm' 'OPENBLAS_NUM_THREADS=1'
'OPENBLAS_VERBOSE=0' 'DEB_PYTHON_INSTALL_LAYOUT=deb_system'
'DEBIAN_FRONTEND=noninteractive' 'VIRTUAL_ENV=/test-env'
'OMPI_ALLOW_RUN_AS_ROOT=1' 'OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1'
'HOME=/root' --global-user-env 0 --global-system-env 1
'GFORTRAN_UNBUFFERED_PRECONNECTED=y' --proxy-core-count 1 --exec
--exec-appnum 0 --exec-proc-count 2 --exec-local-env 0 --exec-wdir
/tmp --exec-args 3 python3 -c from mpi4py import MPI;
print(f'{MPI.COMM_WORLD.rank}/{MPI.COMM_WORLD.size}');
[mpiexec at 6a2e05040a65] Launch arguments: /usr/bin/hydra_pmi_proxy
--control-port 6a2e05040a65:36819 --debug --rmk user --launcher ssh
--demux poll --pgid 0 --retries 10 --usize -2 --pmi-port 0
--gpus-per-proc -2 --gpu-subdevs-per-proc -2 --proxy-id 0
[proxy:0 at 6a2e05040a65] Sending upstream hdr.cmd = CMD_PID_LIST
[proxy:0 at 6a2e05040a65] Sending upstream hdr.cmd = CMD_STDOUT
[proxy:0 at 6a2e05040a65] Sending upstream hdr.cmd = CMD_STDOUT
0/1
0/1
[proxy:0 at 6a2e05040a65] Sending upstream hdr.cmd = CMD_EXIT_STATUS
```
Best,
Jørgen
--
*Jørgen S. Dokken, *PhD
Senior Research Engineer
Simula Research Laboratory
+47 45286467
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mpich.org/pipermail/discuss/attachments/20240916/73eb17be/attachment.html>
More information about the discuss
mailing list