Skip to content

MPI_Win_create() fails #8086

Closed
Closed
@nathanweeks

Description

@nathanweeks

Background information

Using the test.c from #6201 (comment), MPI_Win_create() fails using an Open MPI build from the master branch, but succeeds when using a build from tag v4.1.0rc2.

What version of Open MPI are you using?

master, 0bcef04

Describe how Open MPI was installed

The following Dockerfile:

FROM ubuntu:20.04

RUN apt update && apt install -y --no-install-recommends \
  autoconf \
  automake \
  ca-certificates \
  flex \
  g++-10 \
  gcc-10 \ 
  git \
  libtool \
  make \
  openssh-client

WORKDIR /src

ARG COMMIT

RUN git init \
  && git remote add origin https://github.com/open-mpi/ompi.git \
  && git fetch --depth=1 origin ${COMMIT}  \
  && git checkout ${COMMIT} \
  && git submodule update --init --recursive --depth=1 \
  && ./autogen.pl

RUN sh ./configure --disable-io-romio --disable-man-pages CC=gcc-10 CXX=g++-10 \
  && make -j \
  && make install \
  && ldconfig

ENV OMPI_ALLOW_RUN_AS_ROOT=1 \
    OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1

Build thus:

docker build --build-arg COMMIT=0bcef049c9f28564303ab60b26feae24eb7eec04 -t open-mpi:v5.0.0-0bcef04 .

Please describe the system on which you are running

single host, Docker Engine Version 19.03.13, linux/amd64


Details of the problem

When the above Dockerfile is used to build v4.1.0rc2, an executable compiled from the aforementioned test.c exits with status 0:

docker build --build-arg COMMIT=31496e28e6276a1863306ea4046258fe163ac9b8 -t open-mpi:v4.1.0rc2 .
...
$ docker run -it --rm --entrypoint=/bin/bash open-mpi:v4.1.0rc2
root@39e756f57775:/src# cat > test.c
...
root@39e756f57775:/src# mpicc test.c
root@39e756f57775:/src# mpiexec -n 2 ./a.out
root@39e756f57775:/src# echo $?
0

However, for the latest commit from the master branch (pre-v5.0), an error occurs during MPI_Win_create():

$ docker build --build-arg COMMIT=0bcef049c9f28564303ab60b26feae24eb7eec04 -t open-mpi:v5.0.0-0bcef04 .
...
$ docker run -it --rm --entrypoint=/bin/bash open-mpi:v5.0.0-0bcef04
root@e6c749b26c3f:/src# cat > test.c
...
root@e6c749b26c3f:/src# mpicc test.c
root@e6c749b26c3f:/src# mpiexec -n 2 ./a.out
[e6c749b26c3f:00000] *** An error occurred in MPI_Win_create
[e6c749b26c3f:00000] *** reported by process [231931905,1]
[e6c749b26c3f:00000] *** on communicator MPI_COMM_WORLD
[e6c749b26c3f:00000] *** MPI_ERR_WIN: invalid window
[e6c749b26c3f:00000] *** MPI_ERRORS_ARE_FATAL (processes in this communicator will now abort,
[e6c749b26c3f:00000] ***    and MPI will try to terminate your MPI job as well)
[e6c749b26c3f:00000] *** An error occurred in MPI_Win_create
[e6c749b26c3f:00000] *** reported by process [231931905,0]
[e6c749b26c3f:00000] *** on communicator MPI_COMM_WORLD
[e6c749b26c3f:00000] *** MPI_ERR_WIN: invalid window
[e6c749b26c3f:00000] *** MPI_ERRORS_ARE_FATAL (processes in this communicator will now abort,
[e6c749b26c3f:00000] ***    and MPI will try to terminate your MPI job as well)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions