P4091103 - Programación Paralela (Módulo Obrigatorio) - Curso 2013/2014
Información
- Créditos ECTS
- Créditos ECTS: 6.00
- Total: 6.0
- Horas ECTS
- Clase Expositiva: 18.00
- Clase Interactiva Laboratorio: 24.00
- Horas de Titorías: 6.00
- Total: 48.0
Outros Datos
- Tipo: Materia Ordinaria Máster RD 1393/2007
- Departamentos: Electrónica e Computación, Departamento Externo
- Áreas: Arquitectura e Tecnoloxía de Computadores, Área Externa para o postgrao oficial
- Centro: Escola Técnica Superior de Enxeñaría
- Convocatoria: 1º Semestre de Titulacións de Grao/Máster
- Docencia e Matrícula: Primeiro Curso (1º 1ª vez)
Profesores
Horarios
Programa
Existen programas da materia para os seguintes idiomas:
CastelánGalegoObxectivos da materiaEsta materia está estreitamente relacionada coa materia Arquitecturas Multiprocesador. Os obxectivos globais desta materia son: formar ao alumno nos diversos paradigmas de programación de computadores paralelos, incidir en técnicas software para o deseño e implementación de algoritmos e aplicacións paralelas eficientes, e aplicar estas técnicas de forma práctica para a programación de computadores paralelos con diferentes arquitecturas, utilizando recursos de supercomputación dispoñibles na Comunidade Autónoma de Galicia.
Unha vez finalizada a materia, o alumno disporá dos coñecementos teóricos e prácticos necesarios para abordar con rigor o deseño de algoritmos paralelos sobre arquitecturas multiprocesador.
ContidosTema 1. Paradigmas de programación paralela
-Paradigma de memoria distribuída
-Paradigma de memoria compartida
-Paradigma data-parallel
-Paradigma PGAS
-Novas linguaxes de programación paralela (X10, chapel, Fortress)
Tema 2. Programación mediante directivas de memoria compartida: OpenMP
-Introdución á programación con OpenMP
-Directivas para a construción de paralelismo
-Directivas de sincronización
-Biblioteca de rutinas OpenMP
-Variables de contorna
Tema 3. Programación mediante a paradigma de paso de mensaxes: MPI
-Características xerais de MPI
-Comunicacións punto a punto
-Comunicacións colectivas
-Tipos de datos derivados
-Topoloxías virtuais e comunicadores
-Novas funcionalidades de MPI-2
-Programación híbrida: MPI + OpenMP
Bibliografía básica e complementariaAs transparencias utilizadas na clase están dispoñibles no Campus Virtual da USC.
-P. Pacheco. An Introduction to Parallel Programming, Morgan Kaufmann, 2011.
-F. Almeida, D. Giménez, J.M. Manta, A.M. Vidal, Introducción a la programación paralela, Paraninfo, 2008
-P.S. Pacheco, Parallel Programming with MPI, Morgan Kaufmann Publishers , 1997
-R. Chandra, L. Dagum, D. Kohr, Parallel Programming in OpenMP, Morgan Kaufmann Publishers , 2001
-W.P. Petersen, P. Arbenz, Introduction to Parallel Computing, Oxford University Press, 2004
-W. Gropp, E. Lusk and R. Thakur, Using MPI-2. The MIT Press, 1999
-Barbara Chapman, Gabriele Jost and Ruud Van der Pas. Using OpenMP. The MIT Press, 2008
CompetenciasContribúese a acadar as competencias recollidas na memoria do título de Máster en Computación de Altas Prestacións A1, A2, A5, A6, A12 e A13 específicas; B1, B4, B6, B9, B10, B11 e B12 transversais; C1, C2, C3, C6, C7 e C8 nucleares.
Máis concretamente, as principais competencias que adquirirá o alumno unha vez finalizada a materia son as seguintes:
- Habilidade para a procura, selección e manexo de recursos (bibliografía, software, etc.) sobre o campo da computación paralela, competencias B4, B6, B9, B10, C3, C6 e C7..
- Capacidade para seleccionar a arquitectura e o paradigma de programación paralela máis adecuado en función das características do problema computacional, competencias específicas A2, A5, A6 e A12.
- Capacidade para a análise, deseño e implementación de algoritmos e aplicacións paralelas eficientes sobre arquitecturas multiprocesador, competencias específicas A1 e A6.
- Capacidade para integrarse na operativa diaria dun Departamento de Aplicacións no marco dun Centro de Supercomputación, competencias A13, B1, B11, B12, C1, C2, C7 e C8.
Metodoloxía da ensinanza Sesión maxistral
Exposición oral complementada co uso de medios audiovisuais e a introdución de fases de debate cos estudantes. Todo iso coa finalidade de transmitir coñecementos e facilitar a aprendizaxe. Realizaranse sesións maxistrais sobre gran parte dos contidos do temario, normalmente como punto de partida para o resto de actividades previstas para cada punto.
Prácticas de laboratorio
Actividade que permite aos estudantes aprender e afianzar os coñecementos xa adquiridos mediante a realización de sesións prácticas en supercomputadores.
Sistema de evaluaciónEsta materia avaliarase na primeira oportunidade a través da realización de prácticas de laboratorio e traballos dirixidos utilizando as linguaxes de programación paralelos visto en teoría e sobre sistemas de supercomputación do Centro de Supercomputación de Galicia. Na segunda oportunidade a avaliación consistirá dunha proba escrita sobre os contenidos teóricos e prácticos tratados durante o curso.
Tempo de estudo e traballo persoalHoras presenciais: 24 horas expositivas, 20 interactivas e 4 de atención personalizada. Total 48.
Traballo autónomo (estudo e profundización dos contidos da materia, realización de traballos propostos polo profesor, etc.): 60 correspondentes ás expositivas e 42 ás interactivas. Total 102.
Horas totais: 150