El curso se dirige, profesionales e investigadores interesados en explotar los recursos que nos ofrecen los ordenadores actuales para mejorar el rendimiento de sus aplicaciones. El curso busca dar una primera introducción a la programación paralela y al paralelismo en general, pero no es un curso de ningún paradigma ni lenguaje en particular.
Título del curso: Introducción al Paralelismo
Fecha: 24-28 de noviembre de 2025
Horario: de 10:00h a 14:00h
Modalidad: PRESENCIAL en las instalaciones del CESGA. Avenida de Vigo s/n, 15705 Santiago de Compostela
Metodología
Impartición de la actividad formativa en modalidad presencial con personal cualificado y especializado en la materia, con impartición de conocimientos teóricos y ejecución prácticas para el desarrollo de los conocimientos.
El curso incluye además la realización de ejercicios prácticos a realizar por el alumno que serán comentados y corregidos en clase.
Perfil del docente
José Carlos Mouriño Gallego
Ingeniero en Informática y Doctor en Arquitectura de computadores por la Universidad de A Coruña. Trabaja en el CESGA como técnico superior de aplicaciones desde 2005. Acumula más de 25 años de experiencia en la compilación, optimización y paralelización de aplicaciones. También tiene varias publicaciones científicas en la materia y premios y distinciones fruto de sus paralelizaciones.
¿Qué vas a aprender?
• Introducción a la arquitectura de computadores.
Es indispensable conocer la arquitectura de los ordenadores actuales para obtener buen rendimiento en la ejecución de aplicaciones
• Optimización de código.
Antes de paralelizar es necesario optimizar el código en su versión secuencial
• Introducción al paralelismo, conceptos básicos.
Conceptos básicos de paralelismo y particularidades de la arquitectura
• Vectorización.
Como explotar la unidad vectorial de los procesadores actuales
• Memoria compartida vs. memoria distribuida.
Comparación entre los 2 modelos de memoria principales y sus particularidades a la hora de paralelizar
• Entornos de programación paralela
-
- OpenMP
- MPI
Sintaxis de los dos entornos de programación paralela más utilizados
• Programación paralela híbrida.
Combinar ambos paradigmas en una misma aplicación para explotar varios niveles de paralelismo
• Python y paralelismo.
Conceptos básicos y opciones de paralelización en Python
Prerrequisitos
Tener unos mínimos conocimientos de programación para el adecuado aprovechamiento del curso, pero no es necesaria ninguna experiencia previa de programación paralela.
Las pruebas y ejercicios se realizarán en el Supercomputador Finisterrae III, para lo cual se puedo proporcionar una cuenta a los alumnos que no dispongan de ella.
REGISTRO
