O curso se diríxese, a profesionais e investigadores interesados en explotar os recursos que nos ofrecen os computadores actuais para mellorar o rendemento das súas aplicacións. O curso busca dar unha primeira introdución á programación paralela e ao paralelismo en xeral, pero non é un curso de ningún paradigma nin linguaxe en particular.
Título do curso: Introdución ao Paralelismo
Data: 24-28 de novembro de 2025
Horario: de 10:00h a 14:00h
Modalidade: PRESENCIAL nas instalacións do CESGA, Avenida de Vigo s/n, 15705 Santiago de Compostela.
Metodoloxía
Impartición da actividade formativa en modalidade presencial con persoal cualificado e especializado na materia, con impartición de coñecementos teóricos e execución prácticas para o desenvolvemento dos coñecementos.
O curso inclúe ademais a realización de exercicios prácticos a realizar polo alumno que serán comentados e corrixidos en clase.
Perfil do docente
José Carlos Mouriño Gallego
Enxeñeiro en Informática e Doutor en Arquitectura de computadores pola Universidade da Coruña. Traballa no CESGA como técnico superior de aplicacións desde 2005. Acumula máis de 25 anos de experiencia na compilación, optimización e paralelización de aplicacións. Tamén ten varias publicacións científicas na materia e premios e distincións froito dos seus paralelizaciones.
Que vas aprender?
• Introdución á arquitectura de computadores.
É indispensable coñecer a arquitectura dos computadores actuais para obter bo rendemento na execución de aplicacións
• Optimización de código.
Antes de paralelizar é necesario optimizar o código na súa versión secuencial
• Introdución ao paralelismo, conceptos básicos.
Conceptos básicos de paralelismo e particularidades da arquitectur
• Vectorización.
Como explotar a unidade vectorial dos procesadores actuais
• Memoria compartida vs. memoria distribuída.
Comparación entre os 2 modelos de memoria principais e as súas particularidades á hora de paralelizar
• Contornas de programación paralela
-
- OpenMP
- MPI
Sintaxe das dúas contornas de programación paralela máis utilizados
• Programación paralela híbrida.
Combinar ambos os paradigmas nunha mesma aplicación para explotar varios niveis de paralelismo
• Python e paralelismo.
Conceptos básicos e opcións de paralelización en Python
Prerrequisitos
Ter uns mínimos coñecementos de programación para o adecuado aproveitamento do curso, pero non é necesaria ningunha experiencia previa de programación paralela.
As probas e exercicios realizaranse no Supercomputador Finisterrae III, para o que se podo proporcionar unha conta aos alumnos que non dispoñan dela.
REXISTRO
