Finaliza la comunicación paralela entre los procesos. Tras esto no se pueden enviar mensajes entre ellos.sin esta instrucción al inicio.
#include "mpi.h" int MPI_Finalize()
#include <mpi.h> void Finalize()
Corta la comunicación entre los procesos y elimina los tipos de datos creados para ello.
Se debería elegir un único proceso para que continúe la ejecución del programa. MPI no asegura lo que hacen las hebras tras el MPI_Finalize con lo que lo más seguro es encerrar el resto del código tras la ejecución con una condición que asegure que solo un proceso lo ejecute.
Es altamente recomendable proteger la zona de código que sigue al MPI_Finalize. Una forma puede ser como sigue.
int main(int argc, char* argv[]){ /* Declaracion de variables */ MPI_Init(&argc, &argv); /* Reparto de contenido */ /* Bucle principal del programa */ MPI_Finalize(); if(/*es proceso elegido*/){ //Codigo que ejecuta el proceso elegido unicamente } }
MPI_SUCCESS | No ha habido error, la función MPI se ha realizado satisfactoriamente. Este deberí ser siempre el valor devuelto. |
MPI_ERR_OTHER | Ha ocurrido algún tipo de error, se deberá consultar MPI_Error_string con el código devuelto. |