OBJETIVOS
El objetivo de esta asignatura es dar a conocer arquitecturas diferentes
a las clásicas, especialmente en el ámbito de las arquitecturas
paralelas. Se estudiarán con especial interés los procesadores
segmentados, los computadores vectoriales, los multiprocesadores y los
multicomputadores con sus problemas asociados
HORARIO
Teoría y problemas:
Lunes, martes y miércoles de 12 a 13h.
Aula 01. Escuela Técnica Superior de Ingeniería Informática.
Prácticas:
Miércoles de 16 a 18h.
Laboratorio L104. Escuela Técnica Superior de Ingeniería Informática.
PRERREQUISITOS
Se supone que el alumno que aborda esta asignatura dispone de unos
conocimientos elementales sobre estructura de computadores.
CONTENIDOS
-
CONCEPTOS GENERALES
- 1.1 Necesidad del paralelismo
- 1.2 Concepto de paralelismo
- 1.3 Limitaciones del paralelismo
- 1.3.1 Rendimiento de los computadores paralelos
- 1.3.2 Ley de Amdahl
- 1.3.3 Ley de Gustafson
- 1.3.4 Dependencias
- 1.4 Tipos de paralelismo
- 1.4.1 Paralelismo implícito
- 1.4.2 Paralelismo explícito: clasificación de Flynn
- 1.5 Problemática planteada
- 1.6 Características de las máquinas paralelas
- 1.7 Aplicaciones del proceso paralelo
-
PROCESADORES SEGMENTADOS
- 2.1 Introducción y definiciones
- 2.2 Rendimiento de los procesadores segmentados
- 2.3 Clasificación de los procesadores segmentados
- 2.4 Conflictos y sus tipos
- 2.5 Control de conflictos
- 2.5.1 Conflictos estructurales
- 2.5.2 Conflictos por dependencias de datos
- 2.5.3 Conflictos de control
- 2.6 Procesadores segmentados y arquitectura RISC
- 2.7 Procesadores superescalares y supersegmentados
- 2.8 Segmentación en procesadores VLIW
-
PROCESADORES VECTORIALES
- 3.1 Introducción y definiciones
- 3.2 Procesamiento vectorial
- 3.3 Segmentación y procesadores vectoriales
- 3.4 Arquitectura de los procesadores vectoriales
- 3.5 Rendimiento de los procesadores vectoriales
- 3.6 Características de los lenguajes para proceso vectorial
- 3.7 Compiladores para procesadores vectoriales
- 3.8 Ejemplos reales de computadores vectoriales
- 3.8.1 El Cray-1 de Cray Research
- 3.8.2 El Cyber-205 de Control Data
- 3.8.3 El IBM-3090
- 3.8.4 El Earth Simulator
-
REDES DE INTERCONEXIÓN
- 4.1 Introducción.
- 4.2 Rendimiento de las sistemas de comunicacidn entre procesadores
- 4.2.1 Modelo básico: dos procesadores con comunicación total entre los
procesos
- 4.2.2 Modelo extendido: n procesadores con comunicación total entre los
procesos
- 4.2.3 Modelo lineal en el tiempo de comunicaciones
- 4.2.4 Modelo óptimo
- 4.2.5 Conclusiones
- 4.3 Características de las redes de interconexión
- 4.4 Elementos de conmutación (switches)
- 4.5 Permutaciones y funciones de intercambio
- 4.6 Clasificación de las redes de interconexión
- 4.6.1 Redes de interconexión estáticas
- 4.6.2 Redes de interconexión dinámicas
- 4.6.3 Resumen comparativo
- 4.7 Métodos de encaminamiento
- 4.7.1 Encaminamiento en redes hipercubo
- 4.7.2 Encaminamiento en redes omega
- 4.7.3 Encaminamiento en redes delta
- 4.7.3 Encaminamiento en redes de línea base
-
5 LA MEMORIA EN LOS SISTEMAS PARALELOS
- 5.1 Organizaciones de memoria para los multiprocesadores
- 5.2 Memorias entrelazadas
- 5.2.1 Acceso S
- 5.2.2 Acceso C
- 5.2.3 Acceso C/S
- 5.3 Memorias tolerantes a fallos
- 5.4 Coherencia caché
-
6 SISTEMAS TOLERANTES A FALLOS
- 6.1 Conceptos generales sobre tolerancia a fallos
- 6.2 Causas de los fallos
- 6.3 Caracterización de los fallos
- 6.4 Filosofías de diseño para combatir los fallos
- 6.5 Redundancia
- 6.5.1 Redundancia hardware
- 6.5.2 Redundancia software
- 6.5.3 Redundancia informacional
- 6.5.4 Redundancia en el tiempo
- 6.6 Métodos de evaluación de sistemas tolerantes a fallos
Arriba
PRÁCTICAS
A lo largo del curso se desarrollarán diferentes trabajos. Estos
trabajos consistirán en la programación de algunos algoritmos, se
insistirá preferentemente en la programación de algoritmos paralelos
mediante paso de mensajes.
Arriba
EVALUACIONES PREVISTAS
Examen ordinario en junio y extraordinario en septiembre. Ambos exámenes
serán escritos.
Para superar la asignatura será necesario superar tanto el examen
teórico como las prácticas.
Arriba
BIBLIOGRAFÍA
- Ortega, J et. al.: Arquitectura de Computadores, Thomson, 2005
-
Hwang, K.: Advanced Computer Architecture: Parallelism, Scalability,
Programmability, McGraw-Hill, 1993.
- Stone, H.S.: High-performance Computer Architecture, 3a. edición,
Addison-Wesley, 1993.
-
Stallings, W.,Computer Organization and Arquitecture: Designing for
Performance, 7a. edición, Prentice-Hall, 2005.
Existe traducción al castellano: Organización y arquitectura de computadores,
7a. edición, Prentice-Hall, 2006.
- Hwang, K.-Briggs, F.A.: Computer Architecture and Parallel Processing,
McGraw-Hill, 1984.
Existe traducción en castellano: Arquitectura de computadoras y procesamiento
paralelo, McGraw-Hill, 1988.
-
Abd-El_Barr, M.: Design and analysis of reliable and fault-tolerant computer systems
Imperial College Press, 2007
- Johnson, B.W.: Design and Analysis of Fault Tolerant Digital Systems,
Addison Wesley, 1989.