Titulación | Tipo | Curso | Semestre |
---|---|---|---|
2502441 Ingeniería Informática | OB | 3 | 1 |
2502441 Ingeniería Informática | OT | 4 | 1 |
Es muy, muy recomendable haber cursado y aprobado las asignaturas de Fundamentos de Informática, Fundamentos de Computadores, Estructura de Computadores, Metodología de la Programación y Arquitectura de Computadores
El objetivo fundamental de la asignatura es que los alumnos adquieran las capacidades de análisis, utilización y evaluación de arquitecturas avanzadas de computadores, para el desarrollo de aplicaciones y servicios informáticos.
Los conceptos básicos que se describirán en las sesiones teóricas son: el procesador multi-núcleo, el sistema multi-procesador de memoria compartida, los aceleradores de cómputo, la evaluación de rendimiento y prestaciones, y los modelos y lenguajes de programación de estos sistemas paralelos. Los objetivos más específicos son los siguientes:
1. Entender las claves para obtener buen rendimiento de computadores multi-núcleo y multi-procesador, y de aceleradores de cómputo (GPUs)
2. Identificar las oportunidades de paralelización en un algoritmo o aplicación, a diferentes niveles (instrucciones, iteraciones de un bucle, llamadas a funciones...), y expresarlo formalmente
3. Diseñar las estructuras de datos de una aplicación y los algoritmos que acceden a estos datos para favorecer el buen rendimiento de la jerarquía de memoria
4. Analizar, diseñar e implantar algoritmos paralelos con patrones abstractos de cómputo (reducción, transformación...) bajo paradigmas de programación basados en variables compartidas y sincronización; y con lenguajes paralelos actuales, como OpenMP y OpenACC.
5. Verificar la funcionalidad y evaluar el rendimiento de aplicaciones paralelas, identificando los cuellos de botella respecto al rendimiento
6. A partir del análisis de rendimiento, seleccionar el computador adecuado a una aplicación y/o realizar optimizaciones del código que mejoren aún más su rendimiento
1. Paralelismo de Instrucciones
2. Paralelismo de Datos
3. Arquitectura de computadores paralelos
4. Algoritmos Paralelos
5. Evaluación del Rendimiento de Aplicaciones Paralelas
Clases de Teoría: se expondrán los conocimientos propios de la asignatura. Se describirán los conceptos básicos y se ilustrarán con ejemplos prácticos. Se resaltarán los problemas de aprendizaje más importantes y se mostrará cómo completar y profundizar en los contenidos. Se discutirán casos prácticos y el profesor detectará los problemas de comprensión y razonamiento más comunes y los resolverá para todos los estudiantes.
Clases de Problemas en Laboratorio: se harán actividades cooperativas de resolución de problemas y de casos prácticos sencillos, que servirán de apoyo a la teoría. Tras un trabajo individual previo, los alumnos y alumnas harán una puesta en común en grupo y resolverán sus dudas. El profesor detectará los problemas de comprensión y razonamiento más comunes y los resolverá por grupos o para todas las y los estudiantes. Se promueve la capacidad de análisis y síntesis, el razonamiento crítico y la capacidad de resolución de problemas. Durante la sesión los alumnos y alumnas deberán informar al profesor sobre sus avances y los problemas que se puedan encontrar, y entregarán un documento final con los resultados y reflexiones sobre sus actividades.
Caso práctico de Ingeniería de Rendimiento: durante todo el curso, las alumnas y alumnos deberán diseñar, planificar, realizar, presentar y defender de forma oral un trabajo práctico, indicando los objetivos, el desarrollo, los resultados obtenidos con gráficas comprensibles, las incidencias más notables y, finalmente, las conclusiones más relevantes. Se espera una actitud proactiva y dinámica, la búsqueda autónoma de los conocimientos que sean necesarios, y ambición con los objetivos del trabajo.
Competencias Transversales:
Nota: se reservarán 15 minutos de una clase dentro del calendario establecido por el centro o por la titulación para que el alumnado rellene las encuestas de evaluación de la actuación del profesorado y de evaluación de la asignatura o módulo.
Título | Horas | ECTS | Resultados de aprendizaje |
---|---|---|---|
Tipo: Dirigidas | |||
Problemas en el Laboratorio | 24 | 0,96 | 2, 1, 9, 7, 8, 4, 5, 6, 10, 11 |
Teoría | 24 | 0,96 | 2, 1, 8, 4, 6, 12 |
Tutorías Aula | 6 | 0,24 | 2, 8, 4, 12 |
Tipo: Supervisadas | |||
Preparación del trabajo a realizar en el laboratorio | 15 | 0,6 | 9, 7, 5, 10 |
Preparación y Exposición del Trabajo Práctico | 5 | 0,2 | 3 |
Tipo: Autónomas | |||
Estudio autónomo | 24 | 0,96 | 2, 8, 4, 6, 12 |
Preparación de sesiones prácticas | 30 | 1,2 | 2, 1, 5 |
Resolución de Problemas | 20 | 0,8 | 1, 7, 8, 6, 11 |
Las fechas de evaluación continua y entrega de trabajos se publicarán en la plataforma Moodle de la UAB (Campus Virtual) y pueden estar sujetas a cambios de programación por motivos de adaptación a posibles incidencias. Siempre se informará en la plataforma Moodle sobre estos cambios ya que se entiende que es la plataforma habitual de intercambio de información entre profesor y estudiantes.
Actividades de evaluación
Actividad A: resolución de problemas prácticos en el laboratorio; se realiza en grupo; supone un 20% de la nota final; es necesario obtener una nota mínima de 4 puntos sobre 10; y no se puede recuperar.
Actividad B: entrega de un informe de las actividades A; se realiza individualmente; supone un 15% de la nota final; no es necesario obtener una nota mínima; y no se puede recuperar.
Actividad C: propuesta y resolución de un caso práctico de Ingeniería de Rendimiento; se realiza en grupo; supone un 30% de la nota final; es necesario obtener una nota mínima de 5 puntos sobre 10; y se puede recuperar.
Actividad D: defensa oral de la actividad C; se realiza individualmente; supone un 5% de la nota final; no es necesario obtener una nota mínima; y se puede recuperar.
Actividad E: entrega de un informe de la actividad C; se realiza en grupo; supone un 5% de la nota final; no es necesario obtener una nota mínima; y no se puede recuperar.
Actividad F: asistencia y participación activa en clase; se realiza individualmente; supone un 5% de la nota final; no es necesario obtener una nota mínima; y no se puede recuperar.
Actividad G: examen escrito de teoría y problemas; se realiza individualmente y sin apuntes; supone un 20% de la nota final; es necesario obtener una nota mínima de 5 puntos sobre 10; y se puede recuperar.
A parte de las activitades de evaluación descritas anteriormente, a lo largo del curso se podrán proponer otras actividades de carácter voluntario que podrán contribuir a la nota final de la asignatura.
Programa de Actividades de Evaluación
Las actividades A, B, C y F se realizan durante todo el curso. Las actividades D y E se realizan al final del curso. La actividad G se realiza en las fechas especificadas por la coordinación.
Proceso de Recuperación
El estudiante se puede presentar a la recuperación siempre que se haya presentado a las actividades B, D y G. De acuerdo con la coordinación del Grado y la dirección de la Escuela de Ingeniería solamente se podrán recuperar las actividades C, D y G, que representan el 55% de la nota final.
Procedimiento de Revisión
Todas las actividades de evaluación se podrán revisar en un lugar, fecha y hora que se publicará con anterioridad. Se podrán hacer reclamaciones sobre la nota de la actividad, que serán evaluadas por el profesorado responsable de la asignatura. Si el estudiante no se presenta a esta revisión, no se revisará posteriormente esta actividad.
Calificaciones
Se otorgará una calificación de matrícula de honor (MH) a los estudiantes que alcancen una nota final igual o superior a 9,00, hasta un total del 5% de los estudiantes matriculados, priorizando la parte de la nota que corresponde a evaluaciones individuales (actividades B, D, F y G).
Si el alumno o alumna no alcanza la nota mínima en alguna de las actividades de evaluación, la calificación numérica final será el mínimo entre 4,5 puntos y la suma ponderada de las notas de todas las actividades.
Un estudiante se considerará no evaluable (NA) si no se hapresentado a ninguna de las actividades B, D y G.
Irregularidades por parte de los estudiantes, copia y plagio
Sin prejuicio de otras medidas disciplinarias que se estimen oportunas, secalificarán con un cero la irregularidades cometidas por un estudiante que puedan conducir a una variación de la calificación de un acto de evaluación. Por tanto, la copia, el plagio, el engaño, dejar copiar, etc. en cualquiera de las actividades de evaluación implicará suspenderla con un cero. Las actividades de evaluación calificadas de esta forma y por este procedimiento no serán recuperables. Si es necesario superar cualquiera de estas actividades de evaluación para aprobar la asignatura, entonces esta asignatura quedará suspendida directamente, sin oportunidad de recuperarla en el mismo curso. En el caso de no superar la asignatura debido a que el estudiante ha cometido irregularidades en un acto de evaluación, la nota numérica del expediente será el valor menor entre 3.0 y la media ponderada de las notas (y por tanto no será posible el aprobado por compensación).
Evaluación de los estudiantes repetidores
No hay ningún tratamiento especial para los estudiantes repetidores.
Título | Peso | Horas | ECTS | Resultados de aprendizaje |
---|---|---|---|---|
Asistencia y participación activa en clase | 5% | 0 | 0 | 3, 10 |
Defensa oral del trabajo de Ingeniería de Rendimiento | 5% | 0,1 | 0 | 3 |
Entrega de un informe de la resolución de problemas prácticos en el laboratorio | 15% | 0 | 0 | 3 |
Entrega de un informe del caso práctico de Ingeniería de Rendimiento | 5% | 0 | 0 | 3 |
Examen escrito individual de teoría y problemas | 20% | 1,9 | 0,08 | 2, 1, 7, 3, 6, 11, 12 |
Propuesta y resolución de un caso práctico de Ingeniería de Rendimiento | 30% | 0 | 0 | 2, 1, 9, 7, 8, 4, 5, 6, 10, 11, 12 |
Resolución de problemas prácticos en el laboratorio | 20% | 0 | 0 | 1, 9, 7, 8, 4, 5, 6, 10, 11, 12 |
Computer Architecture: A Quantitative Approach. 6th Edition (https://cataleg.uab.cat/iii/encore/record/C__Rb2034006)
John Hennessy, David Patterson, Morgan Kaufmann (Elsevier) 2019 (Cap. 4 y 5)
Structured Parallel Programming: Patterns for efficient computation
M. McCool, J. Reinders, A. Robison, Elsevier, 2012
Parallel Programming for Multicore and Cluster Systems
T. Rauber, G. Rünger, Springer (Elsevier), 2010
Programming Massively Parallel Processors: A Hands-on Approach
D. Kirk, & W.M. Hwu, Morgan Kaufmann (Elsevier), 2010
Ninguno