ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

MPI: MESSAGE PASSING INTERFACE


Enviado por   •  7 de Diciembre de 2018  •  Trabajos  •  758 Palabras (4 Páginas)  •  68 Visitas

Página 1 de 4

MPI: MESSAGE PASSING INTERFACE

¿QUE ES MPI?

MPI (Message Passing Interface) es una librería de paso de mensajes. Se puede utilizar en programas C o Fortran, desde los que se hace llamadas a funciones de MPI para gestión de procesos y para comunicar los procesos entre sí. (Mpi, 2012)

Historia

• Estandarizar MPI involucró a cerca de 60 personas de 40 organizaciones diferentes principalmente de U.S.A. y Europa.(Wikipedia, 2013)

• La mayoría de los vendedores de computadoras concurrentes estaban involucrados con MPI, así como con investigadores de diferentes universidades, laboratorios del gobierno e industrias.

El primer estándar MPI 1.0 fue acabado y publicado en mayo 1994. El estándar ha sido actualizado desde entonces, estando actualmente en desarrollo el MPI 2.

Características de MPI:

Así, con MPI se ha conseguido:

  • Estandarización, a muchos niveles, reemplazando virtualmente a todas las implementaciones de paso de mensajes utilizadas para producción
  • Portabilidad, pues los programas en MPI funcionan sobre multiprocesadores de memoria compartida, multicomputadores de memoria distribuida, clúster de ordenadores, sistemas heterogéneos.
  • Rendimiento, comparable a las librerías propietarias de los vendedores. Para arquitecturas de memoria compartida, las implementaciones de MPI podrían no hacer uso de la red para comunicación, sino de la memoria compartida.
  • Riqueza, posee una extensa funcionalidad y muchas implementaciones de calidad.

 Características básicas de la programación con MPI

El usuario escribirá su aplicación como un proceso secuencial del que se lanzarán varias instancias que cooperan entre sí.

Los procesos invocan diferentes funciones MPI que permiten

  • iniciar, gestionar y finalizar procesos MPI
  • comunicar datos entre dos procesos
  • realizar operaciones de comunicación entre grupos de procesos
  • crear tipos arbitrarios de datos

Funciones básicas de MPI

Cualquier programa paralelo con MPI puede implementarse con tan sólo 6 funciones, aunque hay muchas más funciones para aspectos avanzados. Todas ellas empiezan por MPI_ y obligan a que los programas MPI tengan #include "mpi.h"

MPI_Init

Inicializa el entorno MPI

MPI_Comm_size

Devuelve el número de procesos

MPI_Comm_Rank

Devuelve el numero identificador del proceso que lo llama

MPI_Finalize

Sale de una forma limpia del entorno MPI

MPI_Send

Envía un mensaje

MPI_Recv

Recibe un mensaje

Mensajes:

Un mensaje estará formado por un cierto número de elementos de un mismo tipo MPI.

Ejemplo 1: hola.c (guardar con el botón derecho)

#include

int main(int argc, char *argv[])

{

Int rank, size;

MPI_Init(&argc, &argv);                                   //inicializa el entorno MPI

...

Descargar como (para miembros actualizados)  txt (5.2 Kb)   pdf (190.6 Kb)   docx (73.5 Kb)  
Leer 3 páginas más »
Disponible sólo en Clubensayos.com