COMPUTACIÓN
DISTRIBUIDA Y
COMPUTACIÓN
CIENTÍFICA
Máster Universitario en Ingeniería Informática
Universidad de Alcalá
2
GUÍA DOCENTE
Nombre de la asignatura:
Computación distribuida y computación
científica
Código:
202356
Titulación en la que se
imparte:
Máster Universitario en Ingeniería Informática
Departamento y Área de
Conocimiento:
Automática. Arquitectura y Tecnología de
Computadores
Carácter:
Obligatoria
Créditos ECTS:
6
Curso y cuatrimestre:
1º, C1
Profesorado:
Horario de Tutoría:
Idioma en el que se imparte:
Español
1. PRESENTACIÓN
El objetivo principal de la asignatura se resume en el estudio de la
computación
científica y las herramientas que permiten aplicarla en
sistemas de computación
distribuida y de altas prestaciones, buscando optimizar sus (típicamente costosos)
recursos.
Después de una breve introducción a las plataformas y a los paradigmas básicos de
programación, la asignatura pasa al amplio bloque de introducción al cálculo
numérico. Este bloque busca presentar el tema desde su base, recorriendo temas
como la resolución de ecuaciones algebraicas lineales, la diferenciación e integración
numéricas, la resolución numérica de ecuaciones diferenciales ordinarias y en
derivadas parciales, etc.
El bloque final se dedica a la explotación de los conocimientos adquiridos por medio
del desarrollo de aplicaciones procedentes del mundo real. A la vez, se presentarán
las principales herramientas que facilitan exportar tales aplicaciones al ámbito del
procesamiento distribuido, al tiempo que permiten estimar y optimizar el rendimiento.
Prerrequisitos y Recomendaciones (si es pertinente)
2. COMPETENCIAS
Competencias genéricas
1. CG01: Capacidad para proyectar, calcular y diseñar productos, procesos e
instalaciones en todos los ámbitos de la ingeniería informática.
3
2. CG04: Capacidad para el modelado matemático, cálculo y simulación en
centros tecnológicos y de ingeniería de empresa, particularmente en tareas de
investigación, desarrollo e innovación en todos los ámbitos relacionados con la
Ingeniería en Informática.
3. CG06: Capacidad para la dirección general, dirección técnica y dirección de
proyectos de investigación, desarrollo e innovación, en empresas y centros
tecnológicos, en el ámbito de la Ingeniería Informática.
4. CG07: Capacidad para la puesta en marcha, dirección y gestión de procesos
de fabricación de equipos informáticos, con garantía de la seguridad para las
personas y bienes, la calidad final de los productos y su homologación.
5. CG08: Capacidad para la aplicación de los conocimientos adquiridos y de
resolver problemas en entornos nuevos o poco conocidos dentro de contextos
más amplios y multidisciplinares, siendo capaces de integrar estos
conocimientos.
Competencias específicas
1. CETI6: Capacidad para diseñar y evaluar sistemas operativos y servidores, y
aplicaciones y sistemas basados en computación distribuida.
2. CETI7: Capacidad para comprender y poder aplicar conocimientos avanzados
de computación de altas prestaciones y métodos numéricos o computacionales
a problemas de ingeniería.
Resultados de aprendizaje
Al término de esta asignatura los estudiantes serán capaces de:
RA1: Conocer la estructura de las principales plataformas apropiadas para la
computación distribuida y de altas prestaciones.
RA2: Conocer las diferentes técnicas y fundamentos matemáticos de los métodos
numéricos para la computación científica.
RA3: Conocer los principales modelos de programación orientados a la explotación
del rendimiento en plataformas multiprocesador y multicomputador.
RA4: Conocer las principales aplicaciones para las que la computación distribuida y
científica es imprescindible.
RA5: Conocer las principales herramientas de desarrollo y optimización en el entorno
de la computación científica distribuida.
4
3. CONTENIDOS
Bloques de contenido
(se pueden especificar los
temas si se considera necesario)
Total de clases,
créditos u horas
Revisión de plataformas 4 h
Introducción al cálculo numérico 24 h
Aplicaciones sobre plataformas distribuidas 24 h
4. METODOLOGÍAS DE
ENSEÑANZA-APRENDIZAJE.-ACTIVIDADES FORMATIVAS
4.1. Distribución de créditos (especificar en horas)
Número de horas presenciales:
60
Número de horas del trabajo
propio del estudiante:
90
Total horas
150
4.2. Estrategias metodológicas, materiales y recursos didácticos
Clases presenciales
Clases teóricas.
Resolución de casos prácticos.
Pruebas parciales.
Presentación de informes y trabajos.Trabajo autónomo
Estudio y trabajo individual.
Realización de ejercicios.
Participación en actividades.Tutorías
Las tutorías podrán ser en grupos o individuales. Los estudiantes plantearán al profesor dudas concretas relacionadas con la asignatura.
Los materiales para la preparación de las sesiones presenciales y del trabajo autónomo, así como las actividades a realizar, estarán disponibles en la página Web de la asignatura. La dirección concreta de dicha página y toda la información sobre el desarrollo de la asignatura, normativa, criterios de evaluación, política de plagio, etc., se detallarán en la clase de presentación.
5
5. EVALUACIÓN:
Procedimientos, criterios de evaluación y de
calificación
15.1. Procedimientos
El sistema de calificación se ajustará al RD 1125/2003 por el cual se regula el sistema de créditos ECTS. Los estudiantes se acogerán a los procedimientos de evaluación según lo articulado en el título 2 (art. 9 y 10) de la Normativa de Evaluación de los Aprendizajes de la Universidad de Alcalá.
La evaluación continua se realizará mediante Pruebas de Evaluación Continua (PEC) distribuidas a lo largo del cuatrimestre, cuya calificación se utilizará de forma ponderada para obtener la calificación final de la evaluación continua. La evaluación continua servirá en cualquier caso como evaluación formativa durante el proceso de enseñanza-aprendizaje. La evaluación de la adquisición de competencias tendrá en cuenta, entre otros, los siguientes criterios de evaluación:
Dominio de los contenidos y conceptos básicos. Resolución de problemas y prácticas propuestas. Aplicación de los contenidos.
5.2. Criterios de evaluación
Para determinar el grado de adquisición de las competencias por parte del alumno, se tendrán en cuenta las habilidades, actitudes y valores demostrados por el estudiante de acuerdo con los siguientes criterios de evaluación:
CE1: El alumno demuestra capacidad de resolver problemas prácticos relacionados con el diseño de sistemas distribuidos.
CE2: El alumno demuestra capacidad de resolver problemas prácticos relacionados con el diseño y la implementación de algoritmos orientados al procesamiento distribuido. CE3: El alumno demuestra conocimiento de los fundamentos matemáticos de la
computación científica.
CE4: El alumno demuestra cuidado formal, claridad y rigor en la exposición de ideas y razonamientos.
CE5. El alumno muestra capacidad de trabajo en equipo.
1 Es importante señalar los procedimientos de evaluación: por ejemplo evaluación continua, final, autoevaluación, co-evaluación. Instrumentos y evidencias: trabajos, actividades. Criterios o indicadores que se van a valorar en relación a las competencias: dominio de conocimientos conceptuales, aplicación, transferencia conocimientos. Para el sistema de calificación hay que recordar la Normativa del Consejo de Gobierno del 16 de Julio de 2009: la calificación de la evaluación continua representará, al menos, el 60%. Se puede elevar este % en la guía.
6
5.3. Instrumentos de calificación
Sistema de evaluación continua
La evaluación de los alumnos se realizará de forma continuada a lo largo del curso. Su rendimiento será evaluado por su trabajo, conocimientos y destrezas adquiridas. Los instrumentos de evaluación continua a emplear serán los siguientes:
PL: Realización de las prácticas de laboratorio y presentación de una memoria donde se describan los procesos realizados y los resultados obtenidos. Esta prueba supondrá un 40% de la calificación global.
PEC: Un máximo de tres pruebas escritas repartidas a lo largo del curso en las que se propondrán cuestiones teóricas y problemas para ser resueltas por el alumno. El peso de la calificación de estas pruebas supondrá un 40% de la nota final.
TA: Realización de un trabajo sobre un tema propuesto por el profesor, o por el alumno con la aprobación del profesor. El peso sobre la nota total de esta prueba será de un 20%.
Sistema de evaluación final
A aquellos alumnos a los que se les haya concedido la evaluación mediante examen final, se les evaluará mediante un único examen global acerca de todos los contenidos de la asignatura. La evaluación final considerará los siguientes instrumentos de evaluación:
PEF: La prueba de evaluación final constará de un único ejercicio que constituirá el 100% de la nota de la asignatura. En esta prueba se propondrán al alumno un conjunto de preguntas teóricas (tests y cuestiones para desarrollar) con un peso de un 40%; la resolución de problemas relacionados con la materia de la asignatura con un peso de un 40%; y la resolución de temas relacionados con el laboratorio, con un peso de un 20%.
Convocatoria extraordinaria
Si el alumno no supera la asignatura en la convocatoria ordinaria, en evaluación continua o final, tendrá la posibilidad de presentarse a un examen extraordinario con los mismos instrumentos de evaluación descritos para evaluación final.
5.4. Criterios de calificación
Convocatoria Ordinaria, Evaluación continua
Resultados de
aprendizaje Criterios de evaluación
Instrumentos de evaluación
Peso en la calificación
RA3, RA4, RA5 CE1, CE2, CE4, CE5 PL 40%
RA1–RA4 CE1–CE4 PEC 40%
RA1, RA4, RA5 CE4–CE5 TA 20%
Convocatoria Ordinaria, Evaluación final y Convocatoria Extraordinaria
Resultados de
aprendizaje Criterios de evaluación
Instrumentos de evaluación
Peso en la calificación
7
6. BIBLIOGRAFÍA
Bibliografía Básica
Computer Architecture: A Quantitative Approach, Fifth edition, JOHN L.HENNESSY, DAVID
A.PATTERSON, Morgan Kaufmann, 2012.
Métodos numéricos para ingenieros, 5ª edición, STEVEN C. CHAPRA, RAYMOND P. CANALE, McGraw-Hill Interamericana, Mexico, 2007.
Métodos numéricos, 4ª edición, JUAN ANTONIO INFANTE DEL RÍO, JOSÉ MARÍA REY
CABEZAS, Ediciones Pirámide, Madrid, 2015.
Cálculo científico con MATLAB y Octave, ALFIO QUARTERONI,FAUSTO SALERI, Springer, Milán, 2006.
Scientific Computing: An Introductory Survey, 2nd edition, MICHAEL T.HEATH, McGraw-Hill, New York, 2002.
Programming with POSIX Threads, DAVID R.BUTENHOF, Addison-Wesley, Professional Computing Series, 1997.
Parallel Programming with MPI, PETER S.PACHECO, Morgan Kaufmann, 1997.
Bibliografía Complementaria
Numerical Mathematics, Second Edition, Alfio Quarteroni, Riccardo Sacco, Fausto Saleri, Springer, Berlin, Heidelberg, 2007.
Introduction to High-Performance Scientific Computing, VICTOR EIJKHOUT, libro gratuito descargable desde:
https://bitbucket.org/VictorEijkhout/hpc-book-and-course/downloads/EijkhoutIntroToHPC.pdf
Introduction to High Performance Computing for Scientists and Engineers, GEORG
HAGER, GERHARD WELLEIN, Chapman & Hall/CRC Press, 2011.
Designing and Building Parallel Programs, IAN FOSTER, disponible en http://www.mcs.anl.gov/~itf/dbpp
Introduction to Parallel Computing, second edition, A.GRAMA,A.GUPTA ET AL., Addison-Wesley, 2003.
Repositorio Netlib (bibliotecas LAPACK, ScaLAPACK) accesibles desde http://www.netlib.org/.
Los 500 super-computadores más rápidos del mundo, accesibles desde la página web http://www.top500.org.