Comunicación Mpi

Páginas: 7 (1551 palabras) Publicado: 10 de diciembre de 2012
E SCUELA S UPERIOR DE I NFORMÁTICA
U NIVERSIDAD DE C ASTILLA – L A M ANCHA

Práctica 1

Ejercicio 1

Autores Rubén Pérez Pascual

Asignatura: Redes de Altas Prestaciones Titulación: Ingeniería Informática Fecha: 26 de octubre de 2012

Índice
1. Enunciado del problema. 2. Planteamiento de la solución. 3. Diseño del programa. 4. Explicación del flujo de datos en la red para cada comandoMPI usado. 5. Fuentes del programa. 5.1. Read_file.c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2. Read_file.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3. Primera.c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6. Compilación y ejecución. 7. Conclusiones. 1 1 1 2 2 2 3 3 6 7

I

1.

Enunciado del problema.

Dado un archivo con nombredatos.dat, cuyo contenido es una lista de valores separados por comas, nuestro programa realizará lo siguiente: El proceso de rank 0 destribuirá a cada uno de los nodos de un toroide de lado L,los L x L numeros reales que estarán contenidos en el archivo datos.dat. En caso de que no se hayan lanzado suficientes elementos de proceso para los datos del programa, éste emitirá un error y todos los procesosfinalizarán. En caso de que todos los procesos han recibido su correspondiente elemento,comenzará el proceso normal del programa. Se pide calcular el elemento menor de toda la red, el elemento de proceso con rank 0 mostrará en su salida estándar el valor obtenido. La complejidad del algoritmo no superará O(raiz_cuadrada(n)). Se pide enunciado del problema, documentación e implementación en formatoelectrónico.

2.

Planteamiento de la solución.

La solución planteada se basa en realizar un algorítmo bastante simple pero eficiente. Cada nodo está conectado a cuatro de estos, con lo cual se puede suponer que tiene uno al norte, al sur , al este y oeste respectivamente. Por lo tanto por cada nodo tendremos cuatro conexiones. Nuestro algoritmo se basa en que cada nodo reciba de su nodo nortey envíe a su nodo sur, y repita este proceso un número l que vendrá dado por la raíz cuadrada de todos los nodos existentes. Realizando este algoritmo anteriormente descrito, ya podemos solucionar nuestro problema. Implementamos el algoritmo, dando un número del fichero de datos a cada nodo de la red. Tras esto cada nodo envía su número al nodo sur, recibe el número del nodo norte, y este último locompara con el que este nodo ya poseía quedandose con el más pequeño. Tras todas las pasadas del algoritmo en todos los nodos obtenemos el número más pequeño, y lo mostramos en el nodo creador, es decir en el proceso cuyo identificador es 0.

3.

Diseño del programa.

El programa se conformará por varios ficheros. Uno contendrá la función de lectura del fichero de datos. Otro contendrá elalgoritmo a ejecutar en cada nodo de la red para obtener nuestra solución. La función lectura está diseñada para leer, en principio, 100 números de punto flotante. Una posible mejora de este programa sería la realización de la lectura del fichero dinámica pero por causas de tiempo no se ha podido realizar. La función principal, contiene el algoritmo a ejecutar en cada nodo distribuido y constaprincipalmente de dos secciones distinguidas en la que se realizan una serie de comprobaciones:

1

Zona de comprobación: En esta zona se comprueba que el número de elementos de proceso lanzados no es el equivocado y que el número de datos del fichero no es mayor. Si es mayor el número de datos en el fichero, se elige un valor adecuado de elementos, que serán los máximos posibles a coger. Si es inferiorel programa nos dirá cuantos números deberan ser introducidos como mínimo. Si los elementos de proceso no son suficientes para realizar el algoritmo, el programa acabará y nos dirá que necesita más elementos de proceso. Si son demasiados elementos de proceso, no es problema ya que descartamos los sobrantes. Zona de envío: En esta zona el proceso lanzador se comunica con todos los procesos...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Protocolo de comunicación MPI
  • Comunicacion MPI
  • Manual mpi
  • Mpio De Puebla
  • Mpios Chiaàs
  • Vision mpi
  • red mpi
  • ECONOMIA MPIO TIBASOSA

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS