Cómputo Paralelo: Aplicaciones, Arquitecturas y Programación

6 June, 2016

Título:Cómputo Paralelo: Aplicaciones, Arquitecturas y Programación
Prof. Dr. Jorge Buenabad
Sección de Computación
Departamento de Ingeniería Eléctrica
Centro de Investigación y de Estudios Avanzados del IPN
Fecha impartición: 25 al 27 de noviembre de 2003.
Horario: de 16 a 20 horas.
Duración: 10 horas.
Lugar: Escuela Politécnica Superior. Aula 20D14.
Universidad Carlos III. Leganés, Madrid
Material del seminario:

buenabad.zip

Breve biografía del autor:

Ingeniero por la Universidad Autónoma de México DF. Doctor en Ciencias (Ingeniería Eléctrica, 1998) Universidad de Bristol, Inglaterra.
Imparte docencia e investiga en temas relacionados con la Arquitectura e Ingeniería de Computadores, Arquitecturas no Clásicas y Redes de Altas Prestaciones.

Sus temas de investigación en la actualidad incluyen : Sistemas operativos, arquitectura de computadoras, lenguajes de programación de sistemas en paralelos y distribuidos.

Abstract:

En este seminario se presentará una vista general de las aplicaciones y de los mecanismos que hacen posible el cómputo paralelo. Se comienza para ello con la justificación del problema y de la necesidad de soluciones, para comentar a continuación las soluciones tecnológicas existentes y los paradigmas de programación paralela más adecuados para cada tecnología y problema. Se presenta arquitecturas escalables de memoria compartida y las requerimientos del software del sistema para administrarlas eficazmente. Se presenta el hardware y software utilizado para desarrollar y correr aplicaciones paralelas usando mensajes. Se presenta el hardware y software utilizado para desarrollar aplicaciones de memoria compartida. Se presenta la motivación para utilizar cúmulos de computadoras para aplicaciones paralelas y, en particular, para utilizarlas bajo el modelo de memoria compartida.

Temas:

1.Introducción

1.1.Aplicaciones que requieren paralelismo.

1.2.Computadoras SIMD y MIMD (Single Instruction Multiple Data y
Multiple Instruction Multiple Data).

1.3.Modelos de Programación MIMD: paso de mensajes, memoria
compartida.

1.4.Diseño de aplicaciones paralelas.

1.5.Herramientas y ambientes.

2. Sistemas de Paso de Mensajes

2.1.Multicomputadoras, cúmulos de computadoras.

2.2.Software del sistema.

2.3.Paso de mensajes en maquinas de memoria compartida.

2.4.Ventajas y desventajas.

3.Sistemas de Memoria Compartida

3.1.Motivacion: facilidad de programacion y portabilidad de las
aplicaciones.

3.2.Hardware: multiprocesadores

3.3.Consistencia de datos.

3.4.Software del sistema: lenguajes, librerias, sistema operativo.

3.5.Desventajas: no son escalables.

4.Multiprocesadores Escalables.

4.1.Maquinas NUMA (non-uniform memory access machines).

4.2.Maquinas CC-NUMA (cache coherente-NUMA)

4.3.Requerimientos del software del sistema para administrar
NUMAs y CC-NUMAs.

4.4.Arquitecturas de Difusion de Datos.

4.5.Requerimientos del software del sistema para administrar
ADDs.

5.Memoria Compartida en Cumulos de Computadoras.

5.1.Motivacion: bajo costo, propósito general, fácil actualización
del hardware.

5.2.Herramientas de desarrollo.

5.3.Enfoques para soportar memoria compartida.

5.4.Ventajas y desventajas.

5.5.Tendencias actuales.