Open MPI - mpirun exits with error on simple program
Asked Answered
W

2

13

I have recently installed OpenMPI on my computer and when I try to run a simple Hello World program, it exits with the next error:

-------------------------------------------------------
Primary job  terminated normally, but 1 process returned
a non-zero exit code.. Per user-direction, the job has been aborted.
-------------------------------------------------------

This is the program's source code:

#include <mpi.h>
#include <stdio.h>

int main(int argc, char *argv[])
{
    int size, rank;

    MPI_Init(&argc, &argv);
    MPI_Comm_size(MPI_COMM_WORLD, &size);
    MPI_Comm_rank(MPI_COMM_WORLD, &rank);

    printf("Hello\n");

    MPI_Finalize();

    return 0;
}

This is how I compile the program:

mpicc -o hello hello.c

and I execute it with

mpirun -np 2 hello

It throws no errors on compilation, and if I run ./hello, it runs ok.

Excuse my english, any correction will be welcome.

Wellmeaning answered 10/7, 2015 at 0:22 Comment(5)
Make sure you are using the same MPI distribution (OpenMPI, MPICH, MVAPICH) and version for compiling with mpicc and running the program mpirun. Your error could very well be caused my a mismatch in version and or distribution.Informed
I've downloaded and installed the last stable version of OpenMPI. Before the install, I had no version of MPI installedWellmeaning
check the return values.Polyp
You mention that you used the last stable version but which version is that?Prokopyevsk
This seems to be the same error. The answer below with ./ should work.Avina
C
4

you have to ./ the executable name try this, mpirun -np 2 ./hello

Cullen answered 23/3, 2020 at 13:27 Comment(0)
P
1

Try:

mpirun -x LD_PRELOAD=libmpi.so -np 2 hello

If it works, you probably have an issue with your OpenMPI installation. A simple workaround would be to define an alias. If ou use bash, add in ~/.bashrc:

alias mpirun='mpirun -x LD_PRELOAD=libmpi.so' 
Punctilious answered 20/1, 2016 at 22:54 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.