Planificación de Cálculo Paralelo (2016)
Información básica
Carrera |
IngenierÃa en Informática |
Departamento |
Informática |
Sitio Web |
http://www.cimec.org.ar/cursos |
Plan de Estudios | |
Plan 2006 | |
Carácter | PerÃodo |
Cuatrimestral | No especificado |
Docente Responsable | |
Victorio Enrique Sonzogni |
Equipo docente
Nombre y Apellido |
D'elia, Jorge |
Sonzogni, Victorio Enrique |
Storti, Mario Alberto |
Carga horaria
Carga horaria total | 60 | hs |
TeorÃa | 26 | hs |
Resolución de ejercicios | 4 | hs |
Proyecto y diseño | 0 | hs |
Evaluaciones | 4 | hs |
Formación experimental | 18 | hs |
Resolución de problemas de ingenierÃa | 8 | hs |
Otras actividades | 0 | hs |
Contenidos mÃnimos
Arquitectura de computadoras paralelas. Programación en computadoras de memoria local y de memoria distriubuida. PVM,MPI,OMP. Aplicaciones a operaciones con matrices y a resolucion de sistemas de ecuaciones algebraicas lineales. |
Objetivos
La materia Cálculo Paralelo tiene como objetivo introducir al alumno en la realización de cálculos numéricos en computadoras paralelas o de alto desempeño. Se analizan las diferentes arquitecturas de computadoras paralelas y los modelos de programación paralela. Se hace énfasis en el trabajo tanto en redes de computadoras (computadoras personales o estaciones de trabajo) como en los denominados clusters de procesadores (grupos de microprocesadores interconectados que pueden ser utilizados como una computadora paralela), ambas opciones disponibles en la Facultad. Asimismo se trabajará con procesadores multicore. |
Conocimientos especÃficos previos para cursar la asignatura
Cálculo Numérico Algoritmos y Estructura de Datos |
MetodologÃa de enseñanza
Clases teoricas expositivas mediante cañon de proyección y pizarrón. Archivos con las presentaciones disponibles en la web de la materia. Clases prácticas en computadoras y en Clusters. Los trabajos prácticos son de realización individual e incluyen uso de programas y programación y verificación y mediciones de desempeño. Además de los contenidos conceptuales, en cada unidad temática se busca la capacidad para evaluar y seleccionar estrategias y modelos de paralelización, y la habilidad para programar los códigos computacionales para resolución de problemas numéricos y el uso de herramientas específicas para comunicación o extensiones a lenguajes de programación o compiladores. |
Programa AnalÃtico
Introducción |
Motivación. Desafíos actuales en necesidad de cálculo científico. Evolución de las supercomputadoras. Cálculo paralelo. Arquitectura de computadoras paralelas. Criterios de clasificación y taxonomía. |
Medidas de velocidad de procesamiento |
Velocidad de procesamiento. Patrones de comparación (benchmarks). Optimización. |
Vectorización |
Procesadores vectoriales. Programación de computadoras vectoriales. |
Análisis de algoritmos |
Grafos. Análisis de algoritmos secuenciales. Análisis de algoritmos paralelos. |
Modelos y estrategias de paralelización |
Niveles de paralelismo. Modelos de programación paralela. Estrategias de paralelización. Reordenamiento de las variables. Descomposición del dominio. Problemas de proyección en computadoras masivas. Diseño de programas paralelos. |
Programación en el modelo de memoria compartida |
Procesos. Mecanismos de coordinación. Dependencia entre los datos. Granularidad y equilibrio de las tareas. Programación en paralelo en el paradigma de memoria compartida. HPF (High Perfomance Fortran). OMP. |
Programación en el modelo de memoria local |
Comunicación y granularidad. Programas host-node. Programación en paralelo en el paradigma de intercambios de mensajes: PVM (Parallel Virtual Machine) y MPI (Message-Passing Interface), paquetes con "fuentes abiertos" (open source). |
Eficiencia de programas paralelos |
Speedup y eficiencia. Ley de Amdahl. Factores que influyen en la eficiencia. Sobrecargas por comunicación y coordinación. Fracciones no paralelizables. Redundancia. Desbalanceo. |
Algoritmos paralelos para álgebra lineal |
Bibliotecas de procedimientos para álgebra lineal. Programas paralelos para operaciones matriciales. Herramientas: ScaLAPACK, PETSc. . |
Métodos directos de resolución de sistemas de ecuaciones algebraicas lineales |
Programación paralela de métodos directos para sistemas de ecuaciones lineales. Sistemas triangulares. Factorización LU. |
Métodos iterativos de resolución de sistemas de ecuaciones algebraicas lineales |
Métodos iterativos para sistemas de ecuaciones lineales. Método de gradiente conjugado precondicionado. Programación paralela. |
BibliografÃa
BibliografÃa básica |
S. Succi and F. Papetti, |
I. Foster |
R. Buyya |
J. Dongarra, I. Duff, D. Sorensen and H. van der Vorst |
G. Fox, R. Williams, and P. Messina |
Geist, et al. |
W. Gropp, E. Lusk and A. Skjellum |
Cronograma de actividades
introduccion | Semana 1 | Tipo: T | Duración: 2 hs |
Docente/s responsable/s: Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
Medidas de velocidad de procesamiento | Semana 1 | Tipo: PL | Duración: 2 hs |
Docente/s responsable/s: Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
PVM | Semana 2 | Tipo: PL | Duración: 2 hs |
Docente/s responsable/s: Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
PVM | Semana 3 | Tipo: T | Duración: 2 hs |
Docente/s responsable/s: Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
Análisis de algoritmos | Semana 4 | Tipo: T | Duración: 2 hs |
Docente/s responsable/s: Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
Vectorizacion | Semana 4 | Tipo: PL | Duración: 2 hs |
Docente/s responsable/s: Mario Alberto Storti | |||
Descripción: | |||
Observaciones: |
MPI | Semana 5 | Tipo: T | Duración: 2 hs |
Docente/s responsable/s: Mario Alberto Storti | |||
Descripción: | |||
Observaciones: |
MPI | Semana 5 | Tipo: PL | Duración: 2 hs |
Docente/s responsable/s: Mario Alberto Storti | |||
Descripción: | |||
Observaciones: |
Programación en el modelo de memoria local | Semana 6 | Tipo: T | Duración: 2 hs |
Docente/s responsable/s: Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
OMP | Semana 7 | Tipo: PL | Duración: 2 hs |
Docente/s responsable/s: Jorge D'elia | |||
Descripción: | |||
Observaciones: |
Programación en el modelo de memoria compartida | Semana 8 | Tipo: T | Duración: 2 hs |
Docente/s responsable/s: Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
Primer Parcial | Semana 8 | Tipo: E | Duración: 2 hs |
Docente/s responsable/s: Jorge D'elia, Victorio Enrique Sonzogni, Mario Alberto Storti | |||
Descripción: | |||
Observaciones: |
Modelos y estrategias de paralelización | Semana 9 | Tipo: T | Duración: 2 hs |
Docente/s responsable/s: Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
Modelos y estrategias de paralelización | Semana 9 | Tipo: EP | Duración: 2 hs |
Docente/s responsable/s: Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
Eficiencia de programas paralelos | Semana 10 | Tipo: T | Duración: 2 hs |
Docente/s responsable/s: Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
Eficiencia de programas paralelos | Semana 10 | Tipo: EP | Duración: 2 hs |
Docente/s responsable/s: Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
Algoritmos paralelos para álgebra lineal | Semana 11 | Tipo: T | Duración: 2 hs |
Docente/s responsable/s: Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
Algoritmos paralelos para álgebra lineal | Semana 11 | Tipo: PI | Duración: 2 hs |
Docente/s responsable/s: Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
Métodos directos de resolución de sistemas de ecuaciones algebraicas lineales | Semana 12 | Tipo: T | Duración: 2 hs |
Docente/s responsable/s: Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
Métodos directos de resolución de sistemas de ecuaciones algebraicas lineales | Semana 12 | Tipo: PI | Duración: 2 hs |
Docente/s responsable/s: Jorge D'elia, Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
Métodos iterativos de resolución de sistemas de ecuaciones algebraicas lineales | Semana 13 | Tipo: T | Duración: 2 hs |
Docente/s responsable/s: Jorge D'elia | |||
Descripción: | |||
Observaciones: |
Métodos iterativos de resolución de sistemas de ecuaciones algebraicas lineales | Semana 13 | Tipo: PI | Duración: 2 hs |
Docente/s responsable/s: Jorge D'elia | |||
Descripción: | |||
Observaciones: |
Métodos iterativos de resolución de sistemas de ecuaciones algebraicas lineales | Semana 14 | Tipo: PI | Duración: 2 hs |
Docente/s responsable/s: Mario Alberto Storti | |||
Descripción: | |||
Observaciones: |
Métodos Iterativos de Resolución | Semana 14 | Tipo: T | Duración: 2 hs |
Docente/s responsable/s: Mario Alberto Storti | |||
Descripción: | |||
Observaciones: |
Métodos Iterativos de Resolución | Semana 15 | Tipo: PL | Duración: 2 hs |
Docente/s responsable/s: Mario Alberto Storti | |||
Descripción: | |||
Observaciones: |
Segundo Parcial | Semana 15 | Tipo: E | Duración: 2 hs |
Docente/s responsable/s: Victorio Enrique Sonzogni | |||
Descripción: | |||
Observaciones: |
Requerimientos para regularizar
Para obtener la regularidad en la materia el alumno deberá: |
Requerimientos para promover
1) Observar un 80% de asistencia a las clases teórico-prácticas; 4) Aprobar un Coloquio Final Integrador. |
Examen final
Alumnos regulares |
El examen final para alumnos regulares consta de cuestionarios teórico-prácticos, análisis de algoritmos y programas, y escritura de programas. |
Alumnos libres |
El examen final para alumnos libres consta de cuestionarios teórico-prácticos, análsis de algoritmos y programas, y escritura de programas. También requiere trabajo en computadoras. |
Evaluaciones
Fecha | Tipo | Modalidad | Descripción |
---|---|---|---|
07-10-2016 | Parcial | Escrita | Primer Parcial. |
18-11-2016 | Parcial | Escrita | Segundo Parcial. |