Contenido de XSL
Procesadores de Alto Rendimiento
- Centro
- Facultad de Informática
- Titulación
- Grado en Ingeniería Informática
- Curso académico
- 2019/20
- Curso
- X
- Nº Créditos
- 6
- Idiomas
- Castellano
- Euskera
DocenciaAlternar navegación
Tipo de docencia | Horas de docencia presencial | Horas de actividad no presencial del alumno/a |
---|---|---|
Magistral | 40 | 40 |
P. Laboratorio | 20 | 50 |
Guía docenteAlternar navegación
ObjetivosAlternar navegación
Las competencias específicas del grado que quedan cubiertas son : IC1, IC2, IC3, IC5.
A continuación detallamos las competencias teóricas y prácticas que se presumen adquirirán los alumnos:
Entender la reordenación dinámica de la ejecución de las instrucciones.
Entender el paralelismo a nivel de instrucción de los procesadores superescalares.
Analizar y entender las optimizaciones que hacen los compiladores.
Capacidad de programar con OpenMp.
Entender la parte vectorial de los procesadores: intra-register vectorization.
Capacidad de usar las placas gráficas para la ejecución paralela de aplicaciones de propósito general.
Analizar los pocesadores para sistemas de tiempo real y empotrados.
TemarioAlternar navegación
Tema 1
Procesadores Multiciclo.
Después de repasar los procesadores segmentados lineales de la familia ARM, se analizan los procesadores que reordenan dinámicamente la ejecución de las instrucciones: procesadores multiciclo Scoreboard y Tomasulo. Nos centraremos en la descripción de las unidades funcionales, la Memoria y las estaciones de reserva. Se resaltan las diferencias entre la reordenación dinámica y la estática realizada por los compiladores.
Tema 2
Procesadores Superescalares.
Se analizan los procesadores superescalares como el medio utilizado para aumentar el paralelismo implícito de las instrucciones. Se estudia la influencia en la eficiencia de las optimizaciones de los compiladores, atendiendo fundamentalmente a las optimizaciones específicas para procesadores superescalares y su jerarquía de memoria. Se introduce la ejecución especulativa.
Tema 3
Procesadores multithreading y multicores.
Se presentan los procesadores que permiten avanzar en la ejecución paralela de los programas, en este caso de bajo coste: paralelismo a nivel de thread dentro de un procesador, y usando varios procesadores o cores en el mismo chip. Se estudian los mecanismos para mantener la coherencia de las memorias cache basados en protocolos snoopy. Se trabaja en el uso de OpenMp y de algunas librerías como Intel-Math.
Tema 4
Procesadores orientados a tratamiento vectorial y gráfico.
Se presentan los fundamentos de las máquinas vectoriales, y se profundiza en el uso de intra-register vectorization (tipo SSE, MMX). Así mismo, se trabaja en el uso de las placas gráficas, GPU, para aplicaciones de propósito general, GPGPU utilizando CUDA. También se trabaja con la librería Intel-IPP orientada a tratamiento gráfico.
MetodologíaAlternar navegación
Durante el desarrollo de clases y laboratorios se llevarán a cabo, de forma sistemática, actividades de trabajo en grupo, discusión y presentación de resultados de ejercicios, con el fin de impulsar la participación directa en el desarrollo del curso y de fomentar la motivación del alumnado. Se tendrá en cuenta el uso de metodologías activas.
Sistemas de evaluaciónAlternar navegación
Hay dos tipos de evaluación:
Evaluación continua:
a) se evaluan dos grupos de problemas que se desarrollan a modo de programas en el laboratorio (cada grupo con un peso final en la nota del 10%). Los programas los desarrollan individualmene y/o en grupo. Las herramientas que utilizarán son: gcc, OpenMp, SSE y CUDA. Para optar a ello se exige un 75% de asistencia.
b) se da la posibilidad de realizar dos examenes escritos (a mitad de curso y al final), con un peso del 40% cada uno, también sometido a la exigencia de asistencia. Los que decidan un único examen no tendrán opción a la nota del laboratorio.
Evaluación global:
Una prueba de evaluación global escrita, que incluye el 100% de la asignatura.
BibliografíaAlternar navegación
Bibliografía básica
En los siguientes dos libros aparecen la mayoría de los apartados referenciados en el temario.
ESTRUCTURA Y DISEÑO DE COMPUTADORES. LA INTERFAZ SOFTWARE/HARDWARE.
D.A. Patterson, J.L. Hennessy. (2. ed). Editorial Reverte. 2011.
COMPUTER ARQUITECTURE. A QUANTITATIVE APPROACH.
J.L. Hennessy, D.A. Patterson (4. ed.) Morgan Kaufmann, 2007
Bibliografía de profundización
Las siguientes reseñas son complementarias:
ORGANIZACION DE COMPUTADORES.
V.C. Hamacher, Z.G. Vranesic y S.G. Zaky. Ed. McGraw-Hill, 2003 (5. edición).
ORGANIZACION Y ARQUITECTURA DE COMPUTADORES.
W. Stallings. Ed. Prentice-Hall, 2006 (7. edición)
Tribunal de convocatorias 5ª, 6ª y excepcionalAlternar navegación
- ARREGUI URIARTE, MARIA OLATZ
- ARRUABARRENA FRUTOS, AGUSTIN
- RODRIGUEZ LAFUENTE, CLEMENTE
GruposAlternar navegación
01 Teórico (Castellano - Mañana)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
1-15 | 12:30-14:00 | 09:00-10:30 |
Profesorado
01 P. Laboratorio-1 (Castellano - Mañana)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
1-15 | 10:45-12:15 |
Profesorado
31 Teórico (Euskera - Mañana)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
1-15 | 12:30-14:00 | 09:00-10:30 |
Profesorado
31 P. Laboratorio-1 (Euskera - Mañana)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
1-15 | 10:45-12:15 |