SlideShare una empresa de Scribd logo
GRID Computing CARTIF 06 Junio 2007, Valladolid Introducción a MPI David Rodríguez González Consejo Superior de Investigaciones Científicas Instituto de Física de Cantabria, IFCA  (Centro Mixto CSIC-Universidad de Cantabria) Santander  ESPAÑA
Contenido ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
INTRODUCCION
HTC y HPC ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Computación paralela ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
¿Por qué es necesaria la computación paralela? ,[object Object],[object Object],[object Object],[object Object],[object Object]
Speedup ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
EL ESTÁNDAR MPI
Paradigma de paso de mensajes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
MPI (Message Passing Interface) ,[object Object],[object Object],[object Object],[object Object],[object Object]
Implementaciones de MPI ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Uso de MPI ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
PROGRAMACIÓN MPI
MPI tipos de datos ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
MPI Funciones básicas  ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ejemplo Básico: Hola Mundo ,[object Object],[object Object],[object Object]
MPICH ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Escribiendo programas MPI ,[object Object],[object Object],#include &quot;mpi.h&quot;   #include <stdio.h>  int main( int argc, char **argv )  {  MPI_Init( &argc, &argv );   printf( &quot;Hola Mundo&quot; );  MPI_Finalize();  return 0;  }
Programas  MPI (compilación) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],mpicc –o hello hello.c
Ejecución de un programa MPI con MPICH ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],mpirun -np 2 hello
Ejemplo pgfile y machinefile grid079 0 /grid/mpi/marco/Portal/NeuralNetwork/test-nn/ExampleApplication.exe mpi grid079 1 /grid/mpi/marco/Portal/NeuralNetwork/test-nn/ExampleApplication.exe mpi grid006 1 /grid/mpi/marco/Portal/NeuralNetwork/test-nn/ExampleApplication.exe mpi grid007 1 /grid/mpi/marco/Portal/NeuralNetwork/test-nn/ExampleApplication.exe mpi grid008 1 /grid/mpi/marco/Portal/NeuralNetwork/test-nn/ExampleApplication.exe mpi grid073.ifca.unican.es:2 grid074.ifca.unican.es:2 grid075.ifca.unican.es:2 grid076.ifca.unican.es:2 grid077.ifca.unican.es:2 grid078.ifca.unican.es:2
Grupos y Comunicadores ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Delimitación del alcance de la comunicación ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
MPI tipos de comunicación ,[object Object],[object Object],[object Object],[object Object],[object Object]
Obteniendo información de MPI ,[object Object],[object Object],int main( argc, argv )  {  int rank, size;  MPI_Init( &argc, &argv );  MPI_Comm_rank( MPI_COMM_WORLD, &rank );  MPI_Comm_size( MPI_COMM_WORLD, &size );  printf( “Hola Mundo! Soy el proceso %d de %d&quot;, rank, size );  MPI_Finalize();  return 0;  }
Funciones de comunicación MPI ,[object Object],[object Object],[object Object],[object Object],[object Object],Imagen del Tutorial  de Gropp
Sintaxis de MPI_Send y MPI_Recv ,[object Object],[object Object],MPI_Recv(start, count, datatype, source, tag, comm, status) MPI_Send( start, count, datatype, dest, tag, comm ) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ejemplo MPI_Send/MPI_Recv char msg[100]; if(my_rank==0) { sprintf( msg ,&quot; Esto es un mensaje del proceso %d al proceso %d&quot;,source,dest); MPI_Send(msg,100,MPI_CHAR,dest,TAG,MPI_COMM_WORLD); printf(&quot; Mensaje enviado a %d&quot;,dest); } else if(my_rank==1) {  MPI_Recv(msg,100,MPI_CHAR,source,TAG,MPI_COMM_WORLD,&status); printf(&quot; Mensaje recibido en %d&quot;,dest); printf(msg); }
Adquiriendo información sobre un mensaje ,[object Object],[object Object],MPI_Status status;  MPI_Recv( ..., &status ); ... status.MPI_TAG; ... status.MPI_SOURCE; MPI_Get_count( &status, datatype, &count );
Operaciones colectivas ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Operaciones colectivas Imagen del Tutorial  de Gropp
Reduce ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Sintaxis de Broadcast y Reduce ,[object Object],[object Object],MPI_Bcast(start, count, datatype, root, comm)  MPI_Reduce(start, result, count, datatype, operation, root, comm)  ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Reduce ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ejemplo BroadCast Char  msg[100];  if(my_rank==source) { sprintf(msg,&quot; Esto es un mensaje del proceso %d a todos los demás&quot;,sourc e); MPI_Bcast(msg,100,MPI_CHAR,source,MPI_COMM_WORLD); printf(&quot; Mensaje enviado a todos desde %d&quot;,source); } else { MPI_Bcast(msg,100,MPI_CHAR,source,MPI_COMM_WORLD); printf(&quot; Mensaje recibido en %d desde %d&quot;,my_rank,source); printf(msg); }
Ejemplo Reduce int value; int result; value = my_rank; MPI_Reduce(&value,&result,1,MPI_INT,MPI_SUM,source,MPI_COMM_WORLD); if(my_rank==source) { printf(&quot; Resultado de la suma colectiva %d&quot;, result); }
Topologías ,[object Object],[object Object],[object Object],[object Object],[object Object],Imagen del Tutorial  de Gropp
Otras características. Extensiones MPI-2 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
MPICH-G2
MPICH-G2 MPI sobre globus2 ,[object Object],[object Object],[object Object]
Usando MPICH-G2 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
TRABAJOS PARALELOS EN GRID
MPICH-P4 en grid UI RB CE WN WN WN WN WN WN WN
MPICH-G2 en grid UI RB CE WN WN WN WN WN WN WN CE WN WN WN WN WN WN WN CE WN WN WN WN WN WN WN
JDL ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Para MPICH P4 Para MPICH G2
OPEN MPI
Origen ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Objetivos ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Instalación ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Startup ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Requisitos ,[object Object],[object Object],[object Object]
PACX MPI
Introducción ,[object Object],[object Object],[object Object],[object Object],[object Object]
Diseño ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Bibliografía MPI ,[object Object],[object Object],[object Object]
Más sobre MPI ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

Más contenido relacionado

La actualidad más candente

Multiplicacion de matrices: Implementacion en cluster
Multiplicacion de matrices: Implementacion en clusterMultiplicacion de matrices: Implementacion en cluster
Multiplicacion de matrices: Implementacion en cluster
Walter Tejerina
 
Unidad V Python e ingeniería civil en obras civiles PVB
Unidad V Python e ingeniería civil en obras civiles PVBUnidad V Python e ingeniería civil en obras civiles PVB
Unidad V Python e ingeniería civil en obras civiles PVB
SistemadeEstudiosMed
 
Python para ingenieros como alternativa a matlab
Python para ingenieros como alternativa a matlabPython para ingenieros como alternativa a matlab
Python para ingenieros como alternativa a matlab
SistemadeEstudiosMed
 
3
33
Unidad V Tutorial de Python
Unidad V Tutorial de PythonUnidad V Tutorial de Python
Unidad V Tutorial de Python
SistemadeEstudiosMed
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
richard rodrigo mero sarcos
 
Task Parallel Library 2014
Task Parallel Library 2014Task Parallel Library 2014
Task Parallel Library 2014
Lluis Franco
 
Clase1_Python-CTIC
Clase1_Python-CTICClase1_Python-CTIC
Clase1_Python-CTIC
Abraham Zamudio
 
Instalación python
Instalación pythonInstalación python
Instalación python
SistemadeEstudiosMed
 
Programacion orientada a objetos python manuel casado martín - universidad ...
Programacion orientada a objetos python   manuel casado martín - universidad ...Programacion orientada a objetos python   manuel casado martín - universidad ...
Programacion orientada a objetos python manuel casado martín - universidad ...
Wilson Bautista
 
Ingeniería Inversa de Código Fuente
Ingeniería Inversa de Código FuenteIngeniería Inversa de Código Fuente
Ingeniería Inversa de Código Fuente
José Enrique Alvarez Estrada
 
Parallel Python sistemas operativos avanzados
Parallel Python sistemas operativos avanzadosParallel Python sistemas operativos avanzados
Parallel Python sistemas operativos avanzados
Daniel Muccela
 
Manual de python
Manual de pythonManual de python
Manual de python
ULEAM
 
Exposicion de c.
Exposicion de c.Exposicion de c.
Exposicion de c.
yolymorquecho
 
actividad 4
actividad 4actividad 4
actividad 4
kendra Ceja
 
Programacion
ProgramacionProgramacion
Programacion
yocondaparrales
 
Caract
CaractCaract

La actualidad más candente (17)

Multiplicacion de matrices: Implementacion en cluster
Multiplicacion de matrices: Implementacion en clusterMultiplicacion de matrices: Implementacion en cluster
Multiplicacion de matrices: Implementacion en cluster
 
Unidad V Python e ingeniería civil en obras civiles PVB
Unidad V Python e ingeniería civil en obras civiles PVBUnidad V Python e ingeniería civil en obras civiles PVB
Unidad V Python e ingeniería civil en obras civiles PVB
 
Python para ingenieros como alternativa a matlab
Python para ingenieros como alternativa a matlabPython para ingenieros como alternativa a matlab
Python para ingenieros como alternativa a matlab
 
3
33
3
 
Unidad V Tutorial de Python
Unidad V Tutorial de PythonUnidad V Tutorial de Python
Unidad V Tutorial de Python
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Task Parallel Library 2014
Task Parallel Library 2014Task Parallel Library 2014
Task Parallel Library 2014
 
Clase1_Python-CTIC
Clase1_Python-CTICClase1_Python-CTIC
Clase1_Python-CTIC
 
Instalación python
Instalación pythonInstalación python
Instalación python
 
Programacion orientada a objetos python manuel casado martín - universidad ...
Programacion orientada a objetos python   manuel casado martín - universidad ...Programacion orientada a objetos python   manuel casado martín - universidad ...
Programacion orientada a objetos python manuel casado martín - universidad ...
 
Ingeniería Inversa de Código Fuente
Ingeniería Inversa de Código FuenteIngeniería Inversa de Código Fuente
Ingeniería Inversa de Código Fuente
 
Parallel Python sistemas operativos avanzados
Parallel Python sistemas operativos avanzadosParallel Python sistemas operativos avanzados
Parallel Python sistemas operativos avanzados
 
Manual de python
Manual de pythonManual de python
Manual de python
 
Exposicion de c.
Exposicion de c.Exposicion de c.
Exposicion de c.
 
actividad 4
actividad 4actividad 4
actividad 4
 
Programacion
ProgramacionProgramacion
Programacion
 
Caract
CaractCaract
Caract
 

Destacado

Ma raquel maizoub modulo academico mpi fatla
Ma raquel maizoub modulo academico mpi fatlaMa raquel maizoub modulo academico mpi fatla
Ma raquel maizoub modulo academico mpi fatla
Ma. Raquel Maizoub G.
 
Perl mpi
Perl mpiPerl mpi
Perl mpi
Ruymán Reyes
 
Ch14. feedback and filpflop
Ch14. feedback and filpflopCh14. feedback and filpflop
Ch14. feedback and filpflop
Hwanseok Park
 
Manual de configuracion de un cluster en Debian
Manual de configuracion de un cluster en DebianManual de configuracion de un cluster en Debian
Manual de configuracion de un cluster en Debian
lavp28
 
MODELO PASO DE MENSAJES
MODELO PASO DE MENSAJESMODELO PASO DE MENSAJES
MODELO PASO DE MENSAJES
Ing Eduardo Perez Hernandez
 
Introduccion a MPI
Introduccion a MPIIntroduccion a MPI
Introduccion a MPI
Unai Lopez-Novoa
 
Artículo Estándares de Calidad en los Sistemas de Información
Artículo Estándares de Calidad en los Sistemas de InformaciónArtículo Estándares de Calidad en los Sistemas de Información
Artículo Estándares de Calidad en los Sistemas de Información
Arlu Flex
 
PROGRAMACIÓN PARALELA
PROGRAMACIÓN PARALELAPROGRAMACIÓN PARALELA
PROGRAMACIÓN PARALELA
Raquel Solano
 
Arquitectura de Computadores
Arquitectura de ComputadoresArquitectura de Computadores
Arquitectura de Computadores
Videoconferencias UTPL
 
What is [Open] MPI?
What is [Open] MPI?What is [Open] MPI?
What is [Open] MPI?
Jeff Squyres
 
Pram
PramPram
El sistema NWP HARMONIE: Introducción a la Computación de Altas
El sistema NWP HARMONIE: Introducción a la Computación de AltasEl sistema NWP HARMONIE: Introducción a la Computación de Altas
El sistema NWP HARMONIE: Introducción a la Computación de Altas
Tomás Morales
 
Introduction to MPI
Introduction to MPI Introduction to MPI
Introduction to MPI
Hanif Durad
 

Destacado (13)

Ma raquel maizoub modulo academico mpi fatla
Ma raquel maizoub modulo academico mpi fatlaMa raquel maizoub modulo academico mpi fatla
Ma raquel maizoub modulo academico mpi fatla
 
Perl mpi
Perl mpiPerl mpi
Perl mpi
 
Ch14. feedback and filpflop
Ch14. feedback and filpflopCh14. feedback and filpflop
Ch14. feedback and filpflop
 
Manual de configuracion de un cluster en Debian
Manual de configuracion de un cluster en DebianManual de configuracion de un cluster en Debian
Manual de configuracion de un cluster en Debian
 
MODELO PASO DE MENSAJES
MODELO PASO DE MENSAJESMODELO PASO DE MENSAJES
MODELO PASO DE MENSAJES
 
Introduccion a MPI
Introduccion a MPIIntroduccion a MPI
Introduccion a MPI
 
Artículo Estándares de Calidad en los Sistemas de Información
Artículo Estándares de Calidad en los Sistemas de InformaciónArtículo Estándares de Calidad en los Sistemas de Información
Artículo Estándares de Calidad en los Sistemas de Información
 
PROGRAMACIÓN PARALELA
PROGRAMACIÓN PARALELAPROGRAMACIÓN PARALELA
PROGRAMACIÓN PARALELA
 
Arquitectura de Computadores
Arquitectura de ComputadoresArquitectura de Computadores
Arquitectura de Computadores
 
What is [Open] MPI?
What is [Open] MPI?What is [Open] MPI?
What is [Open] MPI?
 
Pram
PramPram
Pram
 
El sistema NWP HARMONIE: Introducción a la Computación de Altas
El sistema NWP HARMONIE: Introducción a la Computación de AltasEl sistema NWP HARMONIE: Introducción a la Computación de Altas
El sistema NWP HARMONIE: Introducción a la Computación de Altas
 
Introduction to MPI
Introduction to MPI Introduction to MPI
Introduction to MPI
 

Similar a Intro Mpi

Analista-programador Cobol - Módulo 1.3
Analista-programador Cobol - Módulo 1.3Analista-programador Cobol - Módulo 1.3
Analista-programador Cobol - Módulo 1.3
natachaceleste
 
Paralela9
Paralela9Paralela9
Paralela9
Abraham Zamudio
 
Algoritmos Paralelos
Algoritmos ParalelosAlgoritmos Paralelos
Algoritmos Paralelos
RayNunezEspino
 
Ec2
Ec2Ec2
OPTIMIZACION DE CODIGO
OPTIMIZACION DE CODIGOOPTIMIZACION DE CODIGO
OPTIMIZACION DE CODIGO
MAURICIOANDRES39
 
Redes
RedesRedes
Redes
lolo503
 
computación paralela
computación paralelacomputación paralela
computación paralela
Yazmin Polanco
 
Diseño de Algoritmos Paralelos.pdf
Diseño de Algoritmos Paralelos.pdfDiseño de Algoritmos Paralelos.pdf
Diseño de Algoritmos Paralelos.pdf
Marti44678
 
Resolver problemas con_una_computadora
Resolver problemas con_una_computadoraResolver problemas con_una_computadora
Resolver problemas con_una_computadora
FaridCastillo2
 
Resolver problemas con_una_computadora
Resolver problemas con_una_computadoraResolver problemas con_una_computadora
Resolver problemas con_una_computadora
JulioVizcarra5
 
PASOS PARA LA SOLUCION DE PROBLEMAS - HTML
PASOS PARA LA SOLUCION DE PROBLEMAS - HTMLPASOS PARA LA SOLUCION DE PROBLEMAS - HTML
PASOS PARA LA SOLUCION DE PROBLEMAS - HTML
felipeforero72
 
Informatica
InformaticaInformatica
Informatica
felipeforero72
 
OpenMP - Configuración de IDE y ejecución de código paralelo
OpenMP - Configuración de IDE y ejecución de código paraleloOpenMP - Configuración de IDE y ejecución de código paralelo
OpenMP - Configuración de IDE y ejecución de código paralelo
adelsolar
 
Investigación Simuladores
Investigación Simuladores Investigación Simuladores
Investigación Simuladores
Roberto Dominguez
 
Simuladores mas Importantes de la Historia.
Simuladores mas Importantes de la Historia.Simuladores mas Importantes de la Historia.
Simuladores mas Importantes de la Historia.
Roberto Dominguez
 
01 - Introducción al lenguaje de programación Python 3
01 - Introducción al lenguaje de programación Python 301 - Introducción al lenguaje de programación Python 3
01 - Introducción al lenguaje de programación Python 3
Diego Andrés Alvarez Marín
 
AD Unidad2: Diseño de programas paralelos y distribuidos
AD Unidad2: Diseño de programas paralelos y distribuidosAD Unidad2: Diseño de programas paralelos y distribuidos
AD Unidad2: Diseño de programas paralelos y distribuidos
Franklin Parrales Bravo
 
Software libre en la ingeniería. Charla4
Software libre en la ingeniería. Charla4Software libre en la ingeniería. Charla4
Software libre en la ingeniería. Charla4
Vicente Mataix Ferrándiz
 
Rendimiento y consumo energético con python
Rendimiento y consumo energético con pythonRendimiento y consumo energético con python
Rendimiento y consumo energético con python
pythoncanarias
 
00026966
0002696600026966

Similar a Intro Mpi (20)

Analista-programador Cobol - Módulo 1.3
Analista-programador Cobol - Módulo 1.3Analista-programador Cobol - Módulo 1.3
Analista-programador Cobol - Módulo 1.3
 
Paralela9
Paralela9Paralela9
Paralela9
 
Algoritmos Paralelos
Algoritmos ParalelosAlgoritmos Paralelos
Algoritmos Paralelos
 
Ec2
Ec2Ec2
Ec2
 
OPTIMIZACION DE CODIGO
OPTIMIZACION DE CODIGOOPTIMIZACION DE CODIGO
OPTIMIZACION DE CODIGO
 
Redes
RedesRedes
Redes
 
computación paralela
computación paralelacomputación paralela
computación paralela
 
Diseño de Algoritmos Paralelos.pdf
Diseño de Algoritmos Paralelos.pdfDiseño de Algoritmos Paralelos.pdf
Diseño de Algoritmos Paralelos.pdf
 
Resolver problemas con_una_computadora
Resolver problemas con_una_computadoraResolver problemas con_una_computadora
Resolver problemas con_una_computadora
 
Resolver problemas con_una_computadora
Resolver problemas con_una_computadoraResolver problemas con_una_computadora
Resolver problemas con_una_computadora
 
PASOS PARA LA SOLUCION DE PROBLEMAS - HTML
PASOS PARA LA SOLUCION DE PROBLEMAS - HTMLPASOS PARA LA SOLUCION DE PROBLEMAS - HTML
PASOS PARA LA SOLUCION DE PROBLEMAS - HTML
 
Informatica
InformaticaInformatica
Informatica
 
OpenMP - Configuración de IDE y ejecución de código paralelo
OpenMP - Configuración de IDE y ejecución de código paraleloOpenMP - Configuración de IDE y ejecución de código paralelo
OpenMP - Configuración de IDE y ejecución de código paralelo
 
Investigación Simuladores
Investigación Simuladores Investigación Simuladores
Investigación Simuladores
 
Simuladores mas Importantes de la Historia.
Simuladores mas Importantes de la Historia.Simuladores mas Importantes de la Historia.
Simuladores mas Importantes de la Historia.
 
01 - Introducción al lenguaje de programación Python 3
01 - Introducción al lenguaje de programación Python 301 - Introducción al lenguaje de programación Python 3
01 - Introducción al lenguaje de programación Python 3
 
AD Unidad2: Diseño de programas paralelos y distribuidos
AD Unidad2: Diseño de programas paralelos y distribuidosAD Unidad2: Diseño de programas paralelos y distribuidos
AD Unidad2: Diseño de programas paralelos y distribuidos
 
Software libre en la ingeniería. Charla4
Software libre en la ingeniería. Charla4Software libre en la ingeniería. Charla4
Software libre en la ingeniería. Charla4
 
Rendimiento y consumo energético con python
Rendimiento y consumo energético con pythonRendimiento y consumo energético con python
Rendimiento y consumo energético con python
 
00026966
0002696600026966
00026966
 

Último

Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial ValenciaCatalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
AMADO SALVADOR
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
paulroyal74
 
IA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticulturaIA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticultura
Miguel Rebollo
 
TIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololoTIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololo
KukiiSanchez
 
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdfInformació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Festibity
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
evelinglilibethpeafi
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVATECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
LilibethEstupian
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
gisellearanguren1
 
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
larapalaciosmonzon28
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
NajwaNimri1
 
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador ValenciaCatalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
AMADO SALVADOR
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
doctorsoluciones34
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
NicandroMartinez2
 
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
bendezuperezjimena
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
YaniEscobar2
 
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
AMADO SALVADOR
 
Manual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputosManual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputos
cbtechchihuahua
 
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor OficialCatalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
AMADO SALVADOR
 
HERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptxHERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptx
maralache30
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
mantenimientocarbra6
 

Último (20)

Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial ValenciaCatalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
 
IA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticulturaIA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticultura
 
TIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololoTIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololo
 
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdfInformació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVATECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
 
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
 
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador ValenciaCatalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
 
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
 
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
Catalogo General Electrodomesticos Teka Distribuidor Oficial Amado Salvador V...
 
Manual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputosManual de Soporte y mantenimiento de equipo de cómputos
Manual de Soporte y mantenimiento de equipo de cómputos
 
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor OficialCatalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
 
HERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptxHERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptx
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
 

Intro Mpi

  • 1. GRID Computing CARTIF 06 Junio 2007, Valladolid Introducción a MPI David Rodríguez González Consejo Superior de Investigaciones Científicas Instituto de Física de Cantabria, IFCA (Centro Mixto CSIC-Universidad de Cantabria) Santander ESPAÑA
  • 2.
  • 4.
  • 5.
  • 6.
  • 7.
  • 9.
  • 10.
  • 11.
  • 12.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21. Ejemplo pgfile y machinefile grid079 0 /grid/mpi/marco/Portal/NeuralNetwork/test-nn/ExampleApplication.exe mpi grid079 1 /grid/mpi/marco/Portal/NeuralNetwork/test-nn/ExampleApplication.exe mpi grid006 1 /grid/mpi/marco/Portal/NeuralNetwork/test-nn/ExampleApplication.exe mpi grid007 1 /grid/mpi/marco/Portal/NeuralNetwork/test-nn/ExampleApplication.exe mpi grid008 1 /grid/mpi/marco/Portal/NeuralNetwork/test-nn/ExampleApplication.exe mpi grid073.ifca.unican.es:2 grid074.ifca.unican.es:2 grid075.ifca.unican.es:2 grid076.ifca.unican.es:2 grid077.ifca.unican.es:2 grid078.ifca.unican.es:2
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28. Ejemplo MPI_Send/MPI_Recv char msg[100]; if(my_rank==0) { sprintf( msg ,&quot; Esto es un mensaje del proceso %d al proceso %d&quot;,source,dest); MPI_Send(msg,100,MPI_CHAR,dest,TAG,MPI_COMM_WORLD); printf(&quot; Mensaje enviado a %d&quot;,dest); } else if(my_rank==1) { MPI_Recv(msg,100,MPI_CHAR,source,TAG,MPI_COMM_WORLD,&status); printf(&quot; Mensaje recibido en %d&quot;,dest); printf(msg); }
  • 29.
  • 30.
  • 31. Operaciones colectivas Imagen del Tutorial de Gropp
  • 32.
  • 33.
  • 34.
  • 35. Ejemplo BroadCast Char msg[100]; if(my_rank==source) { sprintf(msg,&quot; Esto es un mensaje del proceso %d a todos los demás&quot;,sourc e); MPI_Bcast(msg,100,MPI_CHAR,source,MPI_COMM_WORLD); printf(&quot; Mensaje enviado a todos desde %d&quot;,source); } else { MPI_Bcast(msg,100,MPI_CHAR,source,MPI_COMM_WORLD); printf(&quot; Mensaje recibido en %d desde %d&quot;,my_rank,source); printf(msg); }
  • 36. Ejemplo Reduce int value; int result; value = my_rank; MPI_Reduce(&value,&result,1,MPI_INT,MPI_SUM,source,MPI_COMM_WORLD); if(my_rank==source) { printf(&quot; Resultado de la suma colectiva %d&quot;, result); }
  • 37.
  • 38.
  • 40.
  • 41.
  • 43. MPICH-P4 en grid UI RB CE WN WN WN WN WN WN WN
  • 44. MPICH-G2 en grid UI RB CE WN WN WN WN WN WN WN CE WN WN WN WN WN WN WN CE WN WN WN WN WN WN WN
  • 45.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 53.
  • 54.
  • 55.
  • 56.