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