MPI Introducción Procesos Envío y recepción simple Envío y recepción no tan simple Comunicación colectiva. Herramientas de depuración y evaluación
|
|
- Gonzalo Olivera Salinas
- hace 5 años
- Vistas:
Transcripción
1 Tutorial sobre MPI Temario 1 MPI Introducción Procesos Envío y recepción simple Envío y recepción no tan simple Comunicación colectiva Herramientas de depuración y evaluación
2 arqavapar MPI (Introducción) 2 MPI: Message Passing Interface 1994 MPI Forum [Nov/92] Ejecución de aplicaciones paralelas distribuidas en ordenadores heterogéneos MPI-2 maestro Biblioteca mpi.h MPI_Send, MPI_Recv, esclavo1 esclavo2 esclavo3 esclavo M E1 E2 E3 E4 Implementación MPICH LAM/MPI IBM, Cada uno con su dirip
3 arqavapar MPI (Procesos) 3 Creación estática de procesos (según implementación mpirun ) int MPI_Init(... ); /* Inicia MPI */ int MPI_Comm_size(, int *numprocesos); 5 int MPI_Comm_rank(, int *yo); 2 int MPI_Finalize(); >= 0 => MPI_SUCCESS, significado concreto < 0 => un error (... MPI_ERR_ARG...) MPI_COMM_WORLD
4 arqavapar MPI (Procesos) 4 helloworld paralelo #include mpi.h int main (int argc, char *argv[]) { int yo, numprocesos; % mpirun all-local np 5 helloworld } MPI_Init (&argc, &argv); MPI_Comm_size (MPI_COMM_WORLD, &numprocesos); MPI_Comm_rank (MPI_COMM_WORLD, &yo); if (yo == 0) printf ( Creados %d procesos\n, numprocesos); printf ( Hola, soy el proceso %d\n, yo); MPI_Finalize(); % mpirun p4pg helloworld.txt helloworld pc1 2 /home/alumnosarqava/arqava01/p1/helloworld pc2 2 /home/alumnosarqava/arqava01/p1/helloworld pc3 1 /home/alumnosarqava/arqava01/p1/holamundo
5 arqavapar MPI (Envío y Recepción Simple) 5 Enviar y recibir arrays de datos simples (int, byte,...) Bloqueante P1 P2 int vector[n]; MPI_Send (vector, P2,...) int tabla[m]; MPI_Recv (tabla, P1,...) int MPI_Send(void *buffer, int cuantos, MPI_Datatype tipo, int destino, int etiqueta, MPI_Comm grupo) MPI_COMM_WORLD 0..MPI_TAG_UB MPI_INT, MPI_FLOAT,
6 arqavapar MPI (Envío y Recepción Simple) 6 Enviar y recibir arrays de datos simples (int, byte,...) Bloqueante int MPI_Recv(void *buffer,int cuantos, MPI_Datatype tipo, int origen, int etiqueta, MPI_Comm grupo, MPI_Status *estado) MPI_ANY_SOURCE MPI_ANY_TAG estado.mpi_source estado.mpi_tag int MPI_Get_count( MPI_Status *estado, MPI_Datatype tipo, int *cuantos)
7 arqavapar MPI (Envío y Recepción Simple) 7 Ejemplo de uso: psendrec.c #include <stdio.h> #include <unistd.h> #include mpi.h" #define N 3 #define VECES 5 void esclavo(void) {...} void maestro(void) {...} int main( int argc, char *argv[] ) { int yo; MPI_Init (&argc, &argv); MPI_Comm_rank (MPI_COMM_WORLD, &yo); if (yo == 0) maestro(); else esclavo(); MPI_Finalize(); return 0; }
8 arqavapar MPI (Envío y Recepción Simple) 8 Ejemplo de uso: psendrec.c void maestro (void) { int i, j, vector[n]; } for (i=0; i<veces; i++) { printf ("M: envia => "); for (j=0; j<n; j++) { vector[j] = i*n+j; printf("%d ", vector[j]); esclavo } printf ("\n"); MPI_Send (vector, N, MPI_INT, 1, 1, MPI_COMM_WORLD); }
9 arqavapar MPI (Envío y Recepción Simple) 9 Ejemplo de uso: psendrec.c void esclavo(void) { } int i, j,tabla[n], n; MPI_Status estado; maestro sleep(2); for (i=0; i<veces; i++) { MPI_Recv (tabla, N, MPI_INT, 0, 1, MPI_COMM_WORLD, &estado); MPI_Get_count (&estado, MPI_INT, &n); printf ("E: recibe => "); for (j=0; j<n; j++) printf("%d ", tabla[j]); printf (" de tid = %d eti = %d longi = %d\n", estado.mpi_source, estado.mpi_tag, n); }
10 arqavapar MPI (Envío y Recepción No Tan Simple) 10 Enviar y recibir arrays de datos simples No Bloqueante int MPI_Iprobe(int origen, int etiqueta, MPI_Comm grupo, int *haymsj, MPI_Status *estado) NO SI Hacer otras cosas int MPI_Recv(void *buffer, MPI_Status *estado) Enviar y recibir datos no homogéneos Crear tipos => Algo tedioso
11 arqavapar MPI (Comunicación colectiva) 11 Ala Ala cuenta.0 Ala cuenta.1 cuenta.2 cuenta.n int MPI_Bcast(void *buffer, int cuantos, Send+Recv MPI_Datatype tipo, int emisor,? tag MPI_Comm grupo) void maestro () { void esclavo () { char palabra[4]; char texto[4]; MPI_Bcast ( MPI_Bcast ( palabra, 4, MPI_CHAR, texto, 4, MPI_CHAR, 0, MPI_COMM_WORLD); 0, MPI_COMM_WORLD);
12 arqavapar MPI (Comunicación colectiva) 12 Otras llamadas interesantes: int MPI_Scatter(void *vorg, int norg, MPI_Datatype torg, void *vdst, int ndst, MPI_Datatype tdst, int emisor, MPI_Comm grupo); int MPI_Gather(void *vorg, int norg, MPI_Datatype torg, void *vdst, int ndst, MPI_Datatype tdst, int receptor, MPI_Comm grupo); int MPI_Reduce(void *vorg, void *vdst, int norg, MPI_Datatype tdatoorg, int operacion, int receptor, MPI_Comm grupo); int MPI_Barrier(MPI_Comm grupo);
13 arqavapar Herramientas de depuración y monitorización 13 Medición de tiempos de ejecución Depuración Monitorización #include <sys/time.h> struct timeval t0, tf, tiempo; /* Inicialización */ gettimeofday (&t0, NULL); /* ejecucion del programa paralelo */ Evitar E/S gettimeofday (&tf, NULL); timersub (&tf, &t0, &tiempo); printf ( Tiempo => %ld:%ld seg:micro\n, tiempo.tv_sec, tiempo.tv_usec);
14 arqavapar Herramientas de depuración y monitorización 14 maestro %mpirun dbg=ddd np 2 psendrec esclavo printf fflush(stdout) setbuf(stdout, NULL)
15 arqavapar Herramientas de depuración y monitorización 15 Monitorización (totalview) para MPI, openmp, FIN
Práctica 1. Primera experiencia con MPI
Práctica 1 Primera experiencia con MPI Septiembre-Diciembre 2008 ÍNDICE 1 VISIÓN GLOBAL DE MPI... 2 2 PRIMITIVAS BÁSICAS DE MPI PARA CREAR PROCESOS Y COMUNICACIÓN... 3 2.1 CONTROL DE PROCESOS... 4 2.2
Más detallesToma de contacto con MPI
Toma de contacto con MPI Práctica 0: Toma de contacto con MPI Página - 0 ÍNDICE 1 Visión global de MPI...2 2 Primitivas básicas de MPI para crear procesos y comunicarse entre ellos...3 2.1 Control de procesos...3
Más detallesMessage Passing Interface (MPI)
Message Passing Interface (MPI) INTRODUCCIÓN MPI (Message Passing Interface) como es un interfaz estandarizada para la realización de aplicaciones paralelas basadas en pasaje de mensajes. El modelo de
Más detallesINTRODUCCIÓN A LA PROGRAMACIÓN DE COMPUTADORES DE MEMORIA DISTRIBUIDA USANDO MPI SISTEMAS PARALELOS Y DISTRIBUIDOS
INTRODUCCIÓN A LA PROGRAMACIÓN DE COMPUTADORES DE MEMORIA DISTRIBUIDA USANDO MPI 1 Y DISTRIBUIDOS GRADO EN INGENIERÍA INFORMÁTICA INGENIERÍA DE COMPUTADORES ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA INFORMÁTICA
Más detallesMultiprocesamiento en lenguaje C Introducción a MPI
Multiprocesamiento en lenguaje C Introducción a MPI Message Passing Interface Pertinencia de la enseñanza del cómputo paralelo en el currículo de las ingenierías MPI MPI es un estándar de programación
Más detallesPráctica 3. Generación de números primos
Práctica 3 Generación de números primos Septiembre-Diciembre 2007 1 Algoritmo secuencial (primosec) En esta práctica vamos a trabajar con la generación de números primos basado en el método conocido como
Más detallesTEMA 5: PARALELISMO A NIVEL DE HILOS, TAREAS Y PETICIONES (TLP, RLP) (segunda parte)
TEMA 5: PARALELISMO A NIVEL DE HILOS, TAREAS Y PETICIONES (TLP, RLP) (segunda parte) SISTEMAS PARALELOS Y DISTRIBUIDOS www.atc.us.es Dpto. de Arquitectura y Tecnología de Computadores. Universidad de Sevilla
Más detallesParadigma de paso de mensajes
Paradigma de paso de mensajes Curso 2011-2012 Índice Visión lógica del paradigma de paso de mensajes. Operaciones básicas en paso de mensajes. Operaciones bloqueantes. Operaciones no bloqueantes. MPI:
Más detallesProcesamiento Paralelo
Procesamiento Paralelo Introducción a MPI Javier Iparraguirre Universidad Tecnológica Nacional, Facultad Regional Bahía Blanca 11 de Abril 461, Bahía Blanca, Argentina jiparraguirre@frbb.utn.edu.ar http://www.frbb.utn.edu.ar/hpc/
Más detallesMPI es un estándar de programación en paralelo mediante paso de mensajes que permite crear programas portables y eficientes.
Programación paralela en MPI MPI es un estándar de programación en paralelo mediante paso de mensajes que permite crear programas portables y eficientes. Introducción a MPI MPI fue creado en 1993 como
Más detallesProgramación Paralela: Memoria Distribuida
Programación Paralela: Memoria Distriuida MPI: Un caso de estudio Introducción Estas máquinas surgen de forma natural al conectar distintas máquinas en red y ponerlas a cooperar. La red será clave. Arquitectura
Más detallesProgramación en Entornos Paralelos: MPI
1-11 Marzo de 2017 FACET -UNT Programación en Entornos Paralelos: MPI Graciela Molina mgracielamolina@gmailcom TRADICIONALMENTE Procesamiento secuencial 2 TRADICIONALMENTE Procesamiento secuencial Si ya
Más detallesIntroducción a la Interfaz de paso de mensajes (MPI)
Introducción a la Interfaz de paso de mensajes (MPI) MPI communicator 1 P0 value MPI communicator 2 0 1 P1 P2 value 2 3 P3 José Miguel Mantas Ruiz Depto. de Lenguajes y Sistemas Informáticos Universidad
Más detallesETSISI - UPM Procesamiento Paralelo Curso 18/19. Práctica 2. Método de Monte Carlo y Superaceleración
Práctica 2 Método de Monte Carlo y Superaceleración 2 de Octubre 2018 ÍNDICE 1 Objetivos... 2 2 El método de Monte Carlo aplicado al cálculo de PI... 2 2.1 El método... 2 2.2 Tres versiones secuenciales...
Más detallesSISTEMAS PARALELOS Y DISTRIBUIDOS. 3º GIC. PRÁCTICA 9 Departamento de Arquitectura y Tecnología de Computadores Universidad de Sevilla
SISTEMAS PARALELOS Y DISTRIBUIDOS. 3º GIC. PRÁCTICA 9 Departamento de Arquitectura y Tecnología de Computadores Universidad de Sevilla PROGRAMACIÓN DE COMPUTADORES DE MEMORIA DISTRIBUIDA USANDO MPI. PREPARACIÓN
Más detallesProcesamiento Paralelo
Procesamiento Paralelo MPI - Tipos y Topologías Javier Iparraguirre Universidad Tecnológica Nacional, Facultad Regional Bahía Blanca 11 de Abril 461, Bahía Blanca, Argentina jiparraguirre@frbb.utn.edu.ar
Más detallesUNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INFORMÁTICA INGENIERÍA EN INFORMÁTICA. ARQUITECTURA DE COMPUTADORES II 19 de junio de 2007
UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INFORMÁTICA INGENIERÍA EN INFORMÁTICA. ARQUITECTURA DE COMPUTADORES II 19 de junio de 2007 Para la realización del presente examen se dispondrá de 2 1/2
Más detalles1 Primitivas básicas de OpenMP
1 Primitivas básicas de OpenMP Consultar la página oficial de la plataforma OpenMP http://www.openmp.org/drupal/ Pragmas Es una directiva para el compilador que permite la definición de nuevas directivas
Más detallesDepartamento de Automática
Departamento de Automática Ejemplo Producto escalar Producto escalar (secuencial) /*Cálculo del producto escalar programa secuencial */ #include #include typedef struct double *a;
Más detallesIntroducción a MPI / MPI2
Barcelona Supercomputing Center Centro Nacional de Supercomputación Introducción a MPI / MPI2 Santander, 5 de Noviembre de 2010 Xavier Abellan BSC Support team Índice Introducción Qué es MPI? Conceptos
Más detallesProgramación de aplicaciones paralelas con MPI (Message Passing Interface)
Programación de aplicaciones paralelas con MPI (Message Passing Interface) José Miguel Alonso Facultad de Informática UPV/EHU miguel@si.ehu.es 13/1/97 1. Introducción a MPI MPI (Message Passing Interface)
Más detallesInterfaz de Paso de Mensajes MPI. Christian Chinchilla Brizuela
Interfaz de Paso de Mensajes MPI Christian Chinchilla Brizuela Agenda Definición Objetivo principal MPI Historia Ventajas Desventajas Estructura MPI Programa MPI Llamadas de MPI Funciones Principales MPI
Más detallesMPI: Message Passing Interface. Arquitectura de Computadores II Ingeniería en Informática (4º Curso) Universidad Carlos III de Madrid
MPI: Message Passing Interface Arquitectura de Computadores II Ingeniería en Informática (4º Curso) Universidad Carlos III de Madrid Definición MPI es una interfaz de paso de mensaje que representa un
Más detallesEnunciado 3 Buscar palabras de estructura similar
Enunciado 3 Buscar palabras de estructura similar INDICE 1 Definición del problema...1 2 Solución secuencial...1 3 Tabla de tiempos...2 4 Para saber más...2 5 Listado de programas...2 5.1 palabrasec.c...2
Más detallesUNIVERSIDAD DE BURGOS Área de Tecnología Electrónica. Introducción a la programación en MPI.
UNIVERSIDAD DE BURGOS Área de Tecnología Electrónica Introducción a la programación en MPI. José María Cámara Nebreda, César Represa Pérez, Pedro Luis Sánchez Ortega Introducción a la programación en MPI.
Más detallesElementos básicos de cómputo paralelo
Elementos básicos de cómputo paralelo Grandes paradigmas Máquinas de memoria compartida Todos los procesadores ven toda la memoria al mismo tiempo. La filosofía es básicamente dividir las tareas. EL estándar
Más detallesLos prototipos de las funciones de MPI se detallan en el document: MPI_funciones.pdf
UNIVERSIDAD POLITECNICA DE MADRIDETSII COMPUTADORES II Profesor: Dr. Claudio Rossi, PhD Profesor asistente: Julián Colorado, PhDc 11,17,18, 24 de abril de 2012 PRACTICA: USO DE MPI (MESSAGE PASSING INTERFACE)
Más detallesProgramación Paralela en MPI. Xavier Andrade V.
Programación Paralela en MPI Xavier Andrade V. Introducción A pesar del aumento exponencial de la capacidad de los procesadores, esta no es suficiente para el estudio de muchos sistemas. Es necesario entonces
Más detallesComputacion de Alto Performance
Computacion de Alto Performance Abraham Zamudio Abraham Zamudio Computacion de Alto Performance 1/47 Indice 1 Algunos Aspectos Teoricos 2 Paralelismo Computacional 3 Linux Cluster Hardware Software 4 MPICH
Más detallesEsquemas de comunicación
Esquemas de comunicación tipos de comunicación Maestro-esclavo o comunicación global Esquema SPMD o comunicación local Maestro-esclavo o comunicación global Consiste en la implementación de un componente
Más detallesEl Procesamiento Distribuido y su aplicación al Tratamiento de Imágenes. Miguel Hernández Vázquez. Carlos Platero Dueñas
El Procesamiento Distribuido y su aplicación al Tratamiento de Imágenes Autor: Tutor: Miguel Hernández Vázquez Carlos Platero Dueñas A mis padres y a mi hermano, que tanto me han ayudado y apoyado durante
Más detallesBrevísimo tutorial de MPI (Message Passing Interface) Miguel Vargas
Brevísimo tutorial de MPI (Message Passing Interface) Miguel Vargas 19/10/10 1/33 Contenido Contenido Clusters Beowulf MPI (Message Passing Interface) Comunicación entre procesos Un programa simple con
Más detallesBrevísimo tutorial de MPI (Message Passing Interface) MC. Miguel Vargas Félix
Brevísimo tutorial de MPI (Message Passing Interface) MC. Miguel Vargas Félix miguelvargas@cimat.mx http://www.cimat.mx/~miguelvargas 19/10/10 1/34 Contenido Contenido Clusters Beowulf MPI (Message Passing
Más detallesMaster SIA. Programación de Sistemas Paralelos. MPI: Ejercicios prácticos. Ejercicio 1. Facultad de Informática
Master SIA Facultad de Informática Programación de Sistemas Paralelos MPI: Ejercicios prácticos Te proponemos realizar estos cuatro ejercicios. Al final, y junto con los ejercicios sobre OpenMP, hay que
Más detallesEnunciado 2 Descifrar claves cifradas con crypt
Enunciado 2 Descifrar claves cifradas con crypt INDICE 1 Definición del problema...1 2 Solución secuencial...1 3 Tabla de tiempos...3 4 Para saber más...3 5 Listado de programas...3 5.1 cifrado.h...4 5.2
Más detallesFractal Mandelbrot con MPI - Estándar de Paso de Mensajes*
Fractal Mandelbrot con MPI - Estándar de Paso de Mensajes* Mandelbrot Fractal with MPI - Message Passing Interface. Guiovanna Paola Sabogal Alfaro** Diego Iván Sánchez Ramírez*** Resumen El desarrollo
Más detallesEjercicios/ejemplos de MPI
Ejercicios/ejemplos de MPI 1. Ejemplo programa hola: #include #include int main (int argc, char *argv[]) { int rank, size; MPI_Init(&argc, &argv); MPI_Comm_rank(MPI_COMM_WORLD, &rank);
Más detallesMPI y sus aplicaciones en infraestructuras Grid
MPI y sus aplicaciones en infraestructuras Grid Dr. Isabel Campos Plasencia Instituto de Física de Cantabria-IFCA Santander, Spain Grids y e-ciencia 2008, IFIC, Valencia Esquema Introducción a MPI MPI
Más detallesProgramación Híbrida e Introducción a la Programación de GPUs
Programación Híbrida e Introducción a la Programación de GPUs Fernando Robles Morales Instituto Nacional de Medicina Genómica Enrique Cruz Martínez Universidad Autónoma de la ciudad de México CONTENIDO
Más detallesComputación Matricial y Paralela
Computación Matricial y Paralela Programación híbrida Javier Cuenca Dpto. de Ingeniería y Tecnología de Computadores Domingo Giménez Dpto. de Informática y Sistemas Universidad de Murcia http://dis.um.es/~domingo
Más detallesQué es MPI? Arquitectura de los sistemas de memoria distribuida Modelos de programación Esquema básico de un programa MPI
Programación paralela basada en paso de mensajes (MPI) Índice Qué es MPI? Arquitectura de los sistemas de memoria distribuida Modelos de programación Esquema básico de un programa MPI Funciones básicas
Más detallesProcesamiento paralelo
Procesamiento paralelo Universidad Tecnológica Nacional - FRBA Autor: Gustavo Nudelman Clasificación Definimos como procesamiento paralelo al concepto de agilizar la ejecución de un programa mediante su
Más detallesIntroducción a MPI (Message Passing Interface)
Centro Nacional de Cálculo Científico Universidad de Los Andes CeCalCULA Mérida - Venezuela Introducción a MPI (Message Passing Interface) Francisco Hidrobo hidrobo@ciens.ula.ve Herbert Hoeger hhoeger@ing.ula.ve
Más detallesProyecto Fin de Carrera ESTRATEGIAS DE INTERCAMBIO DE INFORMACIÓN EN ALGORIT
ESCUELA TÉCNICA SUPERIOR DE INGENIEROS INDUSTRIALES Y DE TELECOMUNICACIÓN UNIVERSIDAD DE CANTABRIA Proyecto Fin de Carrera ESTRATEGIAS DE INTERCAMBIO DE INFORMACIÓN EN ALGORIT ITMOS DE EQUILIBRIO DE CARGA
Más detallesComputación Matricial y Paralela
Computación Matricial y Paralela Programación con Paso de Mensajes. MPI Javier Cuenca Dpto. de Ingeniería y Tecnología de Computadores Domingo Giménez Dpto. de Informática y Sistemas Universidad de Murcia
Más detallesProyecto de Investigación I y II
Universidad Autónoma Metropolitana Iztapalapa Proyecto de Investigación I y II Migración de datos entre nodos de un cluster Ciencias Básicas e Ingeniería Licenciatura en Computación Autores: Fernando Fernández
Más detallesProgramación de paso de mensajes con MPI
Programación de paso de mensajes con MPI Tabla de contenidos 1. Programa "Hello word"... 1 2. Los entornos de ejecución para MPI... 2 3. Mensajes en MPI... 2 4. Mensajes en MPI (2)... 3 5. Un ejemplo:
Más detallesLaboratorio de Paralelismo MPI: ejemplos y ejercicios
Laboratorio de Paralelismo MPI: ejemplos y ejercicios > Máquinas y directorios Vamos a trabajar con un cluster sencillo de 35 nodos: 32 nodos uniprocesador (Pentium IV, 3 GHz, 1,5 GB RAM, 2 MB cache) y
Más detallesInstalación de un Super-Servidor de procesamiento paralelo basado en MPI
LABORATORIO: Simulación y Mecánica Computacional TRABAJO: Instalación de un Super-Servidor de procesamiento paralelo basado en MPI Idioma: Español Plataforma de Hardware: AMD64 Sistema Operativo: Debian
Más detallesCómputo en paralelo con MPI
Cómputo en paralelo con MPI Miguel Vargas-Félix miguelvargas@cimat.mx CIMAT, October 9, 2015 1/35 Clusters Beowulf Master node External network Slave nodes Network switch Características: Tecnología estandar
Más detallesutilizar libros ni un ejemplo tráfico
UNIVERSIDAD CARLOS III DE MADRID INGENIERÍA EN INFORMÁTICA. ARQUITECTURA DE COMPUTADORES II 14 de junio de 2010 Para la realización del presente examen se dispondrá de 2 1/2 horas. NO se podrán utilizar
Más detallesCOMPUTACIÓN DE ALTA PERFORMANCE
COMPUTACIÓN DE ALTA PERFORMANCE 2011 1 MPI-I COMPUTACIÓN DE ALTA PERFORMANCE Curso 2011 Sergio Nesmachnow (sergion@fing.edu.uy) Santiago Iturriaga (siturria@fing.edu.uy) Gerardo Ares (gares@fing.edu.uy)
Más detallesProgramación paralela: MPI
baliabideak 12 (2016) Programación paralela: MPI Olatz Arbelaitz Gallego Cuaderno del Estudiante Olatz Arregi Uriarte Agustin Arruabarrena Frutos José Ignacio Martín Aramburu Javier Muguerza Rivero ÍNDICE
Más detallesÍndice. Índice. Máquinas de memoria distribuida. Arquitectura de un cluster. Arquitectura
Índice Programación en MPI 1. Máquinas de memoria distribuida 2. MPI 3. Arquitectura 4. Funciones básicas a. Arranque y parada b. Envío y recepción bloqueantes c. Envío y recepción NO bloqueantes d. Barreras
Más detallesIntroducción a la Computación Heterogénea
Introducción a la Computación Heterogénea Carlos Bederián, Nicolás Wolovick FaMAF, Universidad Nacional de Córdoba, Argentina 18 de Febrero de 2013 RIO2013@DC.EXA.UNRC Revisión 3857, 2013-02-18 Motivación
Más detallesIntroducción general al Lenguaje C (2010/2011)
Luis Valencia Cabrera lvalencia@us.es (http://www.cs.us.es/~lvalencia) Ciencias de la Computacion e IA (http://www.cs.us.es/) Introducción general al Lenguaje C (2010/2011) Universidad de Sevilla Índice
Más detallesSegunda parte: Paso de mensajes
Segunda parte: Paso de mensajes Índice Introducción Arquitecturas de comunicación Cliente-servidor Peer-to-peer Paso de mensajes Comunicación punto a punto Comunicación de grupo Llamadas a procedimientos
Más detallesManuel Martín Salvador
MPI 2 Introducción a Message-Passing Interface 2 Manuel Martín Salvador draxus@gmail.com http://draxus.org Licencia CC Índice Introducción E/S Paralela Acceso remoto a memoria Gestión dinámica de procesos
Más detallesComputación Matricial y Paralela
Computación Matricial y Paralela Sesión 3 MPI. Algoritmos Matriciales Javier Cuenca Dpto. de Ingeniería y Tecnología de Computadores Domingo Giménez Dpto. de Informática y Sistemas Facultad de Informática
Más detallesObjetivos y presentación del curso
Grupo ARCOS Objetivos y presentación del curso Estructura de Computadores Grado en Ingeniería Informática Estructura de Computadores en la UC3M Asignatura obligatoria de segundo curso de: Grado en Ingenería
Más detallesLaboratorio de Paralelismo Prácticas MPI
Laboratorio de Paralelismo Prácticas MPI Tras los ejemplos MPI que hemos ido haciendo en el laboratorio, hay que realizar estos cuatro ejercicios. Los programas de partida los tienes en el directorio de
Más detallesASIGNATURA: SISTEMAS INFORMÁTICOS INDUSTRIALES. CURSO 4º GRUPO Octubre 2015
2. Problema de Análisis y Diseño Orientado a Objetos (10 puntos - 20 minutos) Para el código de test adjunto, se pide. 1. Diagrama de clases de diseño (2.5 puntos). 2. Implementación en C++ de la solución
Más detallesImplementación de un Cluster de Computadoras con software libre para Computación Científica en Jicamarca
Implementación de un Cluster de Computadoras con software libre para Computación Científica en Jicamarca A.Zamudio M. Milla Contenido de la Presentación 1 Radio Observatorio de Jicamarca 2 3 4 5 6 Índice
Más detallesComunicación entre Procesos
Universidad Simón Bolívar Departamento de Computación y T.I Sistemas de operación III CI-4822 Comunicación entre Procesos por pase de mensajes Prof. Yudith Cardinale Ene - Mar 2011 Introducción Comunicación
Más detallesProgramación en Paralelo con MPI en Clusters Linux
Programación en Paralelo con MPI en Clusters Linux Francisco Javier Rodríguez Arias 13 de marzo de 2006 Problema y Motivación En física se requiere hacer muchos cálculos. Para eso se hacen programas de
Más detallesEl lenguaje de Programación C. Fernando J. Pereda <ferdy@gentoo.org>
El lenguaje de Programación C Fernando J. Pereda Por qué aprender C? Portable y muy extendido Estándar (C89, C99) El lenguaje de los sistemas Un lenguaje fácil (no, no es broma) Por
Más detallesBiblioteca de sistema
* Para la realización del presente examen se aconseja un tiempo de 2 horas. Teoría 1. Explique en detalle cómo se pasa una llamada al sistema operativo. El sistema operativo se activa cuando debe responder
Más detallesFARMER en C y C++ bajo MPICH Antonio Carrillo Ledesma
FARMER en C y C++ bajo MPICH Antonio Carrillo Ledesma http://www.mmc.igeofcu.unam.mx/acl Objetivo El presente proyecto es sobre la implementación de un Maestro-Esclavo (farmer) en el lenguaje de programación
Más detallesBioingeniería I Algoritmos Genéticos en paralelo
Bioingeniería I Algoritmos Genéticos en paralelo Ing. Leandro D. Vignolo, Ing. E. Marcelo Albornoz 2 de mayo de 2007 1. Cálculo distribuido y paso de mensajes El cálculo paralelo es el uso de múltiples
Más detallesIntroducción a C. Grupo de Sistemas y Comunicaciones. Febrero 2008 C 1. Programación imperativa estructurada.
Grupo de Sistemas y Comunicaciones gsyc-profes@gsyc.es Febrero 2008 C 1 C Características: Programación imperativa estructurada. Relativamente de bajo nivel. Lenguaje simple, la funcionalidad está en las
Más detallesParalelo vs serial. M.A. Rodríguez Meza Ins$tuto Nacional de Inves$gaciones Nucleares
M.A. Rodríguez Meza Ins$tuto Nacional de Inves$gaciones Nucleares Correo electrónico: mar@nuclear.inin.mx h
Más detallesHerramientas Visuales de Compilación en C. LUIS MENGUAL (c)
Herramientas Visuales de Compilación en C Visual Studio 2005 (I) Herramienta para implementar, ejecutar y compilar código fuente en distintos lenguajes Entorno visual amigable y flexible Entorno de Depuración
Más detallesArquitecturas Paralelas Clusters
Arquitecturas Paralelas Clusters William Stallings, Organización y Arquitectura de Computadores, 5ta. ed., Capítulo 16: Procesamiento Paralelo. Andrew S. Tanenbaum, Organización de Computadoras 4ta. ed.,
Más detallesEVALUACIÓN DEL DESEMPEÑO DE UN CLUSTER DE ALTO RENDIMIENTO SOBRE UNA INFRAESTRUCTURA DE NUBE.
Universidad de las Fuerzas Armadas- ESPE. 1 EVALUACIÓN DEL DESEMPEÑO DE UN CLUSTER DE ALTO RENDIMIENTO SOBRE UNA INFRAESTRUCTURA DE NUBE. Arellano García Alexis Israel, Fernández Molina José Eduardo. Ingeniería
Más detallesQué es y qué no es un sistema distribuido? M.C. Juan Carlos Olivares Rojas
Qué es y qué no es un sistema distribuido? M.C. Juan Carlos Olivares Rojas Distribuir Según el diccionario: dividir una cosa entre varios designando lo que a cada uno corresponde Problemática: muchas tecnologías
Más detalles3. Programación paralela: MPI
Laboratorio de Paralelismo 3. Programación paralela: MPI Introducción. Funciones MPI básicas. Otros modos de envío y recepción. Comunicación en grupo. Tipos de datos derivados, empaquetado. Comunicadores,
Más detallesHerramientas Visuales de Compilación en C. LUIS MENGUAL (c)
Herramientas Visuales de Compilación en C Visual Studio 2010 (I) Herramienta para implementar, ejecutar y compilar código fuente en distintos lenguajes Entorno visual amigable y flexible Entorno de Depuración
Más detallesPrácticas de Sistemas operativos
Prácticas de Sistemas operativos David Arroyo Guardeño Escuela Politécnica Superior de la Universidad Autónoma de Madrid Sexta semana: memoria compartida Segunda práctica 1 Memoria compartida: ejercicio
Más detallesHerramient tas Vi Visuales de l d Compilación en C LUIS MENGUAL (c)
Herramientas Visuales de Compilación en C Visual Studio 2005 (I) Herramienta para implementar, ejecutar y compilar código fuente en distintos lenguajes Entorno visual amigable y flexible Entorno de Depuración
Más detallesEjercicio Sockets Suma Resta. Descripción
Ejercicio Sockets Suma Resta Siguiendo con nuestra propuesta de construir embriones de servicios, como hemos hecho en la práctica programando un embrión de Telnet, un embrión de cliente de un servidor
Más detallesApellidos: Nombre: Matrícula: Examen Programación para Sistemas Grado en Ingeniería Informática (2009)
Examen 105000016 - Programación para Sistemas Grado en Ingeniería Informática (2009) Lenguajes y Sistemas Informáticos e Ingeniería de Software Facultad de Informática Universidad Politécnica de Madrid
Más detallesProgramación I Funciones
1 Funciones Iván Cantador 2 Funciones: definición, sintaxis, ejemplos (I) Una funciónes un bloque de sentencias identificado con un nombre que se ejecutan de manera secuencial ofreciendo una funcionalidad
Más detallesPunteros. Programación en C 1
Punteros Programación en C 1 Índice Variables y direcciones de memoria. Punteros definición, declaración e inicialización. Punteros declaración, asignación y dereferencia. Puntero nulo, tipo void. Aritmética
Más detallesPunteros. Definición Un puntero es un dato que contiene una dirección de memoria.
Punteros Definición Un puntero es un dato que contiene una dirección de memoria. NOTA: Existe una dirección especial que se representa por medio de la constante NULL (definida en ) y se emplea
Más detallesModelo de paso de mensajes
Modelo de paso de mensajes Miguel Alfonso Castro García mcas@xanum.uam.mx Universidad Autónoma Metropolitana - Izt 17 de noviembre de 2016 Contenido 1 Comunicación punto a punto 2 3 Comunicación punto
Más detallesUNIVERSIDAD AUTÓNOMA METROPOLITANA IZTAPALAPA PROPUESTA DE PARALELIZACIÓN DE UNA APLICACIÓN SECUENCIAL DE ALTO RENDIMIENTO
UNIVERSIDAD AUTÓNOMA METROPOLITANA IZTAPALAPA DIVISIÓN DE CIENCIAS BÁSICAS E INGENIERÍA PROPUESTA DE PARALELIZACIÓN DE UNA APLICACIÓN SECUENCIAL DE ALTO RENDIMIENTO LIC. COMPUTACIÓN ÁREA DE COMPUTACIÓN
Más detallesIntroducción al Cómputo en Paralelo en el Laboratorio Nacional de Supercómputo del Sureste de México: Uso de MPI
Introducción al Cómputo en Paralelo en el Laboratorio Nacional de Supercómputo del Sureste de México: Uso de MPI Poulette Mayoral Orueta y Luis M. Villaseñor Cendejas Benemérita Universidad Autónoma de
Más detallesMaster SIA 2012/13. Programación de Sistemas Paralelos. OpenMP: Ejercicios prácticos. Facultad de Informática. Ejercicio 1.A. pi.c
Master SIA 2012/13 Facultad de Informática Programación de Sistemas Paralelos OpenMP: Ejercicios prácticos En el directorio templates/practica de tu cuenta msiaxx tienes varios programas que hay que procesar
Más detallesConsideraciones en el diseño de redes Topología de redes Mecanismos de rutado
Redes básicas de interconexión Consideraciones en el diseño de redes Topología de redes Mecanismos de rutado Consideraciones en el diseño de redes Prestaciones de la red Múltiples procesadores Múltiples
Más detallesSistemas Operativos. Grado Ingeniería Informática. TGR Procesos.
Sistemas Operativos. Grado Ingeniería Informática. TGR Procesos. 1.-Considerar los siguientes procesos con los tiempos de llegadas, prioridades y ráfagas de cpu. Proceso Ráfaga de CPU Prioridad Tiempo
Más detallesPrácticas de Sistemas operativos
Prácticas de Sistemas operativos David Arroyo Guardeño Escuela Politécnica Superior de la Universidad Autónoma de Madrid Quinta semana: señales 1 Cronograma semanal 2 Entregas 3 Introducción 4 Envío de
Más detallesSistemas Operativos Práctica 3
Sistemas Operativos Práctica 3 Ing. Andrés Bustamante afbustamanteg@unal.edu.co Ingeniería de Sistemas Facultad de Ingeniería Universidad de la Amazonia 2009 1. Objetivo El objetivo de la práctica es que
Más detallesExamen Fundamentos de Programación 15 de enero de 2016 Curso 2015/16
Problema 1: [1 punto] Examen Fundamentos de Programación 15 de enero de 2016 Curso 2015/16 Duración: 2,45 horas 10 PUNTOS Publicación de notas 26 de enero Revisión de examen 1 de febrero En el horario
Más detallesAlgoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C Sesión 2
Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C Sesión 2 Contenidos: 1. Punteros 2. Arrays 3. Estructuras (registros) y uniones 4. Funciones Ejercicios Algoritmos y
Más detallesMC Hilda Castillo Zacatelco PROCESOS
MC Hilda Castillo Zacatelco hildacz@gmail.com PROCESOS Definición y atributos Un proceso es la instancia de un programa en ejecución. Desde el punto de vista del SO, un proceso es la entidad más pequeña
Más detallesCálculos en paralelo con FreeFem++
Cálculos en paralelo con FreeFem++ J. Rafael Rodríguez Galván 4 al 8 de julio de 2011 J. Rafael Rodríguez Galván (UCA) Cálculos en paralelo con FreeFem++ 4 al 8 de julio de 2011 1 / 18 Outline 1 Cálculos
Más detallesCurso de Promoción Educativa Programación en el Supercomputador Ben Arabi. Programación con MPI. Javier Cuenca. Universidad de Murcia
Curso de Promoción Educativa Programación en el Supercomputador Ben Arabi Programación con MPI Javier Cuenca Universidad de Murcia Indice de la sesión Introducción Comunicaciones punto a punto Comunicaciones
Más detalles