Descargar

Introducción a MPI

Enviado por Pablo Turmero


Partes: 1, 2

    edu.red

    Objetivo:

    Nociones basicas de MPI Datos Mensajes Comunicadores

    Comprender un programa simple

    edu.red

    Paradigma de Transferencia de Mensajes Cada procesador corre un programa Todas las variables son privadas La comunicación se realiza a través de subrutinas especiales

    edu.red

    Idea SPMD: Single Program/Multiple Data Todos los procesadores trabajan con el mismo programa, pero los datos pueden ser diferentes. Como asignar tareas diversas con datos diversos? MAIN IF (el proceso sera el controlador) THEN CALL CONTROLADOR ( /* Argumentos /* ) ELSE CALL WORKER ( /* Argumentos /* ) ENDIF END

    edu.red

    Idea SPMD: Single Program/Multiple Data Todos los procesadores trabajan con el mismo programa, pero los datos pueden ser diferentes. Como asignar tareas diversas con datos diversos? MAIN IF (el proceso sera el controlador) THEN CALL MASTER ( /* Argumentos /* ) ELSE CALL SLAVE ( /* Argumentos /* ) ENDIF END

    edu.red

    Nota:

    procesos vs. procesadores

    edu.red

    Conceptos basicos Mensajes Acceso Direcciones Comunicaciones punto a punto Comunicaciones colectivas

    edu.red

    Conceptos basicos Acceso Definicion de maquinas que participan en el calculo (ej: de los 40 nodos, cuales uso) Defino procesos Varios procesos pueden correr en la misma maquina

    edu.red

    Conceptos basicos Mensajes Quien lo manda Donde esta el dato Que tipo de dato es Cuantos son Quien lo recive Donde debe quedar en el receptor Cuantos datos el receptor esta preparado para recibir (tamaño del buffer)

    edu.red

    Conceptos basicos Direcciones – Los mensajes necesitan una direccion, asignar a cada maquina (proceso) una direccion (numero)

    edu.red

    Conceptos basicos Comunicaciones punto a punto Asincronica (carta) se cuando sale, ignoro cuando llega Sincronica (fax) se cuando sale, se cuando llega Bloqueante (fax comun) No bloqueante (fax con memoria)

    edu.red

    Conceptos basicos Comunicaciones colectivas Barreras Los procesos llegan a un punto y paran, esperando hasta la llegada de todos. Luego continuan. Broadcast (emision de radio) Una maquina le pasa un dato a todas las otras Reduccion Como en una votacion, todas las maquina le aportan un dato a una dada y esta reduce todos los datos a uno solo

    edu.red

    MPI (Message Passing Interface) ? Una colección de rutinas adecuadas para facilitar la comunicación (intercambio de datos y sincronización de tareas) entre distintos procesadores. MPI : 1994 / MPI 2 : 1997 Existen bibliotecas para C y Fortran (C++ y F90). Características: Es estándar (por consenso, no por normativa) Portable Flexible (~ 125 rutinas) y expandible Simple (con las 6 rutinas básicas se puede hacer mucho!)

    Partes: 1, 2
    Página siguiente