Recientemente instalé OpenMPI en mi computadora y cuando intento ejecutar un programa simple de Hello World, sale con el siguiente error:
------------------------------------------------------- Primary job terminated normally, but 1 process returned a non-zero exit code.. Per user-direction, the job has been aborted. -------------------------------------------------------Este es el código fuente del programa:
#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; }Así compilo el programa:
mpicc -o hello hello.cy lo ejecuto con
mpirun -np 2 hello No arroja errores en la compilación, y si ejecuto ./hello , funciona bien.
Disculpe mi inglés, cualquier corrección será bienvenida.
tienes que ./ el nombre del ejecutable prueba esto, mpirun -np 2 ./hello
Tratar:
mpirun -x LD_PRELOAD=libmpi.so -np 2 helloSi funciona, probablemente tenga un problema con su instalación de OpenMPI. Una solución sencilla sería definir un alias. Si usa bash, agregue ~/.bashrc :
alias mpirun='mpirun -x LD_PRELOAD=libmpi.so'