Profesorado
Responsable
- Adrià Armejach Sanosa ( adria.armejach@upc.edu )
Otros
- Noelia Oliete Escuin ( noelia.oliete@upc.edu )
Horas semanales
Teoría
2
Problemas
1
Laboratorio
1
Aprendizaje dirigido
0
Aprendizaje autónomo
6
Competencias
Competencias técnicas comunes
- 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.1 - Demostrar conocimiento de las métricas de calidad y saber utilizarlas.
Aprendizaje autónomo
- 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.).
Especialidad ingeniería de computadores
- CEC2.1 - Analizar, evaluar, seleccionar y configurar plataformas hardware para el desarrollo y la ejecución de aplicaciones y servicios informáticos.
- 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
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
Bibliografía
Básico
-
Parallel computer architecture: a hardware/software approach
- Culler, D.E.; Singh, J.P.; Gupta, A,
Morgan Kaufmann Publishers,
1999.
ISBN: 1-55860-343-3
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991001862689706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
LogicWorks 5: interactive circuit design software
- Capilano Computing Systems,
Prentice Hall,
2004.
ISBN: 9780131456587
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991002692839706711&context=L&vid=34CSUC_UPC:VU1&lang=ca