Tipos
Obligatoria de especialidad (Ingeniería de Computadores)
Requisitos
- Prerrequisito:
AC2
- Prerrequisito:
PAR
El principal objetivo de esta asignatura es que el alumno adquiera los fundamentos de consistencia de memoria y coherencia de cache en sistemas multiprocesador. El contenido de la asignatura cubre el espectro de multiprocesadores de pequeña escala hasta mutliprocesadores escalables. También se centra en la disponibilidad y utilización de instrucciones atómicas de lectura-modificación-escritura. En concreto los temas desarrollados capacitan para la evaluación del rendimiento de un sistema multiprocesador al ejecutar aplicaciones paralelas. Además capacitan para la utilización de lenguajes de descripción hardware y su utilización para la especificación de la jerarquía de memoria en un multiprocesador.
Profesorado
Responsable
-
Jose M. Llaberia Griñó (
)
Competencias
Competencias Técnicas
Competencias técnicas comunes
-
CT6 - Demostrar conocimiento y comprensión del funcionamiento interno de un computador y del funcionamiento de las comunicaciones entre ordenadores.
-
CT6.2
- Demostrar conocimiento, comprensión y capacidad de evaluar la estructura y la arquitectura de los computadores, así como los componentes básicos que los conforman.
-
CT7 - Evaluar y seleccionar plataformas de producción hardware y software para la ejecución de aplicaciones y de servicios informáticos.
-
CT7.1
- Demostrar conocimiento de las métricas de calidad y saber utilizarlas.
Competencias Transversales
Aprendizaje autónomo
-
G7 [Avaluable] - Detectar carencias en el propio conocimiento y superarlas mediante la reflexión crítica y la elección de la mejor actuación para ampliar este conocimiento. Capacidad para el aprendizaje de nuevos métodos y tecnologías y versatilidad para adaptarse a nueves situaciones.
-
G7.3
- Aprendizaje autónomo: Capacidad de planificación y organización del trabajo personal. Aplicar los conocimientos adquiridos a la realización de una tarea en función de la pertenencia y la importancia, decidiendo la manera de llevarla a cabo y el tiempo que hay que dedicarle y seleccionando las fuentes de información más adecuadas. Identificar la importancia de establecer y mantener contactos con los compañeros de estudios, con el profesorado y con profesionales (networking). Identificar fórums de información sobre ingeniería TIC, sus avances y su impacto en la sociedad (IEEE, asociaciones, etc.).
Competencias Técnicas de cada especialidad
Especialidad ingeniería de computadores
-
CEC2 - Analizar y evaluar arquitecturas de computadores incluyendo plataformas paralelas y distribuidas, y desarrollar y optimizar software para dichas plataformas.
-
CEC2.1
- Analizar, evaluar, seleccionar y configurar plataformas hardware para el desarrollo y la ejecución de aplicaciones y servicios informáticos.
-
CEC3 - Desarrollar y analizar hardware y software para sistemas empotrados y/o de muy bajo consumo.
-
CEC3.2
- Desarrollar procesadores específicos y sistemas empotrados; desarrollar y optimizar el software de estos sistemas.
Objetivos
-
Capacitación para comprender los conceptos básicos en multiprocesadores: terminología, organización, elementos que componen un multiprocesador, consistencia y coherencia de memoria.
Competencias relacionadas:
CEC2.1,
CT6.2,
G7.3,
-
Capacitación para comprender los conceptos básicos de comunicación y sincronización en un multiprocesador.
Competencias relacionadas:
CEC2.1,
CT6.2,
G7.3,
-
Capacitación para comprender las restricciones que impone la tecnología, trabas al funcionamiento ideal al implementar un multiprocesador y soluciones adoptadas.
Competencias relacionadas:
CEC3.2,
CT6.2,
-
Capacitación para analizar y evaluar de forma crítica un multiprocesador y sus elementos.
Competencias relacionadas:
CEC2.1,
CT7.1,
CT6.2,
-
Capacitación para la utilización de un lenguaje de descripción hardware y su aplicación en la especificación de elementos de un multiprocesador
Competencias relacionadas:
CEC3.2,
CT7.1,
CT6.2,
Contenidos
-
Motivación
Trabas existentes para explotar el paralelismo a nivel de instrucción. Incremento de la productividad de un procesador utilizando la técnica multihilo. Aprovechamiento del número de transistores disponibles en un chip mediante la técnica de replicación de procesadores.
-
Consistencia y coherencia de memoria
Conceptos de consistencia de memoria y coherencia de cache. Modelo de memoria especificado en el lenguaje máquina. Necesidad de mantener la coherencia entre las copias de un dato.
-
Multiprocesador básico
Elementos de un sistema multiprocesador. Cache privadas. Red de interconexión: Soporte de un modelo de consistencia. Coherencia de cache.
-
Comunicación y sincronización
Soporte del lenguaje máquina a la comunicación y sincronización. Mecanismos básicos de sincronización.
-
Multiprocesador de pequeña escala
Incremento del rendimiento. Reducción del ancho de banda necesario. Protocolos de coherencia de cache.Multiprocesador en un chip.
-
Multiprocesador escalable
Implicaciones del número de procesadores en la arquitectura de un multiprocesador. Interconexión de varios chips multiprocesador.
Actividades
Actividad
Acto evaluativo
Prueba
Evaluación de los objetivos correspondientes a los tres primeros temas
Objetivos:
1
4
5
Semana:
8
Tipo:
examen de teoría
Consolidación
Examen final. Evaluación de todos los objetivos de la asignatura.
Objetivos:
1
3
4
5
2
Semana:
15 (Fuera de horario lectivo)
Tipo:
examen de teoría
Motivación
Estudiar los conceptos teóricos del tema y resolver los ejercicios y problemas propuestos.
Objetivos:
1
4
5
Contenidos:
Consistencia y coherencia de memoria
Estudiar los conceptos teóricos del tema y resolver los ejercicios y problemas propuestos.
Objetivos:
1
5
Contenidos:
Multiprocesador básico
Estudiar los conceptos teóricos del tema y resolver los ejercicios y problemas propuestos.
Objetivos:
1
4
5
Contenidos:
Comunicación y sincronización
Estudiar los conceptos teóricos del tema y resolver los ejercicios y problemas propuestos.
Objetivos:
5
2
Contenidos:
Multiprocesador de pequeña escala
Estudiar los conceptos teóricos del tema y resolver los ejercicios y problemas propuestos.
Objetivos:
3
5
Contenidos:
Multiprocesador escalable
Estudiar los conceptos teóricos del tema y resolver los ejercicios y problemas propuestos.
Objetivos:
3
4
Contenidos:
Consolidación
Consolidación de los conceptos desarrollados durante el curso.
Objetivos:
1
3
4
5
2
Contenidos:
Metodología docente
Clases de teoria en las cuales se desarrollan los conceptos y hay participación de los alumnos.
Clases de problemas donde se aplican los conceptos desarrollados en las clases de teoría y el agente activo es el alumno.
Clases de laboratorio donde se aplican los conceptos desarrollados en clase de teoría en un ejemplo concreto de multiprocesador. El agente activo es el alumno y la colaboración entre los elementos que componen el grupo es el medio para incrementar o asentar el conocimiento.
El curso se desarrolla de forma contructiva. Esto es, se parte de los conceptos adquiridos en asignaturas precedentes y en cada tema de la asignatura se incrementa el conocimiento y la capacidad de comprender, analizar y razonar sobre aspectos de un multiprocesador. Esta capacitación es además cuantitativa.
Método de evaluación
Prueba (P): Prueba escrita donde se evalúan los objetivos correspondientes a los tres primeros temas.
Examen final (F): Prueba escrita donde se evalúan todos los objetivos de la asignatura.
Laboratorio (L): Se evalúa a partir de los informes entregados en cada una de las sesiones prácticas y, en su caso, de una entrevista personal.
La nota final (NF) se calcula mediante la siguiente expresión:
NF = max (0.8 x F, (0.65 x F + 0.15 x P) ) + 0.2 x L
El nivel de consecución de la competencia genérica se evalúa indirectamente a partir de las notas de la prueba y del examen final.
La nota correspondiente es:
A si 8.5 =< NF; B si 7 =< NF < 8.5; C si 5 =< NF < 7; D si NF < 5
Capacidades previas
Las enumeradas en las asignaturas IC, EC, PE, AC, PAR, AC2