Download Introducción a la programación en paralelo
Document related concepts
Transcript
Títulación: Máster en Física de la Materia Condensada y Nanotecnología Órgano responsable: Dpto. de Física (UMU) Nombre Asignatura: Introducción a la Programación Paralela Tipo: Optativa Curso Créditos ECTS: 4 Semestre 2 Horas totales estimadas de trabajo del estudiante: 110 Horas de docencia teórica: 20 Horas de prácticas: 30 Horas de trabajo personal y otras actividades: 60 Nombre del profesor/es que imparte/n la asignatura: (si hay un coordinador, indicar su nombre) Andrés M. Somoza Objetivos, destrezas y competencias que se van a adquirir: Adquirir un conocimiento de básico de la utilidad, ventajas e inconvenientes de la programación en paralelo. Aprender algunos algoritmos de programación en paralelo y adquirir los conocimientos del protocolo MPI para programar y ejecutar dichos algoritmos. Prerrequisitos para cursar la asignatura: Los correspondientes a la inscripción en el máster, así como conocimientos de Fortran. Contenido (breve descripción de la asignatura): Se hará introducción a la arquitectura de ordenadores para calculo en paralelo. Se describirá el protocolo de pase de mensajes MPI y introducirán las rutinas básicas de comunicación, herramienta que deberán usar los alumnos para desarrollar su propia programación en paralelo. Se verán algunos ejemplos de algoritmos paralelos. Metodología docente: docencia teórica en aula; trabajo práctico con ordenador en microaula; hojas de problemas para los alumnos. Tipo de evaluación: (exámenes/ trabajos/ evaluación continua) Evaluación continua, incluyendo hojas de problemas y presentación de un trabajo práctico de desarrollo de un algoritmo de programación en paralelo. Idioma en que se imparte: castellano/inglés Observaciones: PROGRAMA DETALLADO DE LA ASIGNATURA Tema 1: Introduccion. Modelos de ordenadores. Introducción a la shell de Unix y a clusters BeoWulf. Tema 2: Lenguajes y modelos de programación paralela: Threads, MPI, OpenMP. Tema 3: Rutinas básicas de comunicación. Tema 4: Desarrollo metódico de programas paralelos: Particionado, Comunicación, Aglomeración y Mapeo. Maestro/Esclavo. Single Program Multiple Data. Pipeline. Divide y Vencerás. Tema 5: Algoritmos paralelos: Algoritmos matriciales. Ordenación. Algoritmos sobre grafos. Algoritmos de búsqueda. Estudio de escalabilidad, eficiencia.
Related documents